You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
How to add expense ratio to the list of fields we can source from yahoo #335
For a fund or ETF, SPY for example:
I would like to add the Expense Ratio (net) (under Summary) or Annual Report Expense Ratio (net) (under profile) to the list of fields that can be scraped. Using my best guess and looking at the html, I added
"Expense Ratio (net)", "Expense Ratio (net)", "annualReportExpenseRatio"
to the end of the variable .yahooQuoteFields in the file getQuote.R. After building the package and try it out, unfortunately I get the following error:
Error in `[.data.frame`(sq, , "regularMarketTime") :
undefined columns selected
Called from: `[.data.frame`(sq, , "regularMarketTime"
Is it possible to get some help on rules for .yahooQuoteFields and is it possible to add new fields to extract new info?
Expected behavior
I expect to get the expense ratio for a fund, SPY for example.
Minimal, reproducible example
syms<-"SPY"what_metrics<- yahooQF(c("Name", "Expense Ratio (net)"))
getQuote(syms, what=what_metrics)
Ah I see. Where can I see the endpoints of this API? I went on Rapid API and found that it is on get-profile endpoint. But that is a different API to the one you use.
Activity
joshuaulrich commentedon Jun 12, 2021
I don't know how to do this. It doesn't look like it's returned by the quote API. You can hit the API in your browser: https://query1.finance.yahoo.com/v7/finance/quote?symbols=SPY&fields=annualReportExpenseRatio
Here's the result:
{ "quoteResponse": { "error": null, "result": [ { "esgPopulated": false, "exchange": "PCX", "exchangeDataDelayedBy": 0, "exchangeTimezoneName": "America/New_York", "exchangeTimezoneShortName": "EDT", "firstTradeDateMilliseconds": 728317800000, "fullExchangeName": "NYSEArca", "gmtOffSetMilliseconds": -14400000, "language": "en-US", "market": "us_market", "marketState": "CLOSED", "priceHint": 2, "quoteSourceName": "Delayed Quote", "quoteType": "ETF", "region": "US", "sourceInterval": 15, "symbol": "SPY", "tradeable": false, "triggerable": true } ] } }Courvoisier13 commentedon Jun 12, 2021
Ah I see. Where can I see the endpoints of this API? I went on Rapid API and found that it is on
get-profileendpoint. But that is a different API to the one you use.(finance/R-quantmod) Updated 0.4.22 to 0.4.26, NEWS.md not recent
Add missing quote fields
(finance/R-quantmod) Updated 0.4.22 to 0.4.26, NEWS.md not recent
(finance/R-quantmod) Updated 0.4.22 to 0.4.26, NEWS.md not recent