StockQuant 是国内开发者专为 A 股市场打造的全流程量化框架,支持从策略开发到回测再到实盘交易全流程,对零编程基础小白十分友好:
- 模板策略拿来就用:
框架内自带双均线、RSRS 选股等策略,复制代码即可运行。
- 数据源自动抓取:
集成 Tushare/AKShare,免费获取股票、基金、期货数据。
- 可视化界面:
Web 端可查看收益曲线,Qt 端能监控实时交易情况。
- 避坑指南:
社区提供中文文档与案例,能解决国内券商接口适配难题。
二、超详细安装步骤(Windows/macOS 通用)
核心原则:采用虚拟环境隔离 + 国内镜像加速,防止依赖冲突!
步骤 1:安装 Python 与 Anaconda(避坑关键)
- Windows 用户:
下载
Anaconda3-2024.02-Windows-x86_64.exe。安装时勾选 “Add Anaconda to PATH”(若未勾选则需手动配置环境变量)。
- macOS 用户:
brew install python@3.9
echo 'export PATH="/usr/local/opt/python@3.9/bin:$PATH"' >> ~/.zshrc
步骤 2:创建虚拟环境(防版本冲突)
conda create -n stockquant python=3.9
conda activate stockquant # 激活环境,提示符变为(stockquant)
步骤 3:一键安装依赖库(国内镜像加速)
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
pip install stockquant pyqt5 pandas numpy
重点问题:TA-Lib 安装失败(Windows 用户必看)
- 手动下载TA_Lib-0.4.24-cp39-cp39-win_amd64.whl。
- 执行:pip install 你的下载路径/TA_Lib-0.4.24-cp39-cp39-win_amd64.whl。1892
步骤 4:配置数据源(Tushare 免费 Token)
- 注册Tushare Pro,获取 API Token。
- 创建config.json文件,内容如下:
{
"LOG": {
"level": "debug",
"handler": "stream"
},
"DINGTALK": "your dingding token", #钉钉token
"TUSHARE": "your tushare token",
"SENDMAIL": {
"from": "xxxx@qq.com",
"password": "your qq email authorization code", # 邮箱授权码
"to": "xxx@qq.com",
"server": "smtp.qq.com",
"port": 587
}
}
路径规则:文件必须放在项目根目录(与代码同级)。3289
步骤 5:运行示例策略(验证安装)
创建文件demo.py,粘贴以下代码:
from stockquant.quant import *
config.loads('config.json')
# 获取茅台股票数据
data = Market.kline('sh600519', 'D', start_date='2024-01-01')
print("最新5日收盘价:\n", data['close'].tail())
# 双均线策略(买入信号:5日线上穿20日线)
data['MA5'] = data['close'].rolling(5).mean()
data['MA20'] = data['close'].rolling(20).mean()
data['Signal'] = np.where(data['MA5'] > data['MA20'], 1, 0)
print("交易信号:\n", data[['date', 'MA5', 'MA20', 'Signal']].tail())
执行命令:
python demo.py # 输出数据且无报错即安装成功!
三、小白常见问题与解决(99% 坑位汇总)
- 错误:No module named ‘PyQt5’
pip uninstall pyqt5
pip install pyqt5==5.15.4 -i https://pypi.tuna.tsinghua.edu.cn/simple # 指定兼容版本
- 数据加载失败(Tushare Token 失效)
- 重新申请 Token,更新config.json。
- 切换 AKShare 数据源:
from stockquant.market import AKShare
data = AKShare.stock_zh_a_daily(symbol="sh600519")
```[32](@ref)
3.策略回测无结果
- 检查数据时间范围是否覆盖策略周期(避开非交易日)。
- 修改代码:print(data.columns)确认字段名是否为open/close(非开盘价/收盘价)
四、下一步学习路径(从零到实盘)
- 修改策略参数:调整均线周期(如 5 日 vs 60 日),观察收益变化。
- 自动化交易:
import easytrader
user = easytrader.use('ths') # 同花顺客户端
user.connect(r'C:\同花顺\xiadan.exe')
user.buy('600519', price=数据['close'].iloc[-1], amount=100) # 最新价买入100股
- 参加社区活动:在 CSDN / 知乎搜索 “StockQuant 实战”,获取策略优化案例。
五、避坑资源推荐
- GitHub 案例库:https://gitee.com/linxinloningg/Stockquant
- 免费回测平台:JoinQuant / 优矿,验证策略有效性。
- 新手书籍:《Python 量化交易实战》《零基础搭建量化交易系统》
提示:安装过程遇到问题,可在评论区留言 “报错截图 + 操作系统版本”,优先解答高频问题!
发布者:股市刺客,转载请注明出处:https://www.95sca.cn/archives/980199
站内所有文章皆来自网络转载或读者投稿,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!