以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 金字塔软件问题提交 (http://222.73.7.161/bbs/list.asp?boardid=2) ---- [求助]为什么同一策略加载在不同周期会有不同的交易? (http://222.73.7.161/bbs/dispbbs.asp?boardid=2&id=156241) |
-- 作者:mikewhq -- 发布时间:2017/7/25 21:27:32 -- [求助]为什么同一策略加载在不同周期会有不同的交易? 近来试验发现,同一策略,加载在不同周期图表上,会有很不同的交易动作,但我的策略中的参数通过跨周期调用本已定死于某些周期的参数,我加载在不同周期本以为纯属于执行频率不同而已,但实际上不是这样,为什么会这样呢?而且本来参数选择是日线及时线的,为了加快执行频率才加载在1分钟线的图上,但结果根本不是按设想的方案下单,与设计思路大相径庭,怎么弄才能解决这个问题呢? |
-- 作者:FireScript -- 发布时间:2017/7/26 8:35:41 -- 策略在不同周期下运行肯定动作不一样,最基本的K线量都不一样。不同周期,根本不是执行频率差异,是完全不同的策略方式了。而且不同周期,你是依据什么判断他们执行的交易动作‘’一致‘’或‘’不一致‘’? |
-- 作者:mikewhq -- 发布时间:2017/7/26 9:32:36 -- 我的策略中的参数通过跨周期调用已定死于某些周期的参数,这本应该不受加载周期指标的影响了的,只是由于图表程序无法执行固定轮询才寄希望加载于短周期的逐K下以加快在不同价位下的加减仓。至于如何知道不同周期会执行不同的策略,是因为在某些价位上我大概知道策略应该执行的仓位是多少,但实际上却是大相径庭。 |
-- 作者:FireScript -- 发布时间:2017/7/26 9:44:59 -- 1.固定轮询图表也可以用的啊。 2.不考虑1. 只要你代码中的某些判断条件或者使用的数据收到周期影响就会不一样。跨指标引用可以忽略周期问题,但是别的数据呢?以及趋势判断呢? 最好贴点代码,也方便我指出某些关键点出来。这种不同周期的差异,目前没有很好的方法可以平衡。 |
-- 作者:mikewhq -- 发布时间:2017/7/26 10:16:04 -- 你好,图表可以用固定轮循吗,怎么用呢?如下图片我这样启动,但实际没见到 此主题相关图片如下:qq图片20170726101314.png 执行哦。 |
-- 作者:FireScript -- 发布时间:2017/7/26 10:24:07 -- 以下是引用mikewhq在2017/7/26 10:16:04的发言:
你好,图表可以用固定轮循吗,怎么用呢?如下图片我这样启动,但实际没见到 此主题相关图片如下:qq图片20170726101314.png 执行哦。 就是那个固定时间间隔模式,下面的那个时间选项可以自定义的轮询时间间隔的。后面有个模式说明和建议,你可以进去看下。 你可以调整那个时间间隔的来加快信号检测的频率,这个模式选择对信号的产生是不干扰的,这个模式只是筛选方式。你没这边没交易可能是就是没触发信号之类的,模式本身是不影响信号产生的。 [此贴子已经被作者于2017/7/26 10:28:47编辑过]
|
-- 作者:mikewhq -- 发布时间:2017/7/26 10:35:41 -- 固定时间间隔这个我启动了,但是毫无下单动作的,策略是应该有很多下单动作才对的,感觉不起作用哦;你说的那个模式说明和建议我点击进去,但也是毫无反应,根本就无法看到,我现在用的是4.22免费版(毕竟现在要学习与试验策略呀),不知道跟这个有没关系呢? |
-- 作者:FireScript -- 发布时间:2017/7/26 10:48:09 -- 以下是引用mikewhq在2017/7/26 10:35:41的发言:
固定时间间隔这个我启动了,但是毫无下单动作的,策略是应该有很多下单动作才对的,感觉不起作用哦;你说的那个模式说明和建议我点击进去,但也是毫无反应,根本就无法看到,我现在用的是4.22免费版(毕竟现在要学习与试验策略呀),不知道跟这个有没关系呢? 不会的,这个和免费版没关系的。你是不是没连接行情啊。。。 那个链接在这里:http://www.weistock.com/bbs/dispbbs.asp?boardid=4&Id=5224 . 还有就是你直接对照图表上信号看下。 |
-- 作者:mikewhq -- 发布时间:2017/7/26 11:51:18 -- 我的代码如下,烦帮看下有没毛病吧,固定轮询好象没动作,逐K才有动作,1分钟周期运行时系统似乎不按策略执行,总是满仓操作,不知为何: M1:=(STKINDI(\'\',\'MACD.MACD1\',0,6,-1)-STKINDI(\'\',\'MACD.MACD1\',0,6,-2))/ABS(STKINDI(\'\',\'MACD.MACD1\',0,6,-1)-STKINDI(\'\',\'MACD.MACD1\',0,6,-2));//日周期方向参数1 M2:=STKINDI(\'\',\'MACD.MACD1\',0,6,-1)/ABS(STKINDI(\'\',\'MACD.MACD1\',0,6,-1)); //日周期方向参数2 M3:=(STKINDI(\'\',\'MACD.MACD1\',0,5,-1)-STKINDI(\'\',\'MACD.MACD1\',0,5,-2))/ABS(STKINDI(\'\',\'MACD.MACD1\',0,5,-1)-STKINDI(\'\',\'MACD.MACD1\',0,5,-2));//小时周期方向参数3 M4:=STKINDI(\'\',\'MACD.MACD1\',0,6,-1)/ABS(STKINDI(\'\',\'MACD.MACD1\',0,6,-1)); //小时周期方向参数4 P:=HOLDING; //交易系统持仓量 N:=10; //总资产分投几个品种 S:=10; //每手几吨 T:=1000; //当前净自有资产(W) UL:=4; //最多 DL:=M1+M2+M3+M4; //实际 R1:=(2*DL)/UL; //仓位系数 R2:=IFELSE(ABS(R1)>=1,R1/ABS(R1),R1); //调节参数 RS:=T*10000*5*R2/N; //合理仓位 RSS:=ROUND(RS/(C*S)); //合理手数,四舍五入 IF (RSS>0 AND P<=0) THEN BEGIN SELLSHORT(1,0,MARKET); END IF (RSS<0 AND P>=0) THEN BEGIN SELL(1,0,MARKET); //清理方向与合理持仓相反的持仓 END TS:=RSS-P; //调整手数 IF (TS>=0 AND P>=0) THEN BEGIN BUY(1,TS, MARKET); //调整持仓 END IF (TS>=0 AND P<0 AND TS<=ABS(P)) THEN BEGIN SELLSHORT(1,TS,MARKET); END IF (TS>=0 AND P<0 AND TS>ABS(P)) THEN BEGIN SELLSHORT(1,ABS(P),MARKET); BUY(1,(TS-ABS(P)), MARKET); END IF (TS<0 AND P>0 AND ABS(TS)<=P) THEN BEGIN SELL(1,ABS(TS),MARKET); //调整持仓 END IF (TS<0 AND P>0 AND ABS(TS)>P) THEN BEGIN SELL(1,P,MARKET); BUYSHORT(1,(ABS(TS)-P),MARKET); END IF (TS<0 AND P<=0) THEN BEGIN BUYSHORT(1,ABS(TS),MARKET); END |