3. Python环境搭建:Anaconda安装、虚拟环境配置、常用量化库安装

做量化交易,尤其是做市商系统,Python环境是第一步。这一步要是没走好,后面全是坑。我见过太多新手在环境配置上浪费一整天,最后发现是Python版本冲突或者库装错了地方。

今天我就带你把这套环境搭得明明白白。咱们的目标是:一次配置,长期稳定。

3.1 为什么选Anaconda?

说白了,Anaconda就是个Python的「全家桶」。它自带科学计算库、包管理器conda,还有虚拟环境功能。我个人习惯用Anaconda,原因很简单:

  • 省心:装一个Anaconda,pandas、numpy这些基础库就都有了
  • 隔离:每个项目一个虚拟环境,互不干扰
  • 跨平台:Windows、macOS、Linux都能用

你想想看,要是手动装Python,再一个个pip install,遇到版本冲突时真的会崩溃。我在项目中遇到过好几次,因为全局环境装了太多库,导致某个依赖包版本不对,整个系统跑不起来。从那以后,我每个项目都强制用虚拟环境。

3.2 Anaconda安装步骤

安装过程其实很简单,但有几个细节要注意。

3.2.1 下载与安装

  1. 去Anaconda官网下载对应系统的安装包(建议选Python 3.9+版本)
  2. 双击安装,一路默认即可
  3. 关键一步:安装时勾选「Add Anaconda to my PATH environment variable」
⚠️ 注意: 如果你之前装过Python,建议先卸载干净。Anaconda会自带Python,两个版本混在一起容易出问题。我曾经因为没卸载旧Python,结果conda和pip互相打架,折腾了半小时。

3.2.2 验证安装

打开终端(Windows用cmd或PowerShell,macOS/Linux用Terminal),输入:

conda --version
python --version

如果能看到版本号,说明安装成功。嗯,这里要注意:如果python命令找不到,大概率是PATH没配好,手动加一下环境变量就行。

3.3 虚拟环境配置

虚拟环境是Python开发的「隔离舱」。每个项目有自己的依赖,互不污染。我做市商系统时,测试环境和生产环境就是两个不同的虚拟环境,这样升级库也不怕影响线上运行。

3.3.1 创建虚拟环境

conda create -n market_maker python=3.9

这条命令会创建一个名叫market_maker的环境,Python版本3.9。环境名你可以随便起,但我建议用项目名,方便管理。

3.3.2 激活与退出

# 激活环境
conda activate market_maker

# 退出环境
conda deactivate

激活后,终端前面会出现(market_maker)字样,说明你已经在虚拟环境里了。这时候安装的所有库,都只在这个环境里生效。

3.3.3 常用虚拟环境命令

命令 说明
conda env list 查看所有虚拟环境
conda remove -n 环境名 --all 删除虚拟环境
conda env export > environment.yml 导出环境配置(方便别人复现)
conda env create -f environment.yml 从配置文件创建环境
💡 小技巧: 我习惯把environment.yml放在项目根目录下。这样团队成员或服务器部署时,一条命令就能复现完全一样的环境,避免「在我电脑上能跑」的尴尬。

3.4 常用量化库安装

做市商系统离不开几个核心库。咱们一个一个装。

3.4.1 pandas & numpy

这两个是数据分析的基石。pandas处理表格数据,numpy做数值计算。

conda install pandas numpy

用conda装的好处是,它会自动处理依赖关系。比如pandas依赖numpy,conda会帮你装好兼容的版本。

3.4.2 ccxt

ccxt是加密货币交易所的统一API接口库。它支持100多家交易所,包括币安、OKX、火币等。做市商系统要对接多个交易所,ccxt是首选。

pip install ccxt

为什么这里用pip而不是conda?因为ccxt更新很快,conda上的版本往往滞后。我个人习惯用pip装ccxt,能第一时间拿到最新特性。

3.4.3 websocket-client

做市商系统需要实时行情,WebSocket是标配。这个库用来建立和维护WebSocket连接。

pip install websocket-client
📌 重要提醒: 安装完一定要验证一下。打开Python交互环境,试试能不能导入:
python -c "import pandas; import numpy; import ccxt; import websocket; print('All good!')"
如果没报错,说明环境搭好了。

3.5 知识体系总览

下面这张图帮你理清本章的知识结构。从Anaconda安装开始,到虚拟环境隔离,再到核心库安装,每一步都是为后面的实战打基础。

Python环境搭建知识体系 Anaconda 安装 虚拟环境配置 常用量化库安装 pandas numpy ccxt websocket

3.6 避坑指南

环境搭建看着简单,但坑不少。我把自己踩过的坑列出来,你遇到了直接对照排查。

  • Python版本冲突:系统自带的Python和Anaconda的Python别混用。我建议把系统Python的PATH去掉,只用conda的。
  • pip和conda混用:同一个环境里,尽量只用一种包管理器。混用可能导致依赖混乱。我一般用conda装基础库,用pip装那些conda上没有的。
  • 网络问题:国内装ccxt可能很慢。可以换国内镜像源,比如清华的:pip install ccxt -i https://pypi.tuna.tsinghua.edu.cn/simple
  • WebSocket连接失败:如果websocket-client装完连不上交易所,检查一下是不是Python版本太高。有些老版本的websocket库不支持Python 3.10+,建议用最新版。
🔧 我的习惯: 每次新建项目,我都会先创建一个requirements.txt文件,把用到的库和版本写进去。这样不管是换电脑还是部署服务器,一条pip install -r requirements.txt就搞定。省心又规范。

好了,环境搭好了,咱们就可以开始写真正的做市商代码了。记住,好的开始是成功的一半。环境稳了,后面写代码才踏实。


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