第二章:数据获取准备——Python环境搭建与数据源选择
做量化投资,说白了就是跟数据打交道。没有数据,再牛的策略也是空中楼阁。
这一章,咱们先把地基打牢。我会带你一步步搭好Python环境,装上两个最常用的金融数据库——akshare和tushare。最后聊聊数据源怎么选,这里头有不少坑,我当年都踩过。
2.1 Python环境搭建——别小看这一步
我个人习惯用Anaconda来管理Python环境。为什么?因为它自带了一堆科学计算库,省得你一个个装。
你想想看,要是装个pandas都得折腾半天,那还怎么搞量化?
推荐版本:Python 3.8 或 3.9。别追新,稳定第一。
安装步骤其实很简单:
- 去Anaconda官网下载对应系统的安装包
- 一路默认安装,记得勾选「Add Anaconda to my PATH environment variable」
- 打开终端或Anaconda Prompt,输入
python --version确认安装成功
嗯,这里要注意:如果你用的是Mac或Linux,建议用 conda create -n quant python=3.9 创建一个独立的量化环境。我在项目中遇到过好几次,因为库版本冲突导致整个环境崩掉,那叫一个头疼。
2.2 akshare库——免费且强大的数据利器
akshare这个库,我真是越用越喜欢。它把国内主流金融数据源都整合到了一起,而且完全免费。
安装命令:
pip install akshare --upgrade
为什么要加 --upgrade?因为akshare更新特别频繁,有时候接口会变。我曾经因为没升级,跑了一晚上的策略,结果发现数据全是错的……从那以后,我每次用之前都会先升级一下。
来看看怎么用:
import akshare as ak
# 获取北向资金流向数据
north_flow = ak.stock_hsgt_north_net_flow_in_em(symbol="北上")
print(north_flow.head())
# 获取个股北向资金持仓
stock_north = ak.stock_hsgt_individual_em(stock="600519")
print(stock_north.head())
你看,两行代码就能拿到北向资金数据。akshare的接口命名很直观,基本一看就知道是干嘛的。
小技巧:akshare返回的数据格式是pandas DataFrame,可以直接用pandas做分析,非常方便。
2.3 tushare库——专业玩家的选择
tushare跟akshare不太一样。它更偏向专业用户,数据质量高,但需要注册获取token。
安装:
pip install tushare
使用前要先注册:
import tushare as ts
# 设置token(去tushare官网注册获取)
ts.set_token('你的token')
# 初始化pro接口
pro = ts.pro_api()
# 获取北向资金持股明细
north_hold = pro.hsgt_hold_detail(trade_date='20250110')
print(north_hold.head())
我个人习惯把token存在环境变量里,而不是直接写在代码中。这样既安全,又方便切换账号。
注意:tushare的免费版有调用频率限制,每分钟最多200次。如果策略需要高频数据,建议付费升级。
2.4 数据源选择策略——怎么选最合适?
这个问题,我当年纠结了很久。后来总结出一个原则:看场景选工具。
下面这张图是我自己梳理的决策逻辑:
说白了,选数据源就三个维度:
- 实时性要求:做盘中交易选akshare,它更新快
- 数据精度要求:做回测研究选tushare,它历史数据更全
- 成本预算:免费先用akshare,不够用了再上tushare付费版
我自己的做法是:两个库都装。平时用akshare做快速验证,正式策略用tushare。这样既灵活又保险。
我的建议:刚开始学北向资金筛选,先用akshare就够了。等策略跑通了,再考虑用tushare做精细化回测。
2.5 避坑指南——我踩过的那些坑
做数据获取,最怕的就是数据源突然挂了。我曾经有一次,凌晨跑策略,结果akshare接口返回空数据,整个策略白跑了一晚上。
从那以后,我养成了几个习惯:
- 数据缓存:每次获取的数据存一份本地CSV,万一接口挂了还能用缓存
- 异常处理:代码里加try-except,接口报错时自动切换备用数据源
- 定时检查:每周跑一次数据完整性检查,确保数据没断档
嗯,这些经验都是用真金白银换来的。你想想看,要是因为数据问题导致策略误判,那损失可就大了。
2.6 本章小结
这一章,咱们把数据获取的基础打好了:
- Python环境搭建——Anaconda + Python 3.9
- akshare安装与使用——免费、更新快、适合实时数据
- tushare安装与使用——专业、数据质量高、适合回测
- 数据源选择策略——看场景选工具,两个都装最保险
下一章,咱们就要开始真正的北向资金数据清洗和分析了。到时候,这些基础工作会让你事半功倍。