免费数据源全景
运行方式:激活 quant 环境后 python 02_免费数据源全景.py
依赖安装:pip install baostock yfinance pandas-datareader
A股 / 美股 / 宏观 三段可独立运行;akshare、tushare 见文末注释(可按需启用)
① A股 · baostock 全免费 · 免注册 · 入门首选
股票代码:sh.600000 浦发银行
前复权 adjustflag=2
import baostock as bs
import pandas as pd
bs.login()
rs = bs.query_history_k_data_plus(
"sh.600000",
"date,open,high,low,close,volume",
start_date='2026-08-01',
end_date='2026-08-07',
frequency="d",
adjustflag="2")
rows = []
while (rs.error_code == '0') & rs.next():
rows.append(rs.get_row_data())
df = pd.DataFrame(rows, columns=rs.fields)
print(df.head())
bs.logout()
支持日线/周线/分钟线,前复权通过 adjustflag="2" 设置。
② 美股 · yfinance 免费 · 免key · 雅虎数据
标的:AAPL 苹果 · 可换 MSFT / TSLA
import yfinance as yf
df_us = yf.download('AAPL', start='2026-01-01', end='2026-08-07')
print(df_us.head())
无需注册,直接调用,全球指数、个股、外汇均可获取。
③ 宏观 · FRED 美联储官方 · 需免费注册key
API Key: 83650e2c4f4bcaca3cc015e48cf26d8d
免费注册
FRED_KEY = '83650e2c4f4bcaca3cc015e48cf26d8d'
import pandas_datareader.data as web
df_macro = web.DataReader('GDP', 'fred', start='2020-01-01', api_key=FRED_KEY)
print(df_macro.head())
常用指标:GDP、UNRATE(失业率)、CPIAUCSL(CPI)。
④ A股进阶 · akshare 接口超全 · 免费免注册
安装:pip install akshare
包大 · 接口偶尔变动
import akshare as ak
df = ak.stock_zh_a_hist(symbol="000001", period="daily",
start_date="20240101", end_date="20241231", adjust="qfq")
⑤ A股专业向 · tushare 接口最全最专业 · 需注册+积分
安装:pip install tushare
需token
import tushare as ts
pro = ts.pro_api('你的token')
df = pro.daily(ts_code='000001.SZ', start_date='20240101', end_date='20241231')
数据源速览
baostock · A股免费免注册
yfinance · 美股免费免key
FRED · 宏观需免费key
akshare · A股接口超全
tushare · 专业向积分制
所有数据源均有免费方案