第2章:环境准备——Python环境搭建、Anaconda安装、Jupyter Notebook配置、必备库安装

说实话,很多人在量化这条路上半途而废,不是因为策略不够牛,也不是因为数学太难,而是卡在了第一步——环境没搭好。

我见过太多人,下载了Anaconda装到一半报错,或者装好了库版本冲突,直接心态崩了。嗯,这章我们就来把这层窗户纸捅破。

2.1 为什么非得用Anaconda?

你可能会问:我自己装个Python不行吗?当然行。但你要想想,做量化因子研究,我们得跟几十个科学计算库打交道。一个个手动装,版本还得自己管,太累了。

Anaconda说白了就是一个「全家桶」。它帮你把Python解释器、包管理器、常用科学计算库一股脑全装好。我个人的习惯是,每做一个新项目,就用conda创建一个独立的环境。这样项目A用pandas 1.0,项目B用pandas 2.0,互不干扰。

核心优势:
  • 自带conda包管理器,比pip更擅长处理依赖冲突
  • 预装200+常用数据科学库
  • 支持创建隔离的虚拟环境

2.2 安装Anaconda(手把手版)

去官网下载对应你操作系统的安装包。我建议选Python 3.9或3.10版本,太新的版本有些库还没适配好。

安装时有个坑,我曾经踩过——Windows用户记得勾选「Add Anaconda to my PATH environment variable」。虽然安装程序会警告你「不推荐」,但相信我,勾上它,后面省事很多。

注意: macOS和Linux用户,安装完后记得跑一下 conda init,否则终端里找不到conda命令。

装完后验证一下,打开终端(Windows用Anaconda Prompt),输入:

conda --version
python --version

能看到版本号,就说明成了。

2.3 配置Jupyter Notebook

Jupyter Notebook是我们写因子代码的主战场。它最大的好处是「所见即所得」——你写一段代码,立刻能看到结果,还能在中间穿插文字说明。

我个人习惯把Notebook当成实验记录本。每个因子从想法到验证,全在一个.ipynb文件里完成。

启动方式很简单:

jupyter notebook

浏览器会自动弹出来。如果没弹,把终端里那行URL复制到浏览器就行。

小技巧: 我建议你装一个Jupyter Lab,它是Notebook的升级版,界面更像IDE,支持多标签页。装法:conda install jupyterlab

2.4 必备库安装

做因子研究,下面这几个库是吃饭的家伙。我按重要程度排个序:

库名 用途 安装命令
pandas 数据处理,因子计算的核心工具 conda install pandas
numpy 数值计算,矩阵运算 conda install numpy
matplotlib 基础绘图,看因子分布 conda install matplotlib
seaborn 统计图表,比matplotlib好看 conda install seaborn
scipy 科学计算,统计检验 conda install scipy
statsmodels 回归分析,时间序列建模 conda install statsmodels

你可以一次性全装上:

conda install pandas numpy matplotlib seaborn scipy statsmodels

等个几分钟,喝杯水,回来就装好了。

避坑指南: 我曾经在statsmodels上栽过跟头。如果你用 pip install statsmodels,在某些系统上会报编译错误。用conda装就稳得很,因为它下的是预编译好的二进制包。

2.5 验证安装

打开Jupyter Notebook,新建一个Python文件,跑下面这段代码:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import scipy.stats as stats
import statsmodels.api as sm

print("所有库导入成功!")
print(f"pandas版本: {pd.__version__}")
print(f"numpy版本: {np.__version__}")

不报错,就说明环境齐活了。

2.6 本章知识体系

下面这张图,帮你理清这章的核心逻辑:

量化因子环境准备 Anaconda安装 Jupyter Notebook配置 必备库安装 conda环境隔离 PATH配置 交互式编程 Jupyter Lab pandas/numpy matplotlib/seaborn scipy/statsmodels 验证:import 不报错即成功

环境准备这件事,一次搞定,后面几十年都受益。别嫌麻烦,磨刀不误砍柴工。

专注资料整理