Read URL:
# Scape short sales data from the ASIC website
url <- "http://asic.gov.au/regulatory-resources/markets/short-selling/short-position-reports-table/"
links <- getHTMLLinks(url)
head(links)
## [1] "/"
## [2] "/for-business/"
## [3] "/for-business/"
## [4] "/for-business/your-business/"
## [5] "/for-business/your-business/your-business-structure/"
## [6] "/for-business/your-business/protecting-yourself/"
# extract only links containing csv files
links_csv <- links[str_detect(links, ".csv")]
head(links_csv)
## [1] "/Reports/YTD/2018/RR20180220-001-SSDailyYTD.csv"
## [2] "/Reports/Daily/2018/02/RR20180220-001-SSDailyAggShortPos.csv"
## [3] "/Reports/Daily/2010/06/RR20100616-001-SSDailyAggShortPos.csv"
## [4] "/Reports/Daily/2010/06/RR20100617-001-SSDailyAggShortPos.csv"
## [5] "/Reports/Daily/2010/06/RR20100618-001-SSDailyAggShortPos.csv"
## [6] "/Reports/Daily/2010/06/RR20100621-001-SSDailyAggShortPos.csv"
Get the latest csv file:
latest <- links_csv[[2]] # latest daily report is 2nd row.
# Concatenate url
url_begin <- "http://asic.gov.au"
latest_csv <- paste0(url_begin, latest, sep = "")
# Read csv
shortsales_latest <- read.csv(latest_csv,
header = TRUE,
sep = '\t',
fileEncoding = "utf-16")
head(shortsales_latest)
Rename columns:
colnames(shortsales_latest) <- c("company",
"ticker",
"short_positions",
"shares_on_issue",
"short_ratio")
head(shortsales_latest)