等级: 免费版
- 注册:
- 2022-12-12
- 曾用名:
|
//判断当前持仓状态下的最大盈利
论坛看到的这个固定止损,回测发现有亏损8个点的 我想设置2手以下包含2手止损5个点 大于2手的止损2个点要怎么改?
WIN:=0;
WIN2:=0;
IF HOLDING > 0 AND ENTERBARS > 0 AND CC=1 OR HOLDING > 0 AND ENTERBARS > 0 AND CC=2 OR HOLDING > 0 AND ENTERBARS > 0 AND CC=3 THEN
BEGIN
WIN:=(C-ENTERPRICE)/ENTERPRICE*100; //记录最大盈利
IF WIN>MAXPROFIT THEN
MAXPROFIT:=WIN;
WIN2:=(MAXPROFIT-WIN)/MAXPROFIT*100; //最大盈利后的回调幅度
END
IF HOLDING < 0 AND ENTERBARS > 0 AND CC=-1 OR HOLDING < 0 AND ENTERBARS > 0 AND CC=-2 OR HOLDING < 0 AND ENTERBARS > 0 AND CC=-3 THEN
BEGIN
WIN:=(ENTERPRICE-C )/ENTERPRICE*100; //记录最大盈利
IF WIN > MAXPROFIT THEN
MAXPROFIT:=WIN;
WIN2:=(MAXPROFIT-WIN)/MAXPROFIT*100; //最大盈利后的回调幅度
END
//出现浮动亏损比如2%平仓
多1止损1:SELL( WIN < -2,0,LIMITR,C);
//多1止损2:SELL( WIN < -2, HOLDING/2,LIMITR,C);
//出现最高盈利后,回落到盈利的60%平仓出场
多1止赢1:SELL(C-ENTERPRICE>100 AND WIN2 >= 80 AND OPENPROFIT > 0, HOLDING/2,LIMITR,C);
多1止赢2:SELL(C-ENTERPRICE>100 AND WIN2 >= 60 AND OPENPROFIT > 0, HOLDING,LIMITR,C);
//出现浮动亏损比如2%平仓
//空1止损1:SELLSHORT( WIN < -2 , HOLDING/2,LIMITR,C);
空1止损2:SELLSHORT( WIN < -2 ,0,LIMITR,C);
//出现最高盈利后,回落到盈利的60%平仓出场
空1止赢1:SELLSHORT(ENTERPRICE-C>100 AND WIN2 >= 80 AND OPENPROFIT >HOLDING/2, 0,LIMITR,C);
空1止赢2:SELLSHORT(ENTERPRICE-C>100 AND WIN2 >= 60 AND OPENPROFIT >HOLDING, 0,LIMITR,C);
/////////////////////////////////////////////////////////////////
|
|