程序化交易 - 轻松交易从此开始!
您的位置:主页 > 程序化交易 >

程序化交易中滑点产生的原因

发布时间:2012-09-20 14:36

首先说说什么是滑点。我眼中的滑点就是,你的期望价格与实际成交价格之间的点差。
    可以给出一个滑点的计算公式:滑点=行情tick级别波动速度*网络延迟时间。
    由于行情永远是波动的,所以行情并不是产生滑点的原因。而在历史回测和模拟盘中,由于没有任何网络延迟时间,所以就不会产生滑点(但此时行情波动依然,但是没有滑点),你可以在模拟盘中,对每一张单子设定止盈止损,你会发现,每笔都是按照你期望的价格激发止盈或者止损的。
    按照上述计算公式,行情的波动,你是无法左右的,但是网络延迟时间,却是你可以把控的。一定要清楚,你在你电脑上看到的行情,是重播而不是直播,而程序根据这一行情下发的指令,中间也需要传递的时间,才能生效。所以行情波动速度大以及网络延迟严重,会加大滑点的影响。而这一影响,其实对小周期交易级别甚至会产生颠覆性的结果。
    规避滑点的影响,可以采取以下三条道路:
    1 加大交易级别
    大周期的交易级别,其平均盈利点数和亏损点数必然大于小的交易级别。如果一个大级别的模型是平均盈利50点,平均亏损30点,而小级别是平均盈利5点,平均亏损3点,在历史回测和模拟盘中,两者看不出什么大的区别,都是可以取得稳定盈利的模型,但是实盘中,就会截然不同,前者一定比后者有效的多,因为滑点的尺度,和平均盈亏点数,不在一个数量级。
    2 降低网络延迟
    采取一切办法,寻找连接你交易服务器最快的途径,降低网络延时。
    3 规避特定的行情波动速度快的时间点
    比如我对非农,就采取完全规避的做法,数据公布前15分钟全部清仓。行情的波动速度,你是无法左右的,但是惹不起可以躲得起,非农公布时间,精确到秒,此时不持仓,那滑点再大,对你也毫无影响。
    综上,2和3是对计算公式两个乘数进行调整而降低或者规避滑点,而方法一,其实并不降低滑点,只是使得降低滑点的影响效果,使其不影响你的收益率曲线。
    最后说一点,滑点有的时候还可以增加你的收益,这需要你去理解你开单和平仓的方式,一句话,如果你开单方式是逆tick级别的势,那滑点对你有利,如果你平仓方式是顺tick级别的势,滑点也对你有利,此时,你的网络延迟较大,其实是好事!
    比如回踩方式的下单,还有固定点数的止盈,滑点都是你的朋友。当你有两个以上的交易主机的时候,就需要对所有的下单和平仓进行甄别,如果滑点对你有利,则这些指令放到慢速网络主机上去操作,如果滑点对你不利,则要将这些指令拆分到快速网络主机去操作。
    FeiyangEA开单方面,六成以上都是采取回踩方式,所以我是放到国内慢速网络主机去开单,而所有的平仓,都是滑点不利的方向,所以目前都是由美国快速网络VPS负责平仓操作。
    以上的改进,使得我实盘的成绩,略好于同期历史回测,从而保证了,实盘与回测的高度一致,这是程序化交易的最为重要的前提,否则交易模型的编制和优化,无从谈起。

网站首页 | 关于我们 | 程序化交易 | 交易知识 | 投资经典 | 模型鉴赏 | 代写指标 | 联系我们

全国统一客户服务热线:18865500020
程序化交易交流群:8641958
新浪博客:程序化交易网-官方博客
京ICP备10004064号-4
COPYRIGHT 2008-2018 WWW.ZCXH.COM All RIGHTS RESERVED