|
我是自己写策略、自己跑回测、自己接实盘的量化玩家。中间换过框架,推翻过架构,数据源也迁移过几次。钱没少花,服务器也烧过不少。策略起起伏伏的,有阶段性顺风,也有连续回撤。 分享一些工具,都是我自己用过,或者现在还在用的 GitHub 项目,优缺点都会说。 一、数据获取很多人一上来就研究策略,其实数据层才是地基。我早期就踩过坑:数据源不稳定,回测和实盘对不上。 1️⃣ AkShareGitHub:
https://github.com/akfamily/akshare 优点: 缺点: 我主要用来做: 不完美,但够用。 2️⃣ TuShareGitHub:
https://github.com/waditu/tushare 优点: 缺点: 做多因子基本绕不开。 3️⃣ yfinanceGitHub:
https://github.com/ranaroussi/yfinance 优点: 缺点: 低频策略完全够用。 4️⃣ AllTickGitHub:
https://github.com/alltick/alltick-realtime-forex-crypto-stock-tick-finance-websocket-api 优点: - 股票、期货、外汇、加密都支持
- 实时 + 历史统一接口
- 多语言 SDK
缺点: 如果是做多资产统一架构,这种标准化行情源会省很多事。 二、回测框架1️⃣ BacktraderGitHub:
https://github.com/mementum/backtrader 优点: 缺点: 现在看可能有点老了,但不影响使用。
中低频策略、CTA 都没问题。 2️⃣ VectorBTGitHub:
https://github.com/polakowo/vectorbt 优点: 缺点: 策略其实很简单,均线、动量、突破这些古老又朴素的方法,用它跑参数很舒服。 3️⃣ vn.pyGitHub:
https://github.com/vnpy/vnpy 优点: 缺点: 长期是能稳定跑的,但短期一定会被接口细节折腾。 4️⃣ QuantConnect LeanGitHub:
https://github.com/QuantConnect/Lean 优点: 缺点: 适合团队或者长期做机构化方向。 三、因子研究与绩效分析AlphalensGitHub:
https://github.com/quantopian/alphalens 功能: 第一次用会觉得复杂,但做多因子很有帮助。 EmpyricalGitHub:
https://github.com/quantopian/empyrical 功能: 我直接把它封成绩效模块。 四、组合优化PyPortfolioOptGitHub:
https://github.com/robertmartin8/PyPortfolioOpt 支持: 长期可以优化风险结构。
短期市场风格一切换,参数假设可能直接失效。我也经历过刚调好权重就集体回撤。
工具本身不会帮你赚钱,它只是把你的逻辑放大。 这些开源项目也并非完美,有些结构不够优雅,有些要自己补坑。但当成一套工程工具箱,挺不错的。 如果只是想试试量化,这套足够从 0 跑到实盘。
如果打算长期做,打磨数据层和执行层,比频繁换框架重要得多。 |