追低程式碼是否OK?是否有考慮不周之處?

為何我想要的方式,寫出來的程式碼,電腦執行出來的結果都很多差異,該怎麼理解電腦的執行邏輯?

if  position=0 and filled=0  and condition90 and currentTime > TM and  currentTime <=101500  

then begin 

if  condition1  and (trueAll(value31 > value31[1],2) or value7 > value7[1] ) 

and value7*1.0045 < getField("High","D") 

then

PT1=GetField("收盤價","Tick");

setposition(minList(position+2,2),PT1,label:="買1");//有庫存時,不進場加買,維持2張 

if filled=0 and GetField("收盤價","Tick") < pt1 then

pt2=GetField("收盤價","Tick");

setposition(minList(position+2,2),PT2,label:="買1");//尚未成交有更低的價格改單 

end;