如何取得特定時間內的最高價

  •   1.8K 
  • 最後發表   大師  2018 十月 17
大師 發文於   2018/10/16

如果我用5分鐘的頻率寫當沖策略

需要取得開盤後9:00-10:00內的最高價

要用什麼樣的語法來寫?

煩請釋疑....謝謝!

1.不知以下的腳本有什麼樣的問題?
2.怎樣修正才能回測出結果?

---------------------------------------------------------------------------------------------------------------------------------------------------

if barfreq <>"Min" or  barinterval<> 5 then raiseruntimeerror;    //頻率為5分K

variable:signal(0);

signal=highest(close[1],12);                                                       //9:00-10:00內的最高價-------------->不知怎麼寫比較正確?

if currentdate = date                                                                   //只計算當日的K棒

and currentTime > 100000 and currentTime < 110000              //策略啟動時間為10:00-11:00

and close > signal                                                                      //10:00-11:00的即時收盤價>9:00-10:00的最高收盤價

and volume < volume[barslast(signal=highest(close[1],12))]    //10:00-11:00的即時收盤價成交量<9:00-10:00的最高收盤價的成交量

then ret=1;

---------------------------------------------------------------------------------------------------------------------------------------------------

 

 

XQ小幫手 發文於   2018/10/17

Hi 大師,

需要取得開盤後9:00-10:00內的最高價

可以參考以下兩篇文章,皆有相關討論

XS警示腳本撰寫 盤中指定時間後的創高(當沖)

XS 使用報價欄位&資料欄位 取"價"的問題


不知以下的腳本有什麼樣的問題?

volume < volume[barslast(signal=highest(close[1],12))]

這行判斷有問題,因為在您的腳本都會 volume = volume[barslast(signal=highest(close[1],12))] 所以不會觸發,

您可以用 Print 語法驗證上述運算數值,即可知道問題的原因。

 

以上方向供您參考,謝謝。

發表回覆
Close