第一章:环境准备与工具链

说实话,搭建开发环境这事儿,看着简单,但坑是真不少。我见过太多人卡在第一步——Python版本冲突、包装不上、代码丢了找不回来。嗯,咱们先把地基打牢。

1.1 Python环境搭建

Python版本怎么选?我个人习惯用3.9或3.10。为什么?因为很多量化库对3.11以上的支持还不够稳定。我在项目中遇到过,用Python 3.12跑一个老项目,结果某个依赖库直接报错,折腾了半天才发现是版本问题。

下载地址:python.org

安装时记得勾选「Add Python to PATH」。这个选项默认没勾,我第一次装的时候就忘了,结果在命令行里敲python没反应,还以为电脑坏了。

注意:Windows用户别把Python装到C盘带空格的路径下,比如「Program Files」。有些库解析路径会出问题。

1.2 Anaconda与虚拟环境管理

为什么要用虚拟环境?说白了,就是隔离。你想想看,项目A需要pandas 1.3,项目B需要pandas 2.0,要是装在一个环境里,那不乱套了?

Anaconda是我最推荐的方式。它自带conda命令,管理环境特别方便。

# 创建虚拟环境
conda create -n quant_agent python=3.9

# 激活环境
conda activate quant_agent

# 退出环境
conda deactivate

# 查看所有环境
conda env list

我曾经有个项目,需要同时维护三个不同依赖版本的环境。用conda管理,切换起来就跟换衣服一样简单。

小技巧:环境名别起太复杂,我一般用项目缩写,比如「qa」代表quant_agent。

1.3 Jupyter Notebook配置

Jupyter Notebook是量化研究的标配。为什么?因为它支持交互式编程,写一段代码跑一段,立马看到结果。做数据分析时特别爽。

安装很简单:

pip install jupyter notebook

启动:

jupyter notebook

但默认配置有几个痛点。比如,默认端口是8888,如果同时开多个notebook就会冲突。我习惯改一下配置:

# 生成配置文件
jupyter notebook --generate-config

# 编辑配置文件,找到下面这行
# c.NotebookApp.port = 8888
# 改成
c.NotebookApp.port = 9999

还有一个坑:notebook默认只能从本地访问。如果你在服务器上跑,需要加个参数:

jupyter notebook --ip=0.0.0.0 --no-browser
核心要点:Jupyter的核心理念是「探索式编程」。先写一小段代码验证想法,再逐步扩展。别一上来就写几百行。

1.4 Git版本控制基础

Git这东西,刚开始觉得麻烦,用习惯了就离不开。我见过有人写代码从来不备份,电脑一坏,几个月的心血全没了。那叫一个惨。

基本流程就这几步:

# 初始化仓库
git init

# 添加文件到暂存区
git add .

# 提交到本地仓库
git commit -m "第一次提交"

# 关联远程仓库(比如GitHub)
git remote add origin https://github.com/你的用户名/quant_agent.git

# 推送到远程
git push -u origin main

日常开发中,我最常用的就三个命令:

  • git status — 看看改了哪些文件
  • git diff — 看看具体改了啥
  • git log — 看看提交历史
避坑指南:我曾经有一次,在master分支上直接改代码,改到一半发现思路不对,想回退。结果因为没及时提交,改动的代码全丢了。从那以后,我养成了「小步提交」的习惯——每完成一个功能点就commit一次。

1.5 必备Python库安装

做量化投研,有几个库是绕不开的。我列个清单:

库名 用途 安装命令
numpy 数值计算 pip install numpy
pandas 数据处理 pip install pandas
matplotlib 数据可视化 pip install matplotlib
scikit-learn 机器学习 pip install scikit-learn
requests 网络请求 pip install requests
tushare A股数据接口 pip install tushare
backtrader 回测框架 pip install backtrader

安装时有个小技巧:用pip install -r requirements.txt批量安装。我习惯把项目依赖都写进这个文件里,换环境时一键搞定。

# requirements.txt 示例
numpy==1.24.3
pandas==2.0.3
matplotlib==3.7.1
scikit-learn==1.3.0
requests==2.31.0
tushare==1.4.1
backtrader==1.9.78.123
建议:版本号最好固定下来。不然过几个月再跑项目,依赖库升级了,代码可能就跑不通了。我吃过这个亏。

1.6 知识体系总览

这一章的内容,说白了就围绕一个核心:让开发环境稳定、可复现、好管理。下面这张图能帮你快速理清思路:

智能投研Agent开发环境 Python 3.9/3.10 Anaconda + 虚拟环境 Jupyter Notebook Git版本控制 numpy / pandas matplotlib scikit-learn tushare / backtrader 左侧:基础环境 → 右侧:核心工具库

环境搭好了,后面的事就顺了。别急,咱们一步一步来。


专注资料整理