3、Python环境准备:安装pandas、numpy、requests、websocket-client库,配置虚拟环境
做量化交易,尤其是外汇这种高频数据,Python环境就是你的作战指挥室。我见过太多人一上来就pip install,结果项目做到一半发现依赖冲突,整个环境崩掉。嗯,今天我们就来把这个基础打牢。
3.1 为什么非要搞虚拟环境?
说白了,虚拟环境就是给你的每个项目一个独立的小房间。你在A项目里装pandas 1.5,在B项目里装pandas 2.0,它们互不干扰。我曾经有一次在服务器上同时跑两个策略,一个依赖旧版numpy,一个依赖新版,结果两个都报错——从那以后,我每个项目必建虚拟环境。
核心原则:一个项目,一个虚拟环境,一套依赖。别偷懒。
3.2 创建虚拟环境(两种方式)
我个人习惯用Python自带的venv模块,轻量、干净。如果你喜欢用conda,也可以,但这里我们以venv为例。
# 打开终端,进入你的项目目录
cd forex_microdata_project
# 创建虚拟环境(名字叫 .venv 是行业惯例)
python -m venv .venv
你想想看,这个命令执行完,目录下就多了一个.venv文件夹。里面藏着Python解释器和pip,完全独立于系统环境。
3.3 激活虚拟环境
不同系统激活方式不一样,我列个表,你对照着来:
| 操作系统 | 激活命令 |
|---|---|
| Windows (CMD) | .venv\Scripts\activate |
| Windows (PowerShell) | .venv\Scripts\Activate.ps1 |
| macOS / Linux | source .venv/bin/activate |
激活成功后,终端前面会出现(.venv)字样。看到这个,就说明你已经在虚拟环境里了。
小技巧:在VS Code里,你可以直接选择Python解释器为.venv里的那个,终端会自动激活。省事。
3.4 安装核心库
好,环境激活了,现在开始装东西。我们外汇数据获取需要四个库:
- pandas:数据处理的核心,没有它寸步难行
- numpy:数值计算,pandas的底层依赖
- requests:拉取REST API数据,比如历史K线
- websocket-client:接收实时行情,做高频必备
安装命令很简单:
pip install pandas numpy requests websocket-client
这里有个坑——我建议你指定版本号。为什么呢?因为最新版不一定最稳定。比如pandas 2.0刚出的时候,很多旧代码跑不了。我个人习惯用这个组合:
pip install pandas==1.5.3 numpy==1.24.3 requests==2.31.0 websocket-client==1.6.3
注意:如果你用的是Apple Silicon芯片(M1/M2/M3),装numpy可能会报错。解决方案是装pip install numpy --no-binary :all:,或者直接用conda。
3.5 验证安装
装完了,怎么知道对不对?写个简单脚本测试一下:
# test_env.py
import pandas as pd
import numpy as np
import requests
import websocket
print(f"pandas version: {pd.__version__}")
print(f"numpy version: {np.__version__}")
print(f"requests version: {requests.__version__}")
print(f"websocket version: {websocket.__version__}")
print("环境准备完成!")
运行python test_env.py,如果四个版本号都正常打印出来,恭喜你,环境搞定了。
3.6 冻结依赖(好习惯)
项目做完,或者要部署到服务器,你需要记录当前环境的所有依赖。用这个命令:
pip freeze > requirements.txt
这样别人拿到你的项目,只需要pip install -r requirements.txt就能一键复现环境。我在团队协作中吃过亏——有次同事的代码在我机器上跑不起来,查了半天发现是依赖版本不一致。从那以后,每个项目我都保留requirements.txt。
3.7 本章知识体系
下面这张图,帮你理清整个环境准备的流程:
3.8 避坑指南
最后,分享几个我踩过的坑:
- pip版本太旧:装库前先升级pip,
pip install --upgrade pip。旧版pip有时候解析依赖会出错。 - 不要用sudo pip:在Linux/macOS上,千万别用
sudo pip install。这会污染系统环境,而且权限问题很烦。用虚拟环境就没这烦恼。 - 网络问题:如果你在国内,直接pip可能很慢。加个镜像源:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 包名。 - Python版本:我建议用Python 3.9或3.10。3.11以上有些库还没完全适配,3.8以下又太老。3.9是个稳妥的选择。
好了,环境准备就到这里。记住,基础打牢了,后面写代码才顺手。你想想看,如果连环境都搞不定,还谈什么量化交易?
公众号:蓝海资料掘金营,微信deep3321