Releases: joshuaulrich/quantmod
CRAN release 0.4.28
-
Fix FRED URL. Thanks to Nicole Mirea (@nimirea) for the report! #439
-
Thanks to Michael Chirico for a couple PRs to handle some minor edge cases. #436, #437
-
Replace "YHOO" with "AAPL" where it is used in documentation, especially in examples. Thanks to @dougedmunds for the report! #435
-
Update
getSymbols.csv()documentation to note that you have to set theformatargument if the date in the CSV is not in a standard format. Thanks to @reddogg24 for the report that led to this change. #428
CRAN release 0.4.27
-
Reduce
getQuote()batch size from 199 to 99. Yahoo started to throw an error for requests of 100 or more symbols at a time. Thanks to @zlfang00 for the report and Ethan B. Smith for the patch! #432, #433 -
Follow best practices by removing the encosing '{}' in
setGeneric("fittedModel<-", ...). Thanks to Michael Chirico for the PR! #431 -
Improve detection of ambiguous 'OHLCVA' colnames in all extractor functions (e.g.
Cl(),OHLC()). This is especially important forLo()becausequantmod::getSymbols("LOW")returns an object where every column name contains the pattern "LOW.". Another example isTTR::stoch(), which returns a column named "slowD". Thanks to Ethan B. Smith for the patch! #24, #305, #306, #426 -
Continue steps to remove
quantmod:::as.zoo.data.frame()by throwing a warning every timequantmod::as.zoo.data.frame()is called. Previously a message was printed the first time the function was called. #414 -
Add
ClOp()function to calculate the return between Close[t-1] and Open[t]. Thanks to Gabriel Kaiser (@GabrielKaiserQFin) for the contribution! #412
CRAN release 0.4.26
CRAN release 0.4.25
-
Fix
getQuote.yahoo()for API changes. Thanks to Ethan B. Smith for the report and patch! Also add error message for users in GDPR countries, since we cannot automatically consent to GDPR and the request fails without consent. #392 #393 #395 -
Fix
getQuote.yahoo()when the user only requested metrics that do not have have a value for 'regularMarketTime'. Set the value to NA in these cases so the output remains the same regardless of whether the endpoint returns a 'regularMarketTime' or not. Thanks to @mehdiMBH for the report! #255 -
Add fields to
getQuote.yahoo()that are returned when no fields are explicitly requested. Thanks to @Courvoisier13 for the report! #335 -
Add intraday endpoint to
getSymbols.yahoo(). Thanks to @kapsner for the report and patch! Also allow suppressing the warning if more than 7 days of data are requested (@eddelbuettel). #351 #381 #399 -
Add warning if
getSymbols()is called with tickers that are reserved words because accessing them requires back-quotes (e.g.NA). #401 -
Fix
allReturns()when 'subset' is specified. Thanks to @Panagis1980 for the report! #402
CRAN release 0.4.24
CRAN release 0.4.23
CRAN release 0.4.22
- Move jsonlite from Suggests to Imports so it doesn't cause a problem
when a package that doesn't also Suggest jsonlite uses getSymbols().
Thanks to Kurt Hornik for the report and fix!
#380
CRAN release 0.4.21
-
Fix S3 method issues. R-devel (83995-ish) added a check for possible S3
method issues. Register methods it found that were not registered:
str.replot(),seriesHi.timeSeries(), andseriesLo.timeSeries().It was also confused by
range.bars()andunique.formula.names(). Remove
unique.formula.names()because it wasn't exported or used internally.
Renamerange.bars()torangeBars(), which isn't exported.Thanks to Kurt Hornik for the report! #375
-
Remove "^" prefix from
getSymbols()return value. When the 'Symbols'
argument has a "^" prefix andauto.assign = TRUE:
*getSymbols()removes the "^" from the object it creates, but
* returns the 'Symbols' argument unchanged, and
* removes the "^" from the column names of the object it creates.The example below will create an object named
IXICbut the value of
symwill be "^IXIC".sym <- getSymbols("^IXIC")That means
x <- get(sym)will not work because an object named^IXIC
doesn't exist. #371 -
Add 'from' and 'to' arguments to
getSymbols.FRED(). Users expect to be
able to set the 'from' and 'to' arguments for FRED data like they can for
Yahoo data. Those values were ignored and the entire series was always
returned. #368 -
Change interval to 1d for
getDividends()andgetSplits(). The "3mo"
setting caused some dividends to be missing for companies that issued monthly
dividends. Note that the response to this request also includes all the OHLCV
data. But it's small (less than 1MB for 60+ years of daily data). #372 -
Handle errors in
getSplits()andgetDividends().getDividends()didn't
handle cases where the download failed, or when dividends needed to be
split-adjusted but there were no splits. It also tried to set colnames
on the empty xts object that's returned when there are no dividends.
getSplits()had the same colnames issue. Check for no splits by testing
forNULLbecause that's more explicit. Thanks to Chris Cheung for the
report! #366 -
Export
HL(),is.HL(), andhas.HL()functions and add documentation.
These were added in 0.4.18 but not exported or included in the documentation. -
Use Yahoo Finance v8 JSON endpoint and remove the v7 CSV endpoint. There
seems to be a rate limit for the number of tickers you can request via the CSV
endpoint. The yfinance python library uses the JSON endpoint and doesn't seem
to have rate limit issues. #360, #362, #364
CRAN release 0.4.20
-
Remove check for Yahoo Finance cookies because the site no longer responds with a cookie, and that caused the connection attempt to fail. This affected
getSymbols(),getDividends(), andgetSplits(). Thanks to several users for reporting, and especially to @pverspeelt and @alihru for investigating potential fixes! #358 -
Update
getSymbols.yahooj()for changes to the web page. #312 -
Add
HL()and supporting functions. These are analogues toHLC(),OHLC(), etc.Thanks for Karl Gauvin for the nudge to implement them. -
Add adjusted close to
getSymbols.tiingo()output. Thanks to Ethan Smith for the suggestion and patch! #289, #345 -
Use a Date index for
getSymbols.tiingo()daily data. Thanks to Ethan Smith for the report! #350 -
Remove unneeded arguments to the
getSymbols.tiingo()implementation. Thanks to Ethan Smith for the suggestion and patch! #343, #343 -
Load dividends and splits data into the correct environment when the user provides a value for the
envargument. The previous behavior always loaded the data into the environment the function was called from. Thanks to Stewart Wright for the report and patch! #33 -
Make
getOptionChain()return all the fields that Yahoo Finance provides. Thanks to Adam Childers (@rhizomatican) for the patch! #318, #336 -
Add orats as a source for
getOptionChain(). Thanks to Steve Bronder (@SteveBronder) for the suggestion and implementation! #325 -
Improve the error message when
getSymbols()cannot import data for a symbol because the symbol is not valid or does not have historical data. Thanks to Peter Carl for the report. #333 -
Fix the
getMetals()example in the documentation. The example section previously had an example ofgetFX(). Thanks to Gerhard Nachtmann (@nachti) for the report and patch! #330 -
Fix
getQuote()so it returns data when the ticker symbol contains an "&". Thanks to @pankaj3009 for the report! #324 -
Fix
addMACD()whencolis specified. Thanks to @nvalueanalytics for the report! #321
CRAN release 0.4.18
-
Fix issues handling https:// in
getSymbols.yahooj(). Thanks to @Lobo1981 and @tchevri for the reports and @ethanbsmith for the suggestion to move from XML to xml2. #310 #312 -
Fix
getSymbols.yahoo(),getDividends(), andgetSplits()so they all handle download errors and retry again. Thanks for @helgasoft for the report ongetSymbols.yahoo()and @msfsalla for the report ongetDividends()andgetSplits(). #307 #314 -
Add implied volatility and last trade date to
getOptionChain()output. Thanks to @hd2581 and @romanlelek for the reports. And thanks to @rjvelasquezm for noticing the error whenlastTradeDateisNULL. #224 #304 -
Fix
getOptionChain()to throw a warning and returnNULLfor every expiry that doesn't have data. #299 -
Add "Defaults" handling to
getQuote()andgetQuote.yahoo(). Thanks to @ethanbsmith for the report. #291 -
Add Bid and Ask fields to the output from
getQuote(). Thanks to @jrburl for the report and PR. #302 -
Fix "Defaults" to handle unexported function (e.g.
getQuote.av(). Thanks to @helgasoft for the report. #316 -
importDefaults()doesn't callget()on vector with length > 1. Thanks to Kurt Hornik for the report. #319