程序化交易中遇见滑点,是以一个接近的价格执行下去,还是就不执行程序了?
还有,如果执行下去了,比如开仓价,系统记录的开仓价是我发出命令时的价格,还是实际(滑点后)的成交价格?...
还有,如果执行下去了,比如开仓价,系统记录的开仓价是我发出命令时的价格,还是实际(滑点后)的成交价格?
展开
1个回答
展开全部
你的两个问题看似简单,但是回答起来有点麻烦,因为你有点混淆了模拟数据测试和实盘的两种不同情况。
---------------------------------
先回答你的第一个问题:
滑点的产生是和你程序下单的方式有关的。举个例子,现在买价1000,卖价1001,你通过程序化下单。假设你下单的时候,是以涨停跌停价的方式下单,那么,滑点就完全取决于价格波动速度的快慢,但是因为你是以涨停跌停价下的单,所以你基本肯定会成交(排除正好是涨停跌停),这个时候的滑点,就只能说是取决于下单时候的波动了,上面这个例子,你可能成交在1050,或者9950,基本不可预知。
还有种情况,假设你是以定价下单,比如上面这个例子,你指定下单在999买进,那么,你要么就无法成交,要么就正好没滑价。
我是在用TB做程序化,它的下单方式,就以上面两种情况为主。
上面说的是实盘。
在历史数据回测的时候,情况就完全不同了。软件产生的滑价,总是偏向于有利于成交的方向进行的,这句话有点难理解,这里篇幅难以描述,你可以仔细分析软件里的成交情况。
这个可以说是软件的某种bug,所以历史回测和实战往往会产生相当大的差别。
------------------------------
再回答你的第二个问题:
就实盘而言,系统只会记录你成交的价格。
就软件历史数据回测而言,系统只会记录有利于成交价格的价格。
还是有点难以理解的话,这个是必须仔细看软件回测的成交机制了。这里实在难以详细说明。
---------------------------------
先回答你的第一个问题:
滑点的产生是和你程序下单的方式有关的。举个例子,现在买价1000,卖价1001,你通过程序化下单。假设你下单的时候,是以涨停跌停价的方式下单,那么,滑点就完全取决于价格波动速度的快慢,但是因为你是以涨停跌停价下的单,所以你基本肯定会成交(排除正好是涨停跌停),这个时候的滑点,就只能说是取决于下单时候的波动了,上面这个例子,你可能成交在1050,或者9950,基本不可预知。
还有种情况,假设你是以定价下单,比如上面这个例子,你指定下单在999买进,那么,你要么就无法成交,要么就正好没滑价。
我是在用TB做程序化,它的下单方式,就以上面两种情况为主。
上面说的是实盘。
在历史数据回测的时候,情况就完全不同了。软件产生的滑价,总是偏向于有利于成交的方向进行的,这句话有点难理解,这里篇幅难以描述,你可以仔细分析软件里的成交情况。
这个可以说是软件的某种bug,所以历史回测和实战往往会产生相当大的差别。
------------------------------
再回答你的第二个问题:
就实盘而言,系统只会记录你成交的价格。
就软件历史数据回测而言,系统只会记录有利于成交价格的价格。
还是有点难以理解的话,这个是必须仔细看软件回测的成交机制了。这里实在难以详细说明。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询