自己的一个小团队, 用python从头到尾搭了一个交易平台, 从数据到回测,到模拟仿真到实盘交易, 折腾了大半年, 基本该填的坑都填上了。 小团队做自动化交易,不容易,跟大家分享一下:
先别想着策略, 先把平台搭好。 最好的平台,还是自己搭的平台。为啥?你自己得对里面的所有细节有把握, 自己做一遍最清楚。 同时未来想扩展, 自己可以改。 人家做的好系统, 一方面是不会给你用的, 另一方面或多或少很多地方是跟你的要求不相符合的。 先可以试试用掘金量化的平台, 有免费版, 不能交易, 可以实盘模拟。 平台做的不错, 能想到的,人家都想到了。 我们玩儿熟了, 然后做了自己的python平台, 很多地方参考了掘金 找一个开源的项目, zipline, algotrader什么的, 作为开发的基础。 原则是, 第一这个项目一定要active, 有人一直在维护, 里面的功能设计要全面, 同时可扩展性强。有一天你要增加新的功能的时候, 就会发现当初选用一个很难扩展的框架是多痛苦。 第二就是性能, 你要用这个系统来做回测, 一定要快快快!!! 一个策略, 从想法诞生, 到测试买入卖出点的合理性, 到你开始样本外的移动测试, 蒙特卡洛模拟, 单就一个策略idea, 你起码测试10-100K次。 如果你要把这个idea不断演化, 回测测试起码再乘上个n倍吧。 如果一次回测超过半分钟, 你自己算算测一个策略要多久吧 。 结果是, 我们自己做了3个回测系统: 初级回测系统基于vectorized的方法, 忽略一些复杂交易要素,极大