[原创]固定轮训模式下优化止损止赢的优化 [金字塔]
- 咨询内容:
INPUT:P1(2,0,50,1){初始止损幅度},P2(5,2,100,1){止盈幅度};
VARIABLE:MAXPROFIT=0,{有仓位时最大获利幅度}VMIN = 090000;{用于隔夜高开或低开时间差}
WIN1:=0;
WIN2:=0;//止盈、止损、回撤控制
//信号模块:该模块主用于多空头及平仓信号的量化
{示例如下:开多:当MA10上穿MA20时,发出买入开仓交易指令; 平空:当MA10
上穿MA5时,发出卖出平仓交易指令;平多:当MA5上穿MA10时,发出买入平仓交
易指令;开空:当MA10下穿MA20时,发出开空交易指令;}
MA5: MA(o,5);
MA10:MA(o,10);
MA20:MA(o,20);
开多:=CROSS(MA10,MA20);
平多:=CROSS(MA5,MA10);
开空:=CROSS(MA20,MA10);
平空:=CROSS(MA10,MA5);
交易时间:=TIME>VMIN AND TIME<151430;
//图表日内交易模块:IF HOLDING=0 THEN BEGIN
//多头开仓
IF 交易时间 AND 开多 THEN BEGIN
BUY(1,1,mkt);
MAXPROFIT:=0;
END
//空头开仓
IF 交易时间 AND 开空 THEN BEGIN
BUYSHORT(1,1,mkt);
MAXPROFIT:=0;
END
END
IF HOLDING>0 THEN BEGIN
//多头平仓
IF 平多 THEN
SELL(1,HOLDING,LIMITR,CLOSE);
//多头收盘平仓IF NOT(交易时间) THEN
SELL(1,HOLDING,LIMITR,CLOSE);
//盈亏计算
IF ENTERBARS>0 THEN begin
WIN1:=(l-ENTERPRICE)/ENTERPRICE*100;
win2:=(h-ENTERPRICE)/ENTERPRICE*100;
end//这样算出来测试的时候虽然是K线走完了的,但是只要知道最高最低到过那里就可以了
//多头初始浮亏 P1% 止损
IF WIN1<-P1 THEN
SELL(1,HOLDING,LIMITR,(ENTERPRICE(1-p1)));
//这样写价格可以吗
//多头利润大于 P2% 止盈
IF WIN2>P2 THEN
SELL(1,HOLDING,LIMITR,(ENTERPRICE(1+p1)));
END
IF HOLDING<0 THEN BEGIN
//空头平仓
IF 平空 THEN
SELLSHORT(1,HOLDING,LIMITR,CLOSE);
//空头收盘平仓
IF NOT(交易时间) THEN
SELLSHORT(1,HOLDING,LIMITR,CLOSE);
//盈亏计算
IF ENTERBARS>0 THEN BEGIN
WIN1:=(ENTERPRICE-h)/ENTERPRICE*100;
WIN2:=(ENTERPRICE-l)/ENTERPRICE*100;
END
//空头初始浮亏超过 P1% 止损
IF WIN1<-P1 THEN
SELLSHORT(1,HOLDING,LIMITR,(ENTERPRICE(1+p1)));
//空头利润大于 P2%止盈
IF WIN1>P2 THEN
SELLSHORT(1,HOLDING,LIMITR,(ENTERPRICE(1-p1)));
END//在固定轮训模式下的测试优化,请仔细看看我的盈亏计算和止损止赢价格,如果不 对请高手指正
- 金字塔客服:
固定轮询,收盘确认信号,止损止盈要盘中下单?
那你的写法不对哦。
要把信号移到下一根的开盘价
- 用户回复:
我用的是MA(O,10);是开盘价,
- 网友回复:
这个只是测试用的,在实际用的时候止损止赢价格用市价比较好
- 网友回复: 好复杂哦~
- 上一篇:请问字符串包含"通不过如何解决
- 下一篇:[求助]这么写对不?
相关文章
-
没有相关内容