第2章:Python量化环境搭建

说实话,做量化交易这么多年,我见过太多人一上来就急着写策略。结果呢?环境没配好,装个库报错半天,数据源连不上,白白浪费一整天。嗯,这章我们就踏踏实实把地基打牢。

2.1 Anaconda与Jupyter Notebook安装

我个人习惯用Anaconda来管理Python环境。为什么?因为它把Python解释器、常用库、还有Jupyter Notebook都打包好了。你不需要一个个去装,省心。

核心要点:Anaconda = Python + 常用科学计算库 + 包管理器(conda) + Jupyter

安装步骤其实很简单:

  1. 去Anaconda官网下载对应系统的安装包(Windows/Mac/Linux)
  2. 双击安装,一路默认就行
  3. 安装完成后,打开终端或Anaconda Prompt,输入 conda list 验证

我曾经帮一个学员排查问题,他装完Anaconda后死活打不开Jupyter。最后发现是安装路径有中文。嗯,这里要注意:安装路径不要有中文和空格,这是老生常谈的坑了。

Jupyter Notebook怎么启动?很简单:

# 在终端输入
jupyter notebook

浏览器会自动弹出来。你想想看,一个网页里能写代码、能跑结果、还能加注释,是不是比黑乎乎的终端舒服多了?

小技巧:我习惯在项目根目录下启动Jupyter,这样文件管理更清晰。另外,Jupyter Lab是Notebook的升级版,界面更现代化,推荐试试。

2.2 必备库安装与验证

做量化,有几个库是绕不开的。说白了,它们就是你的工具箱。我们来一个一个装。

2.2.1 Pandas 和 NumPy

这两个是数据处理的基石。NumPy管数值计算,Pandas管表格数据。我每天跟它们打交道,就像吃饭喝水一样自然。

# 用conda安装(推荐)
conda install pandas numpy

# 或者用pip
pip install pandas numpy

验证一下:

import pandas as pd
import numpy as np

print(pd.__version__)  # 比如 2.0.3
print(np.__version__)  # 比如 1.24.3

2.2.2 Scikit-learn

机器学习的瑞士军刀。分类、回归、聚类、特征工程,它都有。我在做因子筛选时经常用它。

conda install scikit-learn

# 验证
from sklearn import datasets
print(sklearn.__version__)

2.2.3 XGBoost 和 LightGBM

这两个是集成学习的王牌。XGBoost老牌劲旅,LightGBM后起之秀。我个人习惯两个都装,哪个好用用哪个。

注意:XGBoost在Windows上安装有时会报错。我曾经遇到过编译问题,后来用conda安装就解决了。建议优先用conda。

conda install -c conda-forge xgboost lightgbm

# 验证
import xgboost as xgb
import lightgbm as lgb
print(xgb.__version__)
print(lgb.__version__)

为什么强调验证?因为装完不等于能用。我见过太多人装完库,import时报错,然后一脸懵。所以养成习惯:装一个,验一个

2.3 数据源获取简介

做量化,数据是命根子。没有数据,再牛的模型也是空中楼阁。国内常用的数据源有两个:Tushare和AKShare。

2.3.1 Tushare

Tushare是老牌的数据接口,数据质量高,但部分功能需要积分。我个人习惯用它来获取日线数据和财务数据。

# 安装
pip install tushare

# 使用示例
import tushare as ts

# 需要token(在官网注册获取)
ts.set_token('你的token')
pro = ts.pro_api()

# 获取平安银行日线数据
df = pro.daily(ts_code='000001.SZ', start_date='20230101', end_date='20231231')
print(df.head())

避坑指南:我曾经因为token过期,跑了一整夜的策略结果全是空数据。建议把token写在配置文件里,定期检查。

2.3.2 AKShare

AKShare是后起之秀,完全免费,数据源覆盖广。从股票、基金到期货、宏观经济,应有尽有。我最近越来越喜欢用它。

# 安装
pip install akshare

# 使用示例
import akshare as ak

# 获取A股实时行情
df = ak.stock_zh_a_spot_em()
print(df.head())

你想想看,一个免费接口能拿到这么多数据,是不是很香?但要注意,免费意味着稳定性可能不如付费接口。所以我的建议是:开发阶段用AKShare,生产环境用Tushare或付费数据源

2.4 本章知识体系

为了让你更直观地理解本章内容,我画了一张图:

Python量化环境搭建知识体系 量化环境搭建 Anaconda + Jupyter 必备库安装与验证 数据源获取 安装配置 Jupyter启动 Pandas/NumPy Scikit-learn XGBoost/LightGBM Tushare AKShare 环境搭建是量化研究的基础 装一个,验一个,避免踩坑

这张图把本章的核心内容串起来了。你从中心往外看,先装Anaconda和Jupyter,再装必备库,最后搞定数据源。每一步都有坑,但按我说的来,基本不会出问题。

最后说一句:环境搭建这事,看着简单,但真出问题能卡你半天。我建议你装完每一步都验证一下,别等到写策略了才发现库没装对。磨刀不误砍柴工,对吧?


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