[PEL] 复制代码 ma1:=ma(close,5);
ma2:=ma(close,30);
variable:maxprofit=0;//有仓位时最大获利
//开仓
if cross(ma1,ma2) then
begin
buy(1,1,limit,c);
maxprofit:=0;
end
//平仓
指标平多:sell(cross(ma2,ma1),0,limit,c);
win:=0;
if holding > 0 and enterbars > 0 then
begin
win:=(c-enterprice);
//记录最大盈利
if win>maxprofit then maxprofit:=win;
end
if holding < 0 and enterbars > 0 then
begin
win:=(enterprice-c);
//记录最大盈利
if win > maxprofit then maxprofit:=win;
end
if win<-100*mindiff then 止损:sell(1,holding,market);
//按照价差计算的10% 盈利。例如开仓价4000,10% 就是4400
if maxprofit/avgenterprice>=0.1 and c<=avgenterprice then 回撤止损:sell(1,holding,market);
这是一种写法,可以参考下。你再补充下空头的开平就行了。但是需要注意开空时候也要重置下全局变量maxprofit。 |