語法解讀

  •   256 
  • 最後發表   大A  2025 三月 31
大A 發文於   2025/03/31

if barfreq<>"Min"or barinterval<>30  then return;

value1=getfield("volume","D");

if value1[1]>2000 then begin setposition(1,market);

end;

這段語法回測後發現會有二種情況,一種是前一日成交量>2000時以市價買入一張,還有一種情況是前一日成交量<2000,但當日開盤後第一根K棒至前一根K棒的累計成交量>2000時會以市價買入一張

我想要寫的是前一日成交量>2000時以市價買入一張,請問語法上要怎麼修正?

排序方式: 標準 | 最新
虎科大許教授 發文於   2025/03/31

(1)你犯了跨頻率操作卻使用變數的錯誤。value1是前一根30分K的日成交量,而非前一日的成交量。

(2)正解:if getfield("volume","D")[1]>2000 then setposition(1,market);

大A 發文於   2025/03/31

原來是這樣,感謝教授指點

發表回覆
Close