ZAry:=C*0; CC:=O;
S30:=TIME>=134000 or BARPOS=0; //強制出場
S11:=((UCC=1) and S30=0 or BARPOS=0); //多進
S12:=((UCC=-1) or BARPOS=0) ; //多出
S21:=((UCC=-1) and S30=0 or BARPOS=0); //空進
S22:=((UCC=1) or BARPOS=0) ; //空出
盈虧:ZAry linethick0;
進出:ZAry;
多空:=0; //1.多 -1.空 0.無
做價:=0; 停損:=10;
for i = LBOUND(ZAry) to DATACOUNT do begin
IF 多空=0 then begin
多空:=S11[i]-S21[i]; 進出[i]:=多空;
IF 多空<>0 then 做價:=CC[i];
end else IF 多空<>0 then begin
盈虧[i]:=(CC[i]-做價)*多空;
CKO:=S12[i]-S22[i];
IF CKO=多空 then begin
進出[i]:=CKO*2; 多空:=0;
end else IF S30[i] then begin
進出[i]:=多空*3; 多空:=0;
end else IF 盈虧[i]<-停損 then begin
進出[i]:=多空*4; 多空:=0;
end;
end;
end;
引用:最初由 july2008 發表 ZAry:=C*0; CC:=O;
S30:=TIME>=134000 or BARPOS=0; //強制出場
S11:=((UCC=1) and S30=0 or BARPOS=0); //多進
S12:=((UCC=-1) or BARPOS=0) ; //多出
S21:=((UCC=-1) and S30=0 or BARPOS=0); //空進
S22:=((UCC=1) or BARPOS=0) ; //空出
盈虧:ZAry linethick0;
進出:ZAry;
多空:=0; //1.多 -1.空 0.無
做價:=0; 停損:=10;
for i = LBOUND(ZAry) to DATACOUNT do begin
IF 多空=0 then begin
多空:=S11[i]-S21[i]; 進出[i]:=多空;
IF 多空<>0 then 做價:=CC[i];
end else IF 多空<>0 then begin
盈虧[i]:=(CC[i]-做價)*多空;
CKO:=S12[i]-S22[i];
IF CKO=多空 then begin
進出[i]:=CKO*2; 多空:=0;
end else IF S30[i] then begin
進出[i]:=多空*3; 多空:=0;
end else IF 盈虧[i]<-停損 then begin
進出[i]:=多空*4; 多空:=0;
end;
end;
end;
以上的寫法是 1 -1 進場 2 -2 出場 3 -3 停損 4 -4 收盤
我的想法是請版大幫忙改一下 把2跟-2 取消 只留進場.停損.收盤
麻煩版大 謝
讓出場條件永遠不會成立即可
將
S12:=((UCC=-1) or BARPOS=0) ; //多出
S22:=((UCC=1) or BARPOS=0) ; //空出
改為
S12:=0 or BARPOS=0 ; //多出
S22:=0 or BARPOS=0 ; //空出