歪果仁的量化套餐

以下文章来源于量化岛 ,作者岛主

文章配图 量化岛 . 量化交易者的引航灯和瞭望塔,穿越因子与算法的波涛,驶向更广阔的阿尔法。

前几天,我在墙外瞎逛的时候,在KDnuggets博客上刷到一篇帖子,标题为“10 GitHub Repositories to Master Quant Trading”,内容大概是说推荐了10个GitHub库,帮助大伙儿来入坑量化交易。

原贴链接是:

https://www.kdnuggets.com/10-github-repositories-to-master-quant-trading

因此对于这篇文章我也不希望单纯就是翻译原文,或弄成成“10个GitHub量化项目推荐”这类东西。因为如果咱只推个项目的话,对小伙伴帮助不大。量化萌新真正要的不是又多收藏几个链接,而是知道这些项目分别代表着什么能力,自己应该先学什么后学什么,哪些东西适合入门,哪些东西适合进阶,哪些东西看起来很酷但暂时不应该投入过多时间,哪些东西虽然枯燥却决定了一个量化系统能不能从研究走向实盘。

如果对10个这样的项目重排序,在我看来他们大概能够分为4个层次。

第一层:研究能力 ,解决的是怎么提出、验证、扩展 一个交易的想法;

第二层:投资能力 ,解决的是如何去把单个策略和单个信号转化为能够配置资金的组合;

第三层:工程能力 ,实现如何将策略从Notebook到System、从Backtesting到Trading;

第四层次:成长能力 ,是如何不断学习,不断的积聚,不断的接近Quant神的水平。

这样唠起来比单纯简单按github的顺序更有意义,因为真正的量化交易本来就不是一个指标一段代码还是一个模型,而是研究、投资、工程和成长能力长期加起来的结果。

一、研究能力:从想法到Alpha

量化萌新最容易被策略所吸引,这很正常,因为策略是整个量化交易里最直观直白的部分。但是真正的策略研究能力,从来都不在于看到一条策略就相信它是对的,而是把一个交易想法拆解成清晰的规则,用数据去验证她,怀疑她,改造她,并最终判断她是市场结构中的有效信息还是某段历史行情中偶然幻影。

1.Python Quant Trading Strategies

https://github.com/je-suis-tm/quant-trading

Python Quant Trading Strategies是一个很饱满的量化策略案例库,其中包括CTA,蒙特卡洛模拟,配对交易,模式识别,SAR,MACD等多个策略。这个项目对于萌新而言最大的用处是,不是说随便挑个策略直接可以拿来实盘,而在于将“交易的想法怎么写成代码”给说清楚。

很多量化萌新一开始被卡住的不是不能写出复杂的模型,而是搞不清楚什么样子才是一个有逻辑有意义的策略。数据怎样读?指标怎样的算?信号是怎样生成的?仓位怎样变?收益怎样统计?图表怎样画出来?最后怎么样判断这个策略有没有意义?对萌新而言这些项目的最大意义在于锻炼手感,告诉你「策略不单是一句话,而是一组可以复用的规则」。

它非常适合萌新入门,但是阅读时不要单纯停留在“这里有这么多的策略代码”,而是将其当做“策略研究基本功的打靶场”。

2.Options Trading Strategies in Python

https://github.com/PyPatel/Options-Trading-Strategies-in-Python

Options Trading Strategies in Python这个库主要是为期权交易学习者进行设计的,用技术指标和量化方法做期权的交易。

期权策略对量化萌新来讲一般是会被忽略掉的,这里只是补充说明一下,需者自取。因为很多人都在一开始学习量化的时候,自然而然地就选择了股票/CTA/择时/多因子选股那些,因为这些对于普通投资者来说,是最容易接触到的,更符合他们对于市场的直觉:涨了买,跌了卖。强者恒强,弱者反转。

但期权不一样,核心不只是看方向,还有波动率,时间价值,尾部风险,非线性收益结构。做股票类策略,更多关注的是价格变化,你做期权策略就要理解同样的一个行情,隐含波动率、行权价和期限的不同都可能会带来截然不同的风险收益。

