以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- 策略测试中,一根K线同时出现开平仓的问题,请教版主 (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=83254) |
-- 作者:rainbowqqm -- 发布时间:2015/8/13 22:35:46 -- 策略测试中,一根K线同时出现开平仓的问题,请教版主 平多条件:从开仓后的最高值回撤5个ATR OR 开仓损失率达到设定值 平空条件:从开仓后的最低值回撤5个ATR OR 开仓损失率达到设定值 代码: 平多条件:=(HHv(c,enterbars+1)-c)>=5*ATR or (enterprice-c)/enterprice>=(最大损失率/1000); 平空条件:=(c-LLv(c,enterbars+1))>=5*ATR or (C-enterprice)/enterpirce>=(最大损失率/1000); //如果当前是没有持仓的状态 IF holding=0 THEN BEGIN
//多头进场
IF 开多条件 THEN BEGIN
BUY(1,1,market);
END
//空头进场
IF 开空条件 THEN BEGIN
BUYSHORT(1,1,market);
END END aa:=ref(平多条件,1); IF holding>0 and aa then begin
SELL(aa,HOLDING,market);
end bb:=ref(平空条件,1); IF holding<0 and bb then begin
SELLshort(bb,HOLDING,market);
end
此代码在图表测试过程中,经常出现开平仓出现在同一根K线上的情况,导致测试结果严重失真,如下图: 请教版主,这代码是哪儿出了问题??!!万分感谢。 |
-- 作者:jinzhe -- 发布时间:2015/8/14 8:54:35 -- 不明白失真在哪里?条件不满足但是有信号?还是不好看就觉得失真了? |
-- 作者:rainbowqqm -- 发布时间:2015/8/14 13:38:38 -- 开仓和平仓在同一根K线上,不是反手的,就是开了就平掉,和止损止盈条件不符,我估计是代码错了,可我换了thisclose,market,nextopen,还是存在这种情况。 |
-- 作者:rainbowqqm -- 发布时间:2015/8/14 13:39:24 -- 开仓是对的,就是不知道怎么刚开就在同一K线上就平了。 |
-- 作者:jinzhe -- 发布时间:2015/8/14 13:49:41 -- 平多条件:=(HHv(c,enterbars+1)-c)>=5*ATR or (enterprice-c)/enterprice>=(最大损失率/1000);
平空条件:=(c-LLv(c,enterbars+1))>=5*ATR or (C-enterprice)/enterpirce>=(最大损失率/1000);
|
-- 作者:rainbowqqm -- 发布时间:2015/8/15 19:45:07 -- 平仓条件调到开仓后也不行,还是存在这问题。版主,请帮忙看看,是不是代码哪儿有逻辑错误? |
-- 作者:wzywzy292 -- 发布时间:2015/8/16 9:28:33 -- aa:=ref(平多条件,1); IF holding>0 and aa and enterbars>0 then begin
SELL(aa,HOLDING,market);
end bb:=ref(平空条件,1); IF holding<0 and bb and enterbars>0 then begin
SELLshort(bb,HOLDING,market);
end
|
-- 作者:jinzhe -- 发布时间:2015/8/17 9:09:03 -- 那么你在平仓条件里面加上enterbars>0 |