第一章:Python量化环境搭建
做量化投资,第一件事不是写策略,而是搭环境。
我见过太多人,策略逻辑想得天花乱坠,结果一跑代码就报错——库没装、版本冲突、路径不对。说白了,环境没搭好,后面全是坑。
这一章,我就带你一步步把量化环境搭起来。干净、稳定、可复现。
1.1 为什么选Anaconda?
Python的包管理,说白了就是一场噩梦。你装一个库,它依赖另一个库,另一个库又依赖特定版本...搞不好就把系统Python搞崩了。
Anaconda就是来解决这个问题的。它自带Python、包管理器conda、还有150+常用数据科学库。你想想看,一次安装,省去多少折腾。
我个人习惯用Miniconda——Anaconda的轻量版。只装核心工具,需要什么库再自己加。干净利落。
- 环境隔离:每个项目独立Python环境,互不干扰
- 包管理:conda自动处理依赖冲突
- 跨平台:Windows/Mac/Linux统一体验
1.2 Anaconda安装实战
安装过程其实很简单,但有几个细节要注意。
Windows用户
- 去官网下载Anaconda或Miniconda安装包
- 安装时,务必勾选「Add Anaconda to my PATH environment variable」
- 安装路径不要有中文和空格
Mac/Linux用户
终端里一行命令搞定:
# 下载安装脚本
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
# 运行安装
bash Miniconda3-latest-Linux-x86_64.sh
# 按提示操作,最后选择yes初始化conda
安装完,重启终端,输入 conda --version,看到版本号就说明成了。
1.3 Jupyter Notebook配置
Jupyter Notebook是我做量化研究的主力工具。为什么?因为它支持交互式编程——写一段代码,立刻看到结果,还能加图表和文字说明。
你想想看,回测一个策略,边调参数边看曲线变化,多直观。
安装与启动
# 安装
conda install jupyter notebook
# 启动
jupyter notebook
启动后,浏览器会自动打开一个页面。默认端口是8888。
常用快捷键
| 快捷键 | 功能 |
|---|---|
| Shift + Enter | 运行当前单元格并跳到下一个 |
| Ctrl + Enter | 运行当前单元格 |
| A | 在上方插入新单元格 |
| B | 在下方插入新单元格 |
| DD | 删除当前单元格 |
| M | 切换为Markdown模式 |
| Y | 切换为代码模式 |
1.4 常用量化库安装与验证
量化投资离不开几个核心库。我按重要性排个序:
1. pandas — 数据处理核心
做量化的,90%的时间都在跟数据打交道。pandas就是处理表格数据的瑞士军刀。
# 安装
conda install pandas
# 验证
import pandas as pd
print(pd.__version__)
# 快速测试
data = pd.DataFrame({'日期': ['2024-01-01', '2024-01-02'],
'收盘价': [100.5, 101.2]})
print(data)
2. numpy — 数值计算基础
pandas底层就是numpy。矩阵运算、数学函数,全靠它。
conda install numpy
# 验证
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
print(arr.mean()) # 输出3.0
3. matplotlib — 可视化利器
没有图表,你根本看不出数据规律。matplotlib是Python可视化的老祖宗。
conda install matplotlib
# 验证
import matplotlib.pyplot as plt
plt.plot([1, 2, 3], [4, 5, 6])
plt.title('测试图表')
plt.show()
4. scikit-learn — 机器学习建模
因子挖掘、选股模型、风险预测...都离不开它。
conda install scikit-learn
# 验证
from sklearn.linear_model import LinearRegression
model = LinearRegression()
print('scikit-learn 安装成功')
5. statsmodels — 统计建模专用
做因子分析、时间序列建模,statsmodels比scikit-learn更专业。
conda install statsmodels
# 验证
import statsmodels.api as sm
print('statsmodels 安装成功')
conda install pandas numpy matplotlib scikit-learn statsmodels jupyter
一行命令,全部搞定。
1.5 环境验证与常见问题
装完库,一定要做一次完整验证。我习惯写一个验证脚本:
# 环境验证脚本
import sys
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import sklearn
import statsmodels
print(f"Python版本: {sys.version}")
print(f"pandas版本: {pd.__version__}")
print(f"numpy版本: {np.__version__}")
print(f"matplotlib版本: {plt.matplotlib.__version__}")
print(f"scikit-learn版本: {sklearn.__version__}")
print(f"statsmodels版本: {statsmodels.__version__}")
print("\n✅ 所有库安装成功!")
- ImportError: No module named xxx — 库没装,或者装错了环境。检查当前激活的conda环境。
- 版本冲突 — 用conda安装,它会自动处理依赖。别用pip乱装。
- Jupyter内核找不到库 — 在jupyter里运行
!conda list查看当前内核的包列表。
1.6 本章知识体系
下面这张图,概括了本章的核心内容:
1.7 避坑指南
- 每个量化项目建一个独立conda环境:
conda create -n quant_env python=3.9 - 别用系统自带的Python做量化开发,版本管理太乱
- Jupyter里如果报内核错误,重启内核往往能解决80%的问题
- 安装库时,优先用conda,conda没有再用pip
环境搭好了,后面的事情就顺了。记住一句话:工欲善其事,必先利其器。量化投资这条路,环境就是你的第一把刀。
公众号:蓝海数据掘金营,微信deep3321