它呢,适合帮萌新打开衍生品研究的大门,并更像是一个期权定价和量化策略的代码入门手册,教会萌新BS模型、VIX恐慌指数等概念怎样跟代码勾搭上的。

3.TradeMaster

https://github.com/TradeMaster-NTU/TradeMaster

TradeMaster的定位更加前沿,它是一个基于强化学习的量化交易平台,它更多代表的是AI的量化研究能力。

以前的量化交易使用机器学习,更多的时候都是在监督学习的范畴里,比方说XGBoost,随机森林,人工神经网络用于预测收益、分类涨跌、股票相对排序等。但是强化学习的想法不同:不只预测下一步的收益,而是在一个市场中不断作出决定、通过奖励函数学会如何交易。

强化学习会把交易过程当做是序列决策问题来处理,并且让模型考虑到状态、动作、奖励、路径以及长期的目标。但是需要注意的是,金融市场不是围棋棋盘,数据不稳定,噪音大,有真实的交易成本,是真金白银,不是单纯的理论假设。

二、投资能力:从单一策略到投资组合

如果说研究能力解决了“有没有Alpha”,那么投资能力就需要解决“这些Alpha应该如何配置。这两件事儿看起来相似,实质相差颇大。

许多人将所有的精力投入在策略收益之上,今天研究一个动量策略,明儿个又搞一个均值回归,后天又增加一个机器学习预测收益模型,每一个单独来看都很不错,一旦拼在一起便开始打架了。这个时候,决定最终战果的就不再是单个策略有多能打抗揍,而是组合管理能力有给力。

4.Riskfolio-Lib

https://github.com/dcajasn/Riskfolio-Lib

Riskfolio- Lib就是这10个github库里最能代表投资能力的仓库,它是投资组合优化工具,因为它不是教你再找一个信号,也不是教你再测一个策略,而是把注意力放到“资产配置、风险预算、约束优化、组合构建”这些方面。

为啥这项能力重要呢?因为真正资金管理从来都不是单个信号的胜利,而是组合层面的胜利,兵熊熊一个,将熊熊一窝。一个信号收益亮眼但回撤太大,未必有价值;一个信号单独来看回报平平,但是与现有组合的相关性很低,反而会非常有价值;一个策略夏普率高但是容量很小,有可能只能作为研究样本;一个策略夏普率中等但容量大、换手少、能跟组合搭伙,反而可以上仓位配置。

这些对于一个机构来说是非常重要的,因为他们管理的不是一条收益曲线,而是众多资金、一系列产品、不同风险预算和客户的风险偏好。

所以投资能力这层的核心是,不教萌新如何尽快掌握所有的优化模型,而让他尽早建立起一个意识,量化交易不是五花八门策略的堆砌,而是将不同来源和周期、不同风险暴露和容量特征的策略收益,组成一个可承受、可解释、可持续的投资组合。

文章配图

三、工程能力:从Notebook到System

研究代码能写到Notebook里去,可以临时手动改几个参数,可以跑完之后再看生成的图片,但是生产系统不行,它要面对实时行情,交易接口,订单回报,账户状态,异常处理,断线重连,日志监控,风控拦截,任务调度,以及一大堆平时没人想看,出事时却能救命的细节。

5.StockSharp

https://github.com/StockSharp/StockSharp

StockSharp是一个可以进行交易机器人开发的量化交易和算法交易的开源平台,目前支持股期汇币等市场。

它与以上所有策略示例库的区别是,它不是告诉你“这个策略该如何编写”,而是告诉你要看到“一般的量化交易系统应该长成啥样子”。真实交易系统不仅是策略,而且要把策略放入一个稳定的接收到行情,产生信号,发出订单,处理回报,记录状态,控制风险的系统中。

你写的on_bar或者handle_data函数并不表示你理解了交易系统,你设置的回测参数,也不代表你能明白订单的状态机制,你可以画出净值曲线,并不代表你理解了实盘异常。

真正进入工程层以后,很多问题都不再是金融问题,而变成了软件工程问题,服务挂掉了怎么办?行情断了怎么办?重复下单怎么办?订单部分成交怎么办?接口限频怎么办?数据库写入失败怎么办?策略状态怎么样恢复?风控规则如何统一管理?

