第二章:策略开发环境搭建

做量化交易,第一件事不是写策略,而是搭环境。

我见过太多人,策略逻辑想得挺漂亮,结果一跑代码就报错——库没装、版本冲突、Python路径不对。折腾半天,热情全没了。

所以这一章,咱们把环境彻底搞定。一次配置,后面省心。

2.1 Python版本选择:别踩坑

Python版本这事儿,我吃过亏。几年前我图新鲜装了Python 3.11,结果TensorFlow死活装不上,折腾了两天才发现是版本不兼容。

我的建议:用Python 3.8或3.9。

为什么?因为主流量化库对这两个版本支持最稳。TensorFlow、scikit-learn、TA-Lib,基本都能无缝安装。

⚠️ 避坑指南: 我曾经因为装了Python 3.12,导致pandas-profiling无法运行。后来回退到3.9,一切正常。所以别追新,稳最重要。

2.2 Anaconda:量化交易者的瑞士军刀

Anaconda是什么?说白了就是一个Python发行版,帮你把常用的科学计算库打包好了。

我个人习惯用Anaconda管理环境。为什么?因为量化交易经常需要不同项目用不同版本的库。比如策略A用TensorFlow 2.4,策略B用2.10。用Anaconda的虚拟环境,互不干扰。

安装步骤

  1. 去Anaconda官网下载对应系统的安装包
  2. 安装时勾选「Add Anaconda to my PATH environment variable」
  3. 打开终端,输入 conda --version 验证安装
💡 小技巧: 安装完成后,建议先换国内镜像源。用 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/,下载速度快很多。

2.3 Jupyter Notebook:边写边测的利器

Jupyter Notebook是我做策略原型时最常用的工具。你想想看,写一段代码,立刻能看到结果,还能画个图看看数据分布。这种即时反馈,对策略开发太重要了。

安装很简单:

conda install jupyter
jupyter notebook

启动后浏览器会自动打开。新建一个Notebook,就可以开始写代码了。

嗯,这里要注意:Jupyter的单元格执行顺序是手动的。我遇到过有人把单元格顺序搞乱,结果变量覆盖了,查了半天bug。建议养成习惯:从上到下依次执行。

2.4 常用量化库安装

接下来是重头戏。量化交易离不开这几个库,我一个个说。

2.4.1 pandas:数据处理的核心

pandas是量化交易的基础。数据清洗、时间序列处理、滚动计算,全靠它。

conda install pandas

安装后可以验证一下:

import pandas as pd
print(pd.__version__)

2.4.2 numpy:数值计算的基石

numpy提供高效的数组运算。量化策略里,计算收益率、波动率、协方差矩阵,底层都是numpy在干活。

conda install numpy

2.4.3 scikit-learn:机器学习策略的标配

想做因子挖掘、分类预测?scikit-learn是入门首选。它封装了常用的机器学习算法,接口统一,上手快。

conda install scikit-learn
🔑 关键点: scikit-learn的API设计非常优雅。fit、predict、transform,三个方法搞定大部分模型。我刚开始做机器学习策略时,就是用scikit-learn的随机森林做因子筛选,效果还不错。

2.4.4 TensorFlow:深度学习策略的引擎

如果你要做LSTM预测股价、用强化学习做交易决策,TensorFlow是绕不开的。

conda install tensorflow

注意:TensorFlow对GPU有要求。如果你没有NVIDIA显卡,会自动安装CPU版本,也能用,就是训练慢一些。

⚠️ 避坑指南: 我曾经在Windows上装TensorFlow,遇到DLL加载失败。后来发现是Visual C++ Redistributable没装。去微软官网下载安装就好了。

2.5 环境验证:跑一个完整的量化小例子

装完库,咱们跑个简单例子,验证环境是否正常。

import pandas as pd
import numpy as np
from sklearn.linear_model import LinearRegression

# 生成模拟数据
dates = pd.date_range('2024-01-01', periods=100)
data = pd.DataFrame({
    'date': dates,
    'price': np.cumsum(np.random.randn(100)) + 100
})

# 计算收益率
data['return'] = data['price'].pct_change()

# 用前一天的收益率预测今天的收益率
X = data['return'].shift(1).dropna().values.reshape(-1, 1)
y = data['return'].dropna().values

model = LinearRegression()
model.fit(X, y)

print(f'模型系数: {model.coef_[0]:.4f}')
print('环境配置成功!')

如果这段代码能跑通,说明你的Python环境、pandas、numpy、scikit-learn都装好了。

2.6 知识体系总览

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

策略开发环境搭建 - 知识体系 Python环境 Anaconda管理 Jupyter Notebook 量化库安装 环境验证 虚拟环境 版本管理 交互式编程 可视化 pandas numpy scikit-learn TensorFlow 代码测试 版本检查 核心目标:一次配置,长期复用 建议使用Anaconda虚拟环境隔离不同策略项目 Python 3.8/3.9 + pandas + numpy + scikit-learn + TensorFlow

2.7 避坑总结

最后,我把这些年踩过的坑总结一下:

问题 原因 解决方案
TensorFlow安装失败 缺少Visual C++运行库 安装Visual C++ Redistributable
库版本冲突 全局安装导致依赖混乱 使用conda虚拟环境隔离
Jupyter内核崩溃 内存不足或库不兼容 重启内核,检查库版本
pandas读取数据慢 未指定数据类型 用dtype参数指定列类型

环境搭建这事儿,看起来琐碎,但真的一次搞定,后面能省下大把时间。我每次开始新项目,第一件事就是建一个新的conda环境,然后装这几个库。习惯了之后,十分钟就能搞定。

好了,环境搭好了,下一章咱们就开始写真正的量化策略了。


专注资料整理