zichan:asset,noaxis;
if barpos=1 then begin
MaxAsset:=zichan;
Maxhc:=0; end
if zichan>MaxAsset then MaxAsset:=zichan;
if MaxAsset-zichan>Maxhc then Maxhc:=MaxAsset-zichan;
最大回撤:Maxhc,linethick0;
回撤幅度:(MaxAsset-asset)/MaxAsset,linethick0;//请问如何求回撤幅度的百分比?并能显示出来(问题一)
MA5:=MA(C,5);
MA10:=MA(C,10);
COND1:=CROSS(MA5,MA10);
COND2:=CROSS(MA10,MA5);
IF COND1 THEN
BEGIN
SELLSHORT(1,1,MARKET);
BUY(1,1,MARKET);
END
IF COND1 THEN
BEGIN
SELL(1,1,MARKET);
BUYSHORT(1,1,MARKET);
END
.........
.........
.........
问题二:帮忙编写剩余部分,当“回撤幅度”>10% 时,平掉现有持仓,并且接下来2根K线一直空仓(暂停交易),直到第三根K线再根据条件重新判断入场。
variable:n=0
if 回撤幅度>0.1 and holding<>0 and n=0 then begin
sellshort(1,0,market);
sell(1,0,market);
n:=1;
end
开仓条件加上 barslast(n=1 and ref(n=0))>2
zichan:asset,noaxis;
if barpos=1 then begin
MaxAsset:=zichan;
Maxhc:=0; end
if zichan>MaxAsset then MaxAsset:=zichan;
if MaxAsset-zichan>Maxhc then Maxhc:=MaxAsset-zichan;
最大回撤:Maxhc,linethick0;
回撤幅度:(MaxAsset-asset)/MaxAsset,linethick0;//请问如何求回撤幅度的百分比?并能显示出来(问题一)
MA5:=MA(C,5);
MA10:=MA(C,10);
COND1:=CROSS(MA5,MA10);
COND2:=CROSS(MA10,MA5);
variable:kk=0;
IF COND1 and holding<0 and kk=0 THEN
BEGIN
SELLSHORT(1,1,MARKET);
BUY(1,1,MARKET);
kk:=1;
END
IF COND1 and holding>0 and kk=0 THEN
BEGIN
SELL(1,1,MARKET);
BUYSHORT(1,1,MARKET);
kk:=1;
END
variable:n=0;
if 回撤幅度>0.1 and holding<>0 and n=0 then begin
sellshort(1,0,market);
sell(1,0,market);
n:=1;
end
cc:=barslast(n=1 and ref(n=0,1))>2 ;
IF COND1 and kk=1 and n=1 and holding<0 and cc THEN
BEGIN
SELLSHORT(1,1,MARKET);
BUY(1,1,MARKET);
n:=0;
END
IF COND1 and kk=1 and nn=1 and holding>0 and cc THEN
BEGIN
SELL(1,1,MARKET);
BUYSHORT(1,1,MARKET);
n:=0;
END
zichan:asset,noaxis;
if barpos=1 then begin
maxasset:=zichan;
maxhc:=0; end
if zichan>maxasset then maxasset:=zichan;
if maxasset-zichan>maxhc then maxhc:=maxasset-zichan;
最大回撤:maxhc,linethick0;
回撤幅度:(maxasset-asset)/maxasset,linethick0;//请问如何求回撤幅度的百分比?并能显示出来(问题一)
variable:n=0;
ma5:=ma(c,5);
ma10:=ma(c,10);
cond1:=cross(ma5,ma10);
cond2:=cross(ma10,ma5);
if cond1 and n=0 then
begin
sellshort(1,0,market);
buy(holding=0,1,market);
end
if cond2 and n=0 then
begin
sell(1,0,market);
buyshort(holding=0,1,market);
end
if 回撤幅度>0.1 and holding<>0 and n=0 then
begin
sellshort(1,0,market);
sell(1,0,market);
n:=1;
end
cc:=barslast(n=1 and ref(n=0,1))>2 ;
if cond1 and n=1 and holding=0 and cc then
begin
buy(1,1,market);
n:=0;
end
if cond1 and n=1 and holding=0 and cc then
begin
buyshort(1,1,market);
n:=0;
end