6.Howtrader

https://github.com/51bitquant/howtrader

Howtrader是一个加密货币量化框架,可以用来开发、回测和实盘。支持集成Tradingview和其他第三方信号,支持通过POST请求实现自动交易和下单。

对一个萌新而言,Howtrader的价值不在于带你快速冲进B圈,而在让你明白,实盘不是一个单点动作,而是由一条自动化链路构成的。

Tradingview发出信号,webhook发送请求,框架接收信号,策略模块负责判断,交易接口实盘下单,订单模块反馈更新,持仓模块记录变化,整个过程要能自动稳定、可追踪运行。

7.QuantMuse

https://github.com/0xemmkty/QuantMuse

QuantMuse是一个由多个模块组成的量化交易系统,集AI量化分析,实时数据处理以及风险管理功能于一身。

不少个人Quant喜欢使用Notebook做研究,在入门初期完全是可以的,甚至说是很有效率。但如果一个团队一直做量化,只用NoteBook的话,很快就乱成一锅粥了,数据版本不统一,特征计算不能相互复现,策略参数到处散落各处,实验结果无法追踪记录,回测参数口径不一,模型训练和生产脱节。真正的正经量化研究,需要一个平台把各个流程串联起来,这当中包括数据/特征/因子/策略/回测/评估/监控/展示/执行。

QuantMuse的价值即在于,它使新手看见了「量化系统,而不仅是交易接口,而是一个由数据至研究、研究至执行、再到监控的完整工作流程。对于个人Quant而言,这样的项目也许不一定能够直接“拿来主义”,但还是很适合用来模块拆解和学习的。

四、成长能力:从收藏点赞到无限进步

最后一层,便是成长能力,这层不像是那些个量化策略、资产组合、交易系统那么直观,但它却决定了一个人是不是可以长期进步,量化交易不是学完了就结束了,市场结构会变,交易规则会变,数据源会变,模型范式也会变,唯一的不变就是改变。

8.EliteQuant

https://github.com/EliteQuant/EliteQuant

EliteQuant是一个琳琅满目的知识体系类资源库,这是一个关于量化交易、交易和组合管理的在线资源列表。

这个项目的价值不是给你一段直接可以跑的代码,而是帮助你建立起知识索引,把散布于互联网上的量化干货整合起来。

但是,这类资源库有个很大的Bug,就是容易给人一种"收藏=学习"的错觉,看到就是会了,许多小伙伴点开资源库链接,然后又看到一连串链接扑面而来,惊呼自己发现了宝藏,点了star/收藏/转发,然后就没有然后了。

实际上用EliteQuant的正确方式不是全选,而应该是哪里不会点哪里,例如你刚开始学习,请先看量化交易平台/基础策略/数据源等部分,资源库的价值是帮助你降低搜索成本,而不是帮你看书,以便你可以投入更多的时间精力到内容的吸收上面去。

9.Quant Developers Resources

https://github.com/cybergeekgyan/Quant-Developers-Resources

Quant Developers Resources体现了另一种成长能力,工程素质和职业预备,它主要是为了量化开发工程师Quant Developer,量化研究员Quant Researcher,量化交易员Quant Trader,量化分析师Quant Analyst等量化机构核心岗位准备的资源合集。

在这当中,你会看到,不同量化岗位需要具备的能力是不同的,不是说都需要会挖因子、做回测、搞机器学习那些,其他的也会包括有C++、Linux、网络工程、数据库、分布式系统、系统设计、高性能计算、并行计算等等。

文章配图

10.Sunday Quant Scientist

https://github.com/quant-science/sunday-quant-scientist

Sunday Quant Scientist不是那种传统意义上的代码库,而是一个Newsletter风格的资源库,主要面向量化与算法交易、组合分析和投资研究的从业者, Newsletter你就理解为周报就行了,隔三差五不定期提供新一期的量化干货。

