随着科技发展,Python的可用性越来越高,可应用在多种行业上,甚至很多工程师采用Python来提高工作效率。今天我们将分享如何通过Python来快速获取股票数据。
若是想快速获取下载美股数据,需要用上yfinance模块,而yfinance是一个使用 Yahoo!获取数据的Python第三方模块。它支持获取最细到1分钟级的历史数据及股票基本面数据,是免费获得美股分钟级及以上粒度数据的不二之选。
1、提前准备
打开电脑的终端,输入以下命令:
pip install yfinance
2、使用yfinance
通过yfinance命令可下载任意股票数据,示例如下:
import yfinance as yf
# 单股
data = yf.download("AAPL", start="2022-01-01", end="2022-04-30")
# 多股
data = yf.download("SPY AAPL", start="2022-01-01", end="2022-04-30",
group_by="ticker")
一般情况下,yfinance命令默认是获取天数级别的数据,若是需要分钟单位的数据,可添加interval参数:
import yfinance as yf
# 单股
data = yf.download("AAPL", start="2022-05-18", end="2022-05-23", interval="1m")
print(data)
除此之外还有分钟级参数(2m,5m,15m,30m,60m,90m等)、小时级(1h)和天线(1d)、周线(1wk)、月线级别(1mo)等。
保存文件:
import yfinance as yf
data = yf.download("AAPL", start="2022-05-18", end="2022-05-23", interval="1m")
data.to_csv("aapl_20220518_20220523.csv")
# 保存到本地,命名为 aapl_20220518_20220523.csv
3、通过yfinance获取股票基本数据
若是想获取单只股票的基本数据,如市值、市盈率等,具体如下:
import yfinance as yf
aapl = yf.Ticker("aapl")
aapl.info['forwardPE']
# 20.974085
获取每次派息数据:
import yfinance as yf
aapl = yf.Ticker("aapl")
print(aapl.dividends)
获取资产负债表
import yfinance as yf
aapl = yf.Ticker("aapl")
print(aapl.balancesheet)
获取新闻数据:
import yfinance as yf
aapl = yf.Ticker("aapl")
print(aapl.news)
欲了解更多好玩的Python玩法,来《弟子计划:Python》。