在現股自動交易或者回測中,如何至抓取盤中緩漲試撮或緩跌試撮的個股(盤中瞬間價格穩定措施),原本只想說在一分K底下用volume = 0,但卻完全無法偵測到

在現股自動交易或者回測中,如何至抓取盤中緩漲試撮或緩跌試撮的個股
- 100
- 最後發表 Wade韋 2021 十二月 28
Hello Wade韋,
由於XQ腳本在有交易時才會觸發運算,所以在緩漲緩跌的時候因為沒有交易,腳本也不會運算,故偵測不到。
您可以計算緩漲緩跌的參考價然後用買進一和賣出一來判斷,但需注意這樣若條件符合時沒有交易的話也不會觸發。
舉例來說,即時逐筆洗洗價下:
var: intraBarPersist wavgp(0), intraBarPersist _value1(0), intraBarPersist _value2(0);
if currentBar < 10 then return;
if floor(getfield("Time", "Tick")[1] / 100) = floor(getfield("Time", "Tick") / 100) then begin //計算每分鐘加權平均
_value1 += getfield("Close", "Tick") * getfield("Volume", "Tick");
_value2 += getfield("Volume", "Tick");
end
else begin
_value1 = 0;
_value2 = 0;
_value1 += getfield("Close", "Tick") * getfield("Volume", "Tick");
_value2 += getfield("Volume", "Tick");
end;
if currentTime < 090500 then wavgp = getfield("Open", "D") else if _value2 <> 0 then wavgp = _value1/_value2 else wavgp = wavgp[1]; //計算緩漲緩跌參考價
if q_bid > (wavgp *1.035) or q_ask < (wavgp * 0.965) then ret = 1; //如果買進一大於參考價加3.5%或賣出一小於參考價減3.5就警示
或是您可以考慮在1分鐘頻率下判斷前兩分鐘的成交量是否都為0 (在緩漲緩跌發生後警示),但需注意這樣的狀況下會搜尋到單純是兩分鐘沒有成交量的商品。
if volume[3] <> 0 and volume[2] = 0 and volume[1] = 0 and volume <> 0 and date = date[3] then ret = 1;
1 評論