量化学习不仅是读书、写代码、跑回测,还包包括持续阅读、持续观察、持续获得新idea。很多优秀的量化idea不一定出自于哪本教材,而可能是来自于长期不断的信息获取,信息源可以是博客/论文/开源代码/会议资料/行业报告等等,这些都构成了Quant们的“外脑”。

成长能力这一层,表面上不如策略和系统那般刺激,但它决定了长期的差距,一个真正成熟的Quant,不可能只靠某个github库打天下,也不可能只靠某本书治策略,而是需要不断把新的信息、新的工具、新的研究方法吸纳到自己的体系当中。量化不是一次性学习,而是一种长期训练。

写在最后

这10个Github库实质上是一张Quant能力地图,回头看,如果只拿他们当资源合集就没什么太多的价值。收藏只是一个开始,真正的价值是看你能否把那些仓库背后的能力拆解出来,一个一个补上。

这10个库放到一块,正好提醒咱,量化交易不是单点技能,而是能力体系。研究能力能让你产生并验证交易想法,投资能力使你能把信号转化成组合,工程能力能使你将研究转化为真正的交易系统,成长能力能使你不断吸收新知识和适应新市场。

如果你是一个刚打算入门量化的萌新,建议你在具有一定的编程基础后,可以先把PQTS这个策略案例库根据自己交易领域选择性通读一遍,来建立一丢丢基础的策略语感,接着再看Riskfolio- Lib,理解为何只考虑单策略的收益并不代表最终的投资结果,然后接触StockSharp、Howtrader或QuantMuse,理解交易系统、实盘链路和工程平台,如果你想学AI在量化当中的应用,再看TradeMaster,你想长期做量化,那就跟着EliteQuant、Quant Developers Resources、Sunday Quant Scientist这些资源,持续补数学、金融工程、研究习惯和行业视野吧。

量化这条路,最怕的不是起点低,而是永远停留在起点。

最后再唠叨一句,在每个库标题的位置我都放了github链接,复制粘贴进浏览器便可以直达,觉得有用的话,别忘了给开源大神一键三连,但考虑到github可能存在被墙的情况,无法访问时,可以在公众号 『 量化岛 』后台回复关键字【 量化套餐 】,便可以获取到这10个库打包好的完整资料包,下期见~

文章配图


往期回顾

------量化社群------

量化达摩院

量化藏经阁Max

量化藏经阁2026

------量化策略------

桥水全天候策略 风险平价策略

聪明钱 TrendModelSys 张坤策略

RSRS 北向资金 F-Score 鱼身策略

TrendPattern 波动率收敛 RSJ策略

期货Alpha 跨品种套利 GARP策略

MACD形态 导数策略 Trendflex

绩优小市值 漂亮50 操盘手 Rumi

AI择时 K线面积法 零代码策略

贴水策略 概率密度策略 一致预期

RSRS复现1 RSRS复现2 ICU均线

野路子策略 ETF轮动 ETF轮动2

菜场大妈&马科维茨 多赚200%

美债&A股择时 价比斜率套利

黄金价格预测 量化兵器库

十年零回撤 红利策略 数字信号

------心得杂谈------

入门路径 量化书单 量化神作

打开黑箱 量化手册 量化攻略

个人量化 量化误解 高收入背后

西蒙斯 雪球爆仓 量化交易邪术

量化网站1 量化网站2 量化狠人

年化577倍 抄底&摸顶 策略开发

未来函数 回测&过拟合 回测&实盘

Alpha&风险因子 MACD参数

资金流 吃贴水 回测提速 量价背离

自学路径 文章合辑 151个策略

chatGPT选股 量化注册制

5年131倍 量化编程神器

4000因子 因子库 量化神集

量化深坑 老胡炒股 私募上班

机器学习算法Top10 微盘股

量化的一天 失败的Quant

十年8万倍 五穷六绝 一月之殇

_ Tip:点击关键字可以直接查看对应文章。 _

END

如果对本文有疑惑,或是想聊聊

亦或是围观朋友圈当点赞之交

戳我,让我们一路同行

吃瓜吐槽写代码

文章配图 文章配图

— 全文完 —

原文作者:岛主;来源:量化岛。版权归原作者所有。

在微信公众号阅读原文 ↗