yfinance

yfinance aimes to solve this problem by offering a reliable, threaded, and Pythonic way to download historical market data from Yahoo! finance.

   1 import yfinance
   2 from pandas._libs.tslibs.timestamps import Timestamp
   3 data = yfinance.download("AMZN",start="2019-01-01",end="2020-02-12")
   4 d = data.to_dict()
   5 d['Close'].key
   6 # for k in d['Close'].iterkeys(): print (k)
   7 d['Close'][Timestamp('2019-11-22 00:00:00')]
   8 d['Close'][Timestamp('2020-02-10 00:00:00')]

MSFT example

"""#!highlight python
cd ~/Documents/
mkdir yfinance-test
cd yfinance-test/
sudo apt install python3-venv
python3 -m venv testVenv
source testVenv/bin/activate
pip install yfinance
"""
import yfinance as yf
msft = yf.Ticker("MSFT")

historyDataFrame = msft.history(period="5d")
print("Available columns")
for colname in historyDataFrame:
    print("  "+colname)

print("Available indexes")
for idx in historyDataFrame.index:
    print("  "+str(idx))

columnClose = historyDataFrame['Close']
rowidx = 0
print("Symbol:"+msft.info['symbol'])
for closeValue in columnClose.values:
    print(historyDataFrame.index[rowidx],  closeValue)
    rowidx += 1

Python/yfinance (last edited 2022-10-27 22:09:28 by localhost)