2、Python量化环境搭建:Anaconda安装、Jupyter Notebook配置、常用库安装与验证
做量化回测,说白了就是跟数据打交道。数据清洗、因子计算、模型拟合、绩效归因……每一步都离不开Python。但很多新手一上来就卡在环境配置上,装个库报一堆错,挺打击信心的。
我个人习惯,不管项目大小,都用Anaconda来管理环境。为什么?因为它把Python解释器、常用科学计算库、包管理器都打包好了,省去很多手动编译的麻烦。你想想看,要是每个库都手动装一遍,光是解决依赖冲突就够你喝一壶的。
2.1 Anaconda安装:别小看这一步
去官网下载对应系统的安装包就行。我建议选Python 3.9或3.10版本,太新的版本有些库可能还没适配。安装时记得勾选「Add Anaconda to my PATH environment variable」,虽然安装向导会提醒你可能有风险,但相信我,不勾选的话后面每次都要手动激活环境,更麻烦。
安装完成后,打开终端(Windows用Anaconda Prompt),输入:
conda --version
python --version
能看到版本号,说明安装成功。嗯,这里要注意,如果提示找不到命令,八成是环境变量没配好,手动加一下就行。
2.2 Jupyter Notebook配置:交互式回测利器
做量化研究,我几乎离不开Jupyter Notebook。它最大的好处是能边写代码边看结果,还能加文字说明,非常适合做因子探索和策略验证。
安装很简单:
conda install jupyter notebook
启动就更简单了:
jupyter notebook
浏览器会自动打开一个页面,默认端口是8888。我个人习惯在项目根目录下启动,这样文件管理更方便。
还有个配置我觉得挺实用——修改默认工作目录。找到配置文件:
jupyter notebook --generate-config
打开生成的jupyter_notebook_config.py,找到c.NotebookApp.notebook_dir,改成你放量化项目的文件夹路径。这样每次启动就直接进入工作目录,不用再手动切换。
2.3 常用库安装:pandas、numpy、statsmodels、matplotlib
这四个库是量化回测的基石。pandas处理表格数据,numpy做数值计算,statsmodels搞统计建模,matplotlib画图。缺一个都不行。
安装命令:
conda install pandas numpy statsmodels matplotlib
或者用pip:
pip install pandas numpy statsmodels matplotlib
我个人推荐用conda安装,因为它会自动处理依赖关系。比如statsmodels依赖patsy和scipy,用conda装的话这些都会一并装好。
2.4 安装验证:确认环境没问题
装完库,一定要验证一下。我见过太多人装完就以为万事大吉,结果跑代码时才发现某个库没装上。
打开Jupyter Notebook,新建一个Python 3笔记本,逐行运行以下代码:
import pandas as pd
import numpy as np
import statsmodels.api as sm
import matplotlib.pyplot as plt
print("pandas版本:", pd.__version__)
print("numpy版本:", np.__version__)
print("statsmodels版本:", sm.__version__)
# 简单测试:生成随机数据并画图
data = np.random.randn(100)
plt.plot(data)
plt.title("环境验证测试")
plt.show()
如果能正常输出版本号并显示一张折线图,说明环境搭建成功。
我再加一个pandas的测试,毕竟它是量化回测的核心:
# 创建一个简单的DataFrame
df = pd.DataFrame({
'date': pd.date_range('2024-01-01', periods=5, freq='D'),
'return': [0.01, -0.005, 0.02, 0.015, -0.01]
})
print(df)
print("\n平均收益率:", df['return'].mean())
输出应该是一个5行2列的表格,平均收益率约0.006。如果报错,检查一下是不是某个库没装全。
2.5 本章知识体系
我把整个环境搭建的流程画了张图,方便你对照检查:
这张图把整个流程串起来了。从Anaconda开始,到Jupyter配置,再到库安装,最后验证。每一步都环环相扣,哪一步出问题都会影响后续工作。
conda create -n quant python=3.9,然后conda activate quant。这样不同项目用不同环境,互不干扰。我自己的机器上就同时维护着三四个环境,做回测用quant,做机器学习用ml,做生产部署用prod。
环境搭好了,后面就可以正式开始数据清洗和因子计算了。记住,好的开始是成功的一半,花点时间把环境配好,后面能省下大量排查问题的时间。