期权的高频交易回测平台怎么编写?

论坛 期权论坛 期权     
葡萄皮   2018-10-14 17:14   5556   8
最近老板让用python编写一个期权的高频交易的回测平台,我之前就只用过Quantopian写过一些简单的交易模型,我也没直接编过回测平台,我知道zipline可以写回测平台,但针对高频情况下的做市商期权策略,如果编写回测平台?有没有什么已有的框架,或者包,如果自己开发需要注意什么,求大神指点一下,谢谢
分享到 :
0 人收藏

8 个回复

倒序浏览
2#
刘磊  4级常客 | 2018-10-14 17:14:36
高频的回测算是核心技术了。总要用到些关于延迟和报单队列的假设,这些多半是需要实盘数据来拟合的。所以并不仅仅是个技术问题。
3#
用Python的交易员  4级常客 | 2018-10-14 17:14:38
泻药,直接说观点:我觉得你一个人不可能做出来。

难点:
1. 全市场期权历史tick行情数据,还要基于本地时间戳做了所有的合约对其的,本地实际收到TICK的时间戳,而不是交易所行情里自带的时间戳,这数据你除非自己收集本买不到

2. 回测框架肯定是没有,对于期权做市这种存在大量持仓组合的高频交易,据我所知能做到非常精准回测(接近实盘)的只有欧美比较顶尖的MM(KCG、Citadel等),国内我身边还没听说过能跑这种回测的

3. 期权做市的核心并不依赖于回测,而是依赖于定价模型、风险管理和交易员的经验(波动率),你老板上来就让你先跑回测我,估计压根就不懂期权做市,估计只能瞎指挥和帮倒忙

综上得出开头的结论。
4#
babyquant  5级知名 | 2018-10-14 17:14:39
挂单排队估计,有一些trick,但我不告诉你
5#
shawnwhat  1级新秀 | 2018-10-14 17:14:40
先说一句,你的老板是比知乎好很多的资源池。所以,可以先谢国家,但一定要先问老板!实现思路方面:主要看你的需求吧。首先,看完题目,我的感觉是你老板要的只是一个简单的策略回测系统。毕竟你说你没直接编过回测平台,而且你老板让你用python写(这里并没有黑python的意思,只是,如果你们要的真的是那种严肃的模拟配对引擎和那种尽量贴近真实交易所的(利润)回测平台,有比较大的概率python并不是首选。)如果你们确确实实倒是要一个能够可靠测试策略赚多少钱的利润回测系统,那么请参见Steve Zhou的回答,他提到的一些想法和陷阱都要实现;一切都要逼真。大多用python写的回测系统,主要是为了实现“回测系统”的定义。根据定义,“Backtesting is the process of applying a trading strategy or analytical method to historical data to see how accurately the strategy or method would have predicted actual results.” --- Quoting from http://InvestingAnswers.com这种定义你到处可以找到,我想说的是,这种回测系统的主要目标是快速且(不可避免地)粗略地验证一个策略的结果(不是赚不赚钱!)。这也是为什么大家都在说,你这策略回测好不代表能赚钱。既然是验证概念,主要手段自然就是模拟。等你慢悠悠搭好一个逼真环境,有效的策略可能也无效了。说到模拟,我的意思是,除了策略的代码和数据,其他全部都用模拟的。真实的证交所配对引擎的队列/延迟/你自己的订单对市场的影响,这种东西统统忽略。具体来说,比如延迟,就抽象化为一个数字。整个系统也是很简单地一边把数据播放,一边策略在跑,跑出来的结果主要看:1,策略的实现是不是基本正确?有没有产生订单?是不是在恰当的时机产生的?2,策略的结果跟市场走向是不是趋于一致?不一致的话有多少偏离?多少情况下是有偏离的?分别是什么情况?(那怎样量化偏离?有人会引入Pnl,所以才会说,看,我这策略回测很挣钱)。但是这种回测下,Pnl只是一个度量,跟赚不赚钱基本无关。倒是更像严肃一些的test case,帮助你开发策略代码。原则上一个线程就可以搞定。技术方面:感觉你没有做基本的调研。随便google一下你就可以看到别人推荐很多,bybacktest,pyalgotrade等等。这种framework基本都不会跟你逼真定制证交所的配对引擎/队列/延迟等等。大都是模拟的。所以从你在选用framework这个角度说,我没猜错你老板的需求是一个简单的策略回测系统吧?数据方面:用python的交易员 已经讲的很好了。不再废话。
6#
aswd  2级吧友 | 2018-10-14 17:14:41
没见过国外的数据,刚做了一个深圳股票的tick data sim,感觉还是蛮简单。成交和撤单都是有编号(有序)的无需假设,报撤单速度可以假设自己天下第一(事实上也基本没有竞争),唯一模拟不了就是自己的订单对市场的影响(但我认为sim确实干不了这事),做一些简单的假设,总体来说还是可以逼近实盘。snapshot (国内的期货期权)的sim只做ioc订单也可以很准,做限价单sim需要一个排队成交概率模型(做不到每笔都准但可以从大样本逼近),也谈不上高深。
关键还是怎么用这些轮子。
7#
匿名用户   | 2018-10-14 17:14:42
提示: 作者被禁止或删除 内容自动屏蔽
8#
YYallday  3级会员 | 2018-10-14 17:14:43
你有啥数据啊。。。要是quotation和transaction都有的话不是分分钟写一个么,quotation做hard limit,transaction做些补充嘛。。。当然,出行情的时候,可能有点变化
9#
pobo  3级会员 | 2018-10-14 17:14:44
可以试试
澎博量化研究平台
登录quant.pobo.net.cn

目前还在测试阶段
似乎支持期权以及tick级别的回测
注册时 使用 邀请码 814685


可供参考
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:
帖子:
精华:
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP