全局變量賦值問題
作者:金字塔 來源:cxh99.com 發(fā)布時(shí)間:2022年01月27日
-
咨詢內(nèi)容:
VARIABLE:sj=0,sjh=0,bj=0,bjh=0;
/止損IF C<AVGENTERPRICE? and holding=1? ?and sjh=1 and c<g? ?THEN BEGIN? //and (sj=c and sjh=1)or (bj=c and bjh=1)多損s:sell(y2,HOLDING,MARKETr);ENDif 多損s=1 then begin?sj:=0;sjh:=0;? ?end? ? ?
//進(jìn)場
if holding=0 and sj=0 and sjh=0 and t1 and y1 then begin
s多進(jìn):buy(1,1,MARKETR),NODRAW;
sj:=c;
sjh:=1;
end
if holding=0 and bj=0 and bjh=0 and t2 and y1 then begin
b多進(jìn):buy(1,1,marketr),NODRAW;
bj:=c;
bjh:=1;
end
在圖表第一次遇到s多進(jìn) 場的信號(hào),全局變量執(zhí)行正常觸發(fā)全部止損信號(hào)止損并重新賦值歸零。接著第二次遇到s多進(jìn)場信號(hào),開倉后的第一跟k線有賦值,第二根k線起
sj? ?sjh
重新賦值為0,? ?什么原因,請(qǐng)老師給看下
如果s止損這么寫?/止損IF C<AVGENTERPRICE? and holding=1? ?and sjh=1 and c<g? ?THEN BEGIN? //and (sj=c and sjh=1)or (bj=c and bjh=1)多損s:sell(y2,HOLDING,MARKETr);?sj:=0;sjh:=0;? ?end? ? ? 則在第一次與到s多進(jìn)場后的第3跟k線sj? ?sjh就賦值成零了??
?
-
金字塔客服:
全局變量的賦值,放到平倉語句同一個(gè)begin-end下。再把y2放在if后面的判斷里面
IF C<AVGENTERPRICE? and holding=1?? and sjh=1 and c<g? and y2 THEN BEGIN? //and (sj=c and sjh=1)or (bj=c and bjh=1)多損s:sell(y2,HOLDING,MARKETr);
sj:=0;
sjh:=0;
END
之所出現(xiàn)你說的“ 則在第一次與到s多進(jìn)場后的第3跟k線sj? ?sjh就賦值成零了? ” 很顯然是if后面的條件滿足了,但是y2沒有滿足,所以只重置全局變量了,但是平倉卻沒有觸發(fā)。