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