第二章:环境搭建——Python环境配置、Anaconda安装、Jupyter Notebook设置、虚拟环境管理

做量化回测,第一步不是写策略,而是搭环境。

我见过太多人,策略写得挺好,结果一跑就报错。查了半天,原来是Python版本不对,或者包冲突了。说白了,环境问题能卡你三天。所以这一章,咱们把地基打牢。

2.1 Python环境配置——选对版本,少走弯路

Python版本怎么选?我个人习惯用3.8或3.9。为什么?因为量化相关的库,比如pandas、numpy、backtrader,对这两个版本支持最稳。

你想想看,如果你装了个Python 3.12,有些老库还没适配,一安装就报错。嗯,我在项目中遇到过,一个同事非要用最新版,结果折腾了两天,最后还是换回了3.9。

推荐版本:Python 3.8.10 或 3.9.13

下载地址:python.org 官网,别去第三方网站下,容易中招。

安装时注意勾选「Add Python to PATH」。这一步很多人会忘,忘了之后命令行打python没反应。我曾经帮一个新手远程调试,就因为这个勾没选,折腾了半小时。

2.2 Anaconda安装——全家桶省心省力

Anaconda是什么?说白了,就是一个Python的「全家桶」。它帮你装好了Python、常用库、还有包管理工具conda。

我个人强烈建议用Anaconda。尤其是做量化,你要装一堆金融库,一个个pip安装太累了。Anaconda一键搞定。

工具 说明
conda 包管理器,比pip更智能,能自动处理依赖
Jupyter Notebook 交互式编程环境,适合回测分析
Spyder IDE,适合写复杂策略

安装步骤很简单:

  1. 去Anaconda官网下载对应系统的安装包
  2. 双击安装,一路默认就行
  3. 注意:安装路径不要有中文,不要有空格

避坑指南:我曾经在Windows上装Anaconda,路径里带了个「用户」中文文件夹,结果后面装包各种报错。所以,路径一定要全英文。

2.3 Jupyter Notebook设置——量化回测的利器

Jupyter Notebook,做量化回测的神器。你可以在里面写代码、看图表、做笔记,一气呵成。

启动方式很简单:打开命令行,输入 jupyter notebook,浏览器就会自动打开。

但默认配置有点丑,而且功能不够全。我建议做几个优化:

  • 修改默认目录:找到配置文件 jupyter_notebook_config.py,修改 c.NotebookApp.notebook_dir 为你自己的回测项目文件夹
  • 安装插件:pip install jupyter_contrib_nbextensions,装上后可以加目录、代码折叠等功能
  • 设置密码:如果你在服务器上用,记得设密码,不然谁都能连上来

小技巧:我习惯在Jupyter里先写策略原型,跑通了再搬到正式脚本里。这样调试起来特别快,不用每次都从头跑整个程序。

2.4 虚拟环境管理——项目隔离,互不干扰

做量化回测,你可能会同时维护好几个策略。每个策略依赖的库版本可能不一样。比如策略A用pandas 1.3,策略B用pandas 2.0。如果装在一个环境里,迟早出问题。

虚拟环境就是干这个的。每个项目有自己的「小房间」,互不干扰。

用conda创建虚拟环境:

# 创建一个名为 backtest_env 的环境,指定Python版本
conda create -n backtest_env python=3.9

# 激活环境
conda activate backtest_env

# 安装量化常用库
conda install pandas numpy matplotlib
pip install backtrader

# 退出环境
conda deactivate

我个人习惯给每个策略单独建一个环境。比如:

  • strategy_moving_average —— 均线策略
  • strategy_momentum —— 动量策略
  • strategy_ml —— 机器学习策略

避坑指南:我曾经在一个环境里装了所有库,结果升级一个包,把另一个策略的依赖搞坏了。回测数据全乱套,查了两天才发现是版本冲突。从那以后,我每个项目都单独建环境,再也没出过这种问题。

2.5 本章知识体系

下面这张图,帮你理清整个环境搭建的逻辑:

量化回测环境 Python 3.8/3.9 • 官网下载 • 勾选 Add to PATH Anaconda • 全家桶安装 • 路径不要中文 Jupyter Notebook • 修改默认目录 • 安装插件 虚拟环境管理 conda create -n 环境名 每个策略独立环境

这张图展示了整个环境搭建的四个核心部分:Python版本选择、Anaconda安装、Jupyter配置、虚拟环境管理。它们层层递进,缺一不可。

2.6 验证环境是否搭好

环境搭完了,怎么知道对不对?跑个简单的测试:

# 在命令行输入
python --version
# 应该输出 Python 3.9.x

conda --version
# 应该输出 conda 4.x.x

jupyter --version
# 应该输出 Jupyter 版本号

如果都能正常显示,恭喜你,环境搭好了。

我的习惯:每次搭完新环境,我都会先跑一个简单的pandas操作,确认没问题再开始写策略。别等到写了几百行代码才发现环境有问题,那太痛苦了。

好了,环境这块就说到这。记住一句话:环境搭得好,回测没烦恼。后面咱们就可以正式开始写策略了。

专注资料整理