查看: 2203|回复: 32
打印 上一主题 下一主题

程序化滑点评估

[复制链接]
跳转到指定楼层
1
发表于 2015-4-25 17:56:57 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
本帖最后由 sadrick 于 2015-4-25 17:59 编辑

滑点也是分为有利和不利的,对于自己熟悉的模型 和熟悉的品种滑点是对自己的影响如何是比较清楚的  ,比如我自己熟悉股指期,我自己是能经常赚到有利滑点的  ,但对于一个不熟悉的品种  ,我怎么评估呢 ,比如我对橡胶不熟悉,是用小资金尝试一段时间吗 ,我介绍一个我自己尝试的方法 ;


一般人的程式模型都是基于图表的信号,以MC和文华为例,同时分为收盘价模型(K线结束发信号,下一k开盘发委托) 和 基于每一tick数据计算信号,出信号就发委托。我个人比较偏向于使用基于tick数据计算信号的 ,因为细致到每一笔来计算信号,个人经验觉得对于收盘价模型会细腻很多 (特别是短线)。上述两个软件收盘价模型稍微修改就可变成基于tick数据的模型。


    基于tick的模型回测也是运用历史tick数据来回测,其机制是某一tick达到条件即以该价成交,同理回测的精度比收盘价模型高很多,但就算是这样 ,我们似乎还忽略了一点,实盘中,促使你发委托的这一tick其实也是过去历史,成交价位到底如何还是不知道,而回测又只能将这一tick等价为成交,这些软件里面有对滑点的敏感性测试,但都是不利滑点,而往往这样会低估某些模型的绩效,面对这个问题,自己想了几天后,其实有个很简单的办法,就是在你回测时模型里加上当成交后下一TICK再发一次委托,也就是当你持仓大于零时,下一tick再成交一次。我们模拟一下实盘流程,当你资金量不是很大的时候,上一tick发委托(市价或超价),下一tick就能成交,中间就是网络反应时间,这个时间对于一般的网络都是可以应付的;回到回测,这样回测出来的结果再减去原始的模型的结果  就是剩下完整的全一下一tick成交的结果,这样就将有利和不利的滑点考虑进去。我自己用这个方法回测了一下股指和外盘 和我实际的成交偏差在10%以内。下面是刚刚回测我重来没有做过的橡胶,自有夜盘以来到3.15号的数据  原始不修改的模型回测结果是一手纯利6300  两tick一起回测是两手纯利 13600  ,两者一减,若实盘我评估每手利润有7000 ,再减去误差10% ,也就是大约6300左右   其实和我没测前的预期差不多
file:///c:/users/administrator.user-20150228tq/appdata/roaming/360se6/User Data/temp/forum_mod=image&aid=96259&size=300x300&key=09592ecb8535d1b1&nocache=yes&type=fix.png


希望这个小改动对大家有帮助







33
 楼主| 发表于 2015-8-23 11:21:55 | 只看该作者
sadrick 发表于 2015-4-27 22:21
其实不是问题复杂  而是你不熟悉新的软件的机制   要系统的学学并且知道它的原理 用一些简单模型来做做回 ...

gator Hotfile Keep2share Ryushare Filepost Lumfile Bitshare Filefactory Extabit Netload Uploaded.to Ul.to Ctdisk 等主流网盘会员直接高速下载!Ctdisk城通网盘/Dbank华为网盘完全免费!http://wishuhappy.com/ [@ECBzff4NoCNuG0moBy5+gQ==]
回复 支持 反对

使用道具 举报

32
发表于 2015-4-27 22:34:13 | 只看该作者
sadrick 发表于 2015-4-27 22:21
其实不是问题复杂  而是你不熟悉新的软件的机制   要系统的学学并且知道它的原理 用一些简单模型来做做回 ...

确实需要系统的梳理。
回复 支持 反对

使用道具 举报

31
 楼主| 发表于 2015-4-27 22:21:07 | 只看该作者
招财葫芦 发表于 2015-4-27 20:45
sadrick是怎么解决这个问题?

