MA1:=MA(CLOSE,5);
MA2:=MA(CLOSE,30);
variable:maxprofit=0;//有仓位时最大获利幅度
//开仓
IF CROSS(MA1,MA2) THEN
BEGIN
BUY(1,1);
maxprofit:=0;
END
//平仓
SELL(CROSS(MA2,MA1),0);
//判断当前持仓状态下的最大盈利
win:=0;
win2:=0;
if holding > 0 and enterbars > 0 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 then
begin
win:=(enterprice-c)/enterprice*100; //记录最大盈利
if win > maxprofit then
maxprofit:=win;
我这个只会开多。不会开空,请教老师这个在平多开空,平空开多要怎么写呀。帮我加一条可以吗。谢谢
MA1:=MA(CLOSE,5);
MA2:=MA(CLOSE,30);
variable:maxprofit=0;//有仓位时最大获利幅度
//开仓
sellshort(cross(ma1,ma2),0);
IF CROSS(MA1,MA2) and holding=0 THEN
BEGIN
BUY(1,1);
maxprofit:=0;
END
//平仓
SELL(CROSS(MA2,MA1),0);
if cross(ma2,ma1) and holding=0 then
begin
buyshort(1,1);
maxprofit:=0;
end
//判断当前持仓状态下的最大盈利
win:=0;
win2:=0;
if holding > 0 and enterbars > 0 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 then
begin
win:=(enterprice-c)/enterprice*100; //记录最大盈利
if win > maxprofit then
maxprofit:=win;