分K警示如何撰寫

  •   775 
  • 最後發表   shuyen  2022 四月 22
shuyen 發文於   2022/04/17

請問

想要盤中符合以下所有條件跳出警示,該怎麼寫

在60分K的環境中

1.60分K的5均線>10均線>20均線>60均線(符合此條件後才進入後續的條件)

2.當日盤中成交量至少大於前10根60分K平均成交量的5倍(前10根60分K平均成交量須大於500張)

3.當日盤中股價高於前5根60分K的最高價

符合以上三個條件跳出警示

另,如果用來跑所有台股,怕資料太多,是否可以設定只需要跑幾根60分K就好?

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

還想請問

1.在頻率60分K的環境下,是否能使用q_DailyVolume跟q_Last,因為看說明這兩個資料是日頻率等級的。

2.盤中成交量能否用 q_TickVolume 的計次(累積)方式來呈現? 如果可以的話,請問要如何寫?

 

XQ小幫手 發文於   2022/04/22

Hello shuyen,

 

平均可以用average來計算。

所以您的腳本可以這樣寫:

setbackbar(60);   //最少需要60根Bar的資料 (算平均)

settotalbar(1);   //預讀筆數

value1 = average(close, 5);

value2 = average(close, 10);

value3 = average(close, 20);

value4 = average(close, 60);

condition1 = value1 > value2 and value2 > value3 and value3 > value4;

condition2 = volume > (average(volume[1], 10) * 5) and average(volume[1], 10) > 500;  //當根成交量 > 前10根60分K平均成交量的5倍,如果要當日成交量的話可以改用 GetField("Volume", "D")

condition3 = close > highest(high[1], 5);

 

if condition1 and condition2 and condition3 then ret = 1;

 

另外 q_DailyVolume 這種 q_ 開頭的欄位是報價欄位,只能用在即時不能用再回測,並提供最新資料。

可以用在60分鐘頻率。

您當日的單量累積起來,其實就跟日頻率的成交量相同,所以不用另外特別計算,只要使用GetField("Volume", "D")就會取得開盤到腳本運算當下的成交量。

如果您一定要嘗試的話,可以參考ReadTicks函數。

此函數可以把兩次洗價間的所有tick資訊抓出,接著您就可以累加成交量。

 

小幫手建議您可以先閱覽網站裡的教學區,裡面有XS語法的基礎和應用。

 

發表回覆
Close