其实不是问题复杂  而是你不熟悉新的软件的机制   要系统的学学并且知道它的原理 用一些简单模型来做做回测才知道 不然大脑会很乱的  反正金字塔我不知道怎么用 你要问楼上那位    文华的和Mc可以解答  不过我建议你先学文华的吧  
回复 支持 反对

使用道具 举报

30
发表于 2015-4-27 20:45:17 | 只看该作者
sadrick是怎么解决这个问题?
回复 支持 反对

使用道具 举报

29
发表于 2015-4-27 20:11:01 | 只看该作者
本帖最后由 招财葫芦 于 2015-4-27 20:12 编辑
1066313592 发表于 2015-4-27 18:34
上面模型是同一颗k线开仓和止损,提前下单看下面函数解释

CHECKSIG_SEC是复盘专用?我说的提前发委托单是指突破类策略,比如达到前20根高点就做多,这个做多的价格提前就知道了,那么怎么提前在这个价格挂多单?是不是只能用H>=HV(H,20)来作为触发信号?
回复 支持 反对

使用道具 举报

28
发表于 2015-4-27 18:34:07 | 只看该作者
本帖最后由 1066313592 于 2015-4-27 18:35 编辑
招财葫芦 发表于 2015-4-27 17:53
ST:=ABS(C-O);
ST>MA(ST,20)&&C>O,BK; //这里BK用的是对价吗?怎么体现出提前发委托单的?
ST>MA(ST,20 ...
上面模型是同一颗k线开仓和止损,提前下单看下面函数解释

回复 支持 反对

使用道具 举报

27
发表于 2015-4-27 17:57:42 | 只看该作者
sadrick 发表于 2015-4-26 21:33
就一般的k线周期可以这样做吗   。。你自己操作过这样的回测过程没有 ,,实践过就可以向那些使用金字塔 ...

       sadrick你们说的对于我有点深奥,我的短线回测是用限价回测,然后开平各加2个滑点,如果还是向上的曲线,就直接实盘了。实盘的时候商品期货平均是没有那么多滑点的,我的单量很小,基本不考虑成交量。
      日线级别,没有考虑过滑点影响。
回复 支持 反对

使用道具 举报

26
发表于 2015-4-27 17:53:25 | 只看该作者
1066313592 发表于 2015-4-26 19:09
加入 MULTSIG 函数,实现在同一根 k 线上开仓后及时止损;文化软件
ST:=ABS(C-O);
ST>MA(ST,20)&&C>O,B ...

ST:=ABS(C-O);
ST>MA(ST,20)&&C>O,BK; //这里BK用的是对价吗?怎么体现出提前发委托单的?
ST>MA(ST,20)&&C<O,SK;
C>HV(C,3),BP;
C<LV(C,3),SP;
(H-C)>(H-O)*0.2,SP;
(C-L)>(O-L)*0.2,BP;
MULTSIG_MIN(0,0,2);
AUTOFILTER;

回复 支持 反对

使用道具 举报

25
 楼主| 发表于 2015-4-26 21:33:12 | 只看该作者
1066313592 发表于 2015-4-26 18:35
变通用1笔数据生成的k线,不就可以了吗?

就一般的k线周期可以这样做吗   。。你自己操作过这样的回测过程没有 ,,实践过就可以向那些使用金字塔的战友们科普一下具体过程  比如楼上的招财兄
回复 支持 反对

使用道具 举报

24
发表于 2015-4-26 19:20:34 | 只看该作者
1066313592 发表于 2015-4-26 19:09
加入 MULTSIG 函数,实现在同一根 k 线上开仓后及时止损;文化软件
ST:=ABS(C-O);
ST>MA(ST,20)&&C>O,B ...

谢谢,我去研究研究。
回复 支持 反对

使用道具 举报

23
发表于 2015-4-26 19:09:32 | 只看该作者
本帖最后由 1066313592 于 2015-4-26 19:15 编辑
招财葫芦 发表于 2015-4-26 19:00
劳驾能否用文华或者金字塔举个实例?
我的编程水平处于复制粘贴阶段,不知如何做起

加入 MULTSIG 函数,实现在同一根 k 线上开仓后及时止损;文化软件
ST:=ABS(C-O);
ST>MA(ST,20)&&C>O,BK;
ST>MA(ST,20)&&C<O,SK;
C>HV(C,3),BP;
C<LV(C,3),SP;
(H-C)>(H-O)*0.2,SP;
(C-L)>(O-L)*0.2,BP;
MULTSIG_MIN(0,0,2);
AUTOFILTER;

建议你去下载看看”程序化交易高级编程“教程,文化网站有;
回复 支持 反对

使用道具 举报

22
发表于 2015-4-26 19:00:55 | 只看该作者
1066313592 发表于 2015-4-26 18:33
要从编程模式去思考,任何平台都可以提前发委托单的;

劳驾能否用文华或者金字塔举个实例?
我的编程水平处于复制粘贴阶段,不知如何做起{:soso_e106:}
回复 支持 反对

使用道具 举报

21
 楼主| 发表于 2015-4-26 18:36:22 | 只看该作者
好吧  我也说几句:    你只闻到我的香水 却没看到我的汗水 你有你的规则 我有我的选择 你否定我现在 我决定我的将来 你嘲笑我一无所有 不配去爱 我可怜你总是等待 你可以轻视我们的年轻 我们证明这是谁的时代 梦想是注定孤独的旅行 路上少不了质疑和嘲笑 但那又怎样 哪怕遍体鳞伤 也要活的漂亮!{:soso_e113:}
回复 支持 反对

使用道具 举报

20
发表于 2015-4-26 18:35:41 | 只看该作者
sadrick 发表于 2015-4-26 18:29
现在金字塔可以基于tick回测吗

变通用1笔数据生成的k线,不就可以了吗?
回复 支持 反对

使用道具 举报

19
发表于 2015-4-26 18:33:28 | 只看该作者
招财葫芦 发表于 2015-4-26 12:38
请教哪一个平台的程序化可以提前发委托单?

要从编程模式去思考,任何平台都可以提前发委托单的;
回复 支持 反对

使用道具 举报

18
 楼主| 发表于 2015-4-26 18:33:14 | 只看该作者
其实上面的下载文件才是好东西  ,,我简直如获至宝,,都是函数说明,内容很丰富的, 可是没人下载啊。。。。。看来论坛心灵鸡汤类的内容更受欢迎
回复 支持 反对

使用道具 举报

17
 楼主| 发表于 2015-4-26 18:29:13 | 只看该作者
1066313592 发表于 2015-4-26 18:27
文化软件可以用:MULTSIG 函数解决;
函数用法:
MULTSIG(Sec1,Sec2,N,INTERVAL):设置信号复核确认方 ...

现在金字塔可以基于tick回测吗
回复 支持 反对

使用道具 举报

16
 楼主| 发表于 2015-4-26 18:27:11 | 只看该作者

你用什么方法测试股指   你的模型是那种类型的
回复 支持 反对

使用道具 举报

15
发表于 2015-4-26 18:27:04 | 只看该作者
sadrick 发表于 2015-4-26 12:45
和7楼的大侠讲的差不多...  但其实收盘价模型稍作修改就可以变成基于tick的模型 ,文华的就要增加一些函 ...

文化软件可以用:MULTSIG 函数解决;
函数用法:
MULTSIG(Sec1,Sec2,N,INTERVAL):设置信号复核确认方式,开仓信号出信号 Sec1 秒下单不复核,
平仓信号出信号 Sec2 秒下单不复核,一根 K 线上最大的信号个数为 N,INTERVAL 为数据时间间隔。



金字塔软件可以用:
ALLOWREPEAT;解决




函数用法:
表示是否允许指令在同一个周期内反复发出信号


例如:
TBUY(COND,1,MKT),ALLOWREPEAT;
表示满足条件后市价开仓,并允许在固定预警周期内反复开仓.


具体问题是,根据自己的条件需要,解决过滤问题就可以了;


回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册入住  

本版积分规则

易家网  ©2015-2023  郑州期米信息技术有限公司版权所有  豫公网安备 41010502005136号 豫ICP备16010300号