第二章:研发环境搭建

做量化策略研发,第一件事不是写代码,而是搭环境。这事儿看着简单,但我在项目里见过太多人因为环境问题浪费一整天。说白了,环境搭好了,后面能省80%的坑。

操作系统怎么选?

我个人习惯用Linux,尤其是Ubuntu。为什么?因为量化生态里大部分工具和库,都是优先支持Linux的。你想想看,服务器上跑策略,99%都是Linux。本地开发用Linux,能避免很多「本地能跑,服务器报错」的尴尬。

Windows也不是不行。我早期做CTA策略时就在Windows上折腾过。但有个坑——有些科学计算库在Windows上编译特别麻烦。比如TA-Lib,装起来能让你怀疑人生。Mac用户相对幸福,Unix内核,兼容性好,但M1/M2芯片偶尔会有兼容性问题。

我的建议:

  • 新手:Windows + WSL2(Windows Subsystem for Linux)
  • 老手:Ubuntu 22.04 LTS 或 MacOS
  • 团队协作:统一Linux环境,避免「我的机器能跑」

Python环境管理:Anaconda vs venv

这个问题我纠结过很久。Anaconda确实方便,自带1500+包,装完就能用。但有个问题——它太胖了。一个基础环境就占3-4G,而且conda的依赖解析有时候慢得离谱。

venv是Python自带的,轻量,干净。但你需要手动装所有包。嗯,这里要注意:venv只管理Python包,不管理系统级的依赖。比如你装pandas,它底层依赖的libgcc、libstdc++这些,venv管不了。

我的实战经验:

我现在的做法是:用miniconda(Anaconda的轻量版)管理Python版本,然后用venv或poetry管理项目依赖。这样既保留了conda的便利性,又避免了环境臃肿。

工具 优点 缺点 适用场景
Anaconda 开箱即用,包管理强大 体积大,依赖解析慢 新手、数据分析
miniconda 轻量,保留conda功能 需要手动装包 日常开发
venv Python原生,轻量 不管理系统依赖 纯Python项目
poetry 依赖锁定,发布方便 学习曲线略高 团队协作、库开发

核心库安装

量化策略离不开这几个库。我按安装顺序和重要性排个序:

  1. numpy:所有数值计算的基础。装它的时候注意,最好用conda装,因为pip装有时会触发编译,慢。
  2. pandas:处理时间序列数据的利器。我建议装最新版,老版本有些API已经废弃了。
  3. matplotlib:画图用的。量化里看回测曲线、K线图都靠它。
  4. scipy:科学计算,优化算法、统计检验都用得上。
  5. statsmodels:做统计建模和假设检验。比如你算个协整关系、做ADF检验,就靠它。

我曾经踩过的坑:

有一次装statsmodels,pip install直接报错,说缺少gfortran。折腾了半天才发现,statsmodels底层依赖Fortran编译器。后来用conda装,一步到位。所以我的建议是:科学计算相关的库,优先用conda装。

# 推荐安装方式
conda install numpy pandas matplotlib scipy statsmodels

# 或者用pip(但要注意依赖)
pip install numpy pandas matplotlib scipy statsmodels

Jupyter Lab配置与使用

Jupyter Lab是我每天都要用的工具。它比Jupyter Notebook强在哪?说白了,就是更像一个IDE了。你可以同时打开多个notebook、终端、文件浏览器,还能拖拽布局。

我个人习惯这样配置:

  • 安装jupyterlab:conda install jupyterlab
  • 安装插件:jupyterlab-git(版本控制)、jupyterlab-lsp(代码补全)
  • 设置密码:jupyter lab password,防止别人连你的端口
  • 修改默认端口:jupyter lab --port=8889,避免冲突

一个小技巧:

在Jupyter Lab里,按Shift+Enter运行当前单元格并跳到下一个。按Ctrl+Enter只运行不跳转。按Esc退出编辑模式,然后按a在上面插入单元格,按b在下面插入。这些快捷键用熟了,效率能翻倍。

你想想看,一个量化策略从数据获取、因子计算、回测到结果分析,全在一个notebook里完成,多爽。但要注意,notebook不适合做生产环境。策略定型后,还是要转成.py脚本。

本章知识体系

下面这张图,是我梳理的研发环境搭建的核心逻辑。从操作系统到底层库,再到开发工具,一层层往上搭。

量化策略研发环境搭建 操作系统层 Linux (推荐) | Windows + WSL2 | MacOS Python环境管理 Anaconda | miniconda | venv | poetry 核心科学计算库 numpy → pandas → matplotlib → scipy → statsmodels 安装顺序:先conda后pip,避免编译问题 开发工具与IDE Jupyter Lab | VS Code | PyCharm 开始策略研发

环境搭建这件事,说难不难,说简单也不简单。关键是别急,一步步来。我见过有人一上来就装一堆库,结果版本冲突,最后全删了重来。嗯,稳一点,先搭好基础,再往上加东西。

本章核心要点:

  • 操作系统:Linux优先,Windows用户用WSL2过渡
  • Python环境:miniconda + venv/poetry 组合拳
  • 核心库:按numpy→pandas→matplotlib→scipy→statsmodels顺序装
  • Jupyter Lab:装好插件,记牢快捷键,效率翻倍

好了,环境搭好,下一章我们就可以开始真正写策略了。记住,好的开始是成功的一半,环境搭好了,后面就顺了。


公众号:蓝海资料掘金营,微信deep3321