yf.Tickers from yfinance to download information for multiple tickers and dynamically access each of them
Question:
My question is how to dynamically access each ticker when using yf.Tickers from yfinance in Python?
For example, I have a list of tickers: [‘AAPL’, ‘MSFT’, ‘AMD’] and use the following code to download thru yfinance:
import yfinance as yf
tickers = yf.Tickers('AAPL MSFT AMD')
tickers.AAPL.info
div = tickers.AAPL.info['trailingAnnualDividendYield']
Now I have to type in each ticker like this: tickers.AAPL.info
. Does anyone know how I can access each ticker dynamically?
Answers:
You could try the following:
import yfinance as yf
stocks = ['AAPL', 'MSFT', 'AMD']
for stock in stocks:
info = yf.Ticker(stock).info
div = info.get('trailingAnnualDividendYield')
print(stock, div)
The output is:
AAPL 0.013894105
MSFT 0.013502605
AMD None
According to yfinance docs:
Fetching data for multiple tickers:
import yfinance as yf
data = yf.download("SPY AAPL", start="2017-01-01", end="2017-04-30")
import yfinance as yf
tickers = yf.Tickers('AAPL,MSFT,AMD')
for tick in tickers.tickers:
if tick.info['symbol'] == 'AAPL':
print(tick.info)
My question is how to dynamically access each ticker when using yf.Tickers from yfinance in Python?
For example, I have a list of tickers: [‘AAPL’, ‘MSFT’, ‘AMD’] and use the following code to download thru yfinance:
import yfinance as yf
tickers = yf.Tickers('AAPL MSFT AMD')
tickers.AAPL.info
div = tickers.AAPL.info['trailingAnnualDividendYield']
Now I have to type in each ticker like this: tickers.AAPL.info
. Does anyone know how I can access each ticker dynamically?
You could try the following:
import yfinance as yf
stocks = ['AAPL', 'MSFT', 'AMD']
for stock in stocks:
info = yf.Ticker(stock).info
div = info.get('trailingAnnualDividendYield')
print(stock, div)
The output is:
AAPL 0.013894105
MSFT 0.013502605
AMD None
According to yfinance docs:
Fetching data for multiple tickers:
import yfinance as yf
data = yf.download("SPY AAPL", start="2017-01-01", end="2017-04-30")
import yfinance as yf
tickers = yf.Tickers('AAPL,MSFT,AMD')
for tick in tickers.tickers:
if tick.info['symbol'] == 'AAPL':
print(tick.info)