mirror of
https://github.com/OpenBB-finance/OpenBB.git
synced 2026-10-29 13:32:08 +00:00
fix ticker info keys
This commit is contained in:
@@ -289,6 +289,7 @@ def get_property_weights(
|
||||
value = get_kwarg("value", kwargs)
|
||||
|
||||
s_property = get_kwarg("s_property", kwargs, default="marketCap")
|
||||
s_property = yahoo_finance_model.fast_info_map.get(s_property, s_property)
|
||||
|
||||
stock_prices = yahoo_finance_model.process_stocks(
|
||||
symbols, interval, start_date, end_date
|
||||
@@ -305,14 +306,22 @@ def get_property_weights(
|
||||
prop = {}
|
||||
prop_sum = 0
|
||||
for stock in symbols:
|
||||
stock_prop = yf.Ticker(stock).info[s_property]
|
||||
info = yf.Ticker(stock).info
|
||||
fast_info = yf.Ticker(stock).fast_info
|
||||
info_dict = {}
|
||||
if info:
|
||||
info_dict.update(dict(info))
|
||||
if fast_info:
|
||||
info_dict.update(dict(fast_info))
|
||||
|
||||
stock_prop = info_dict.get(s_property, None)
|
||||
if stock_prop is None:
|
||||
stock_prop = 0
|
||||
prop[stock] = stock_prop
|
||||
prop_sum += stock_prop
|
||||
|
||||
if prop_sum == 0:
|
||||
console.print(f"No {s_property} was found on list of tickers provided", "\n")
|
||||
console.print(f"No '{s_property}' was found on list of tickers provided", "\n")
|
||||
return None, None
|
||||
|
||||
weights = {k: value * v / prop_sum for k, v in prop.items()}
|
||||
@@ -1368,6 +1377,9 @@ def get_black_litterman_portfolio(
|
||||
value=value,
|
||||
)
|
||||
|
||||
if benchmark is None:
|
||||
return None, stock_returns
|
||||
|
||||
factor = time_factor[freq.upper()]
|
||||
risk_free_rate = risk_free_rate / factor
|
||||
|
||||
|
||||
@@ -19,6 +19,27 @@ logger = logging.getLogger(__name__)
|
||||
|
||||
# pylint: disable=R0912, E1101
|
||||
|
||||
fast_info_map = {
|
||||
"previousClose": "previous_close",
|
||||
"twoHundredDayAverage": "two_hundred_day_average",
|
||||
"regularMarketDayHigh": "day_high",
|
||||
"averageDailyVolume10Day": "ten_day_average_volume",
|
||||
"regularMarketPreviousClose": "regular_market_previous_close",
|
||||
"fiftyDayAverage": "fifty_day_average",
|
||||
"open": "open",
|
||||
"averageVolume10days": "ten_day_average_volume",
|
||||
"regularMarketDayLow": "day_low",
|
||||
"currency": "currency",
|
||||
"marketCap": "market_cap",
|
||||
"averageVolume": "three_month_average_volume",
|
||||
"dayLow": "day_low",
|
||||
"volume": "last_volume",
|
||||
"fiftyTwoWeekHigh": "year_high",
|
||||
"fiftyTwoWeekLow": "year_low",
|
||||
"dayHigh": "day_high",
|
||||
"regularMarketPrice": "last_price",
|
||||
}
|
||||
|
||||
yf_info_choices = [
|
||||
"previousClose",
|
||||
"regularMarketOpen",
|
||||
@@ -30,7 +51,7 @@ yf_info_choices = [
|
||||
"navPrice",
|
||||
"averageDailyVolume10Day",
|
||||
"totalAssets",
|
||||
"regularMarketPreviousClose",
|
||||
"regular_market_previous_close",
|
||||
"fiftyDayAverage",
|
||||
"trailingAnnualDividendRate",
|
||||
"open",
|
||||
@@ -51,7 +72,7 @@ yf_info_choices = [
|
||||
"lastMarket",
|
||||
"maxSupply",
|
||||
"openInterest",
|
||||
"marketCap",
|
||||
"market_cap",
|
||||
"volumeAllCurrencies",
|
||||
"strikePrice",
|
||||
"averageVolume",
|
||||
|
||||
Reference in New Issue
Block a user