我在XScript裡面利用以下的script想要取得過去五日的總量與均量的數據
value12 = GetField("Volume", "D"); //取得日成交量
value14 = value12[1]; //昨日成交量
value15 = value12[2]; //前天成交量
value16 = value12[3]; //
value17 = value12[4]; //
value18 = value12[5]; //
value19 = summation(value12, 5)[1]; //過去五日總量
value20 = value19 / 5 ; //過去5日均量
value21 = (value14+value15+value16+value17+value18);
value22 = value21 / 5;
print("-", date, time, barinterval, barfreq,
value12, value14, value15, value16, value17,
value18, value19, value20, value21, value22);
我把這個script放在主頻率為1分鐘的警示內去跑,
發現 我指定的 value12 = GetField("Volume", "D"); //取得日成交量
這個敘述無法取得 "日" 成交量,反而變成是每分K的成交量。
根據XQ的 文件所說 ,我取得的應該是"日" 成交量,但看起來並不是這樣
http://xshelp.xq.com.tw/index.aspx?HelpName=GetField&group=FIELDFUNC
這是你們XQ的文件,怎麼你們盤中執行的結果卻不是這樣呢? 是不是你們的XQ程式有問題啊?
還有一個問題,我指定頻率為1分鐘,可是log卻寫了好幾次,難道是一分鐘內執行了N次script嗎? 正常不是應該一分鐘只執行一次script嗎?
附件為我利用print列印下來的資料(symbol為2317鴻海),每一欄的資料順序如上面print script所列,提供給你們修正問題。
另外,如果我在盤中1分K的主頻率內想要取得過去 5"日"的成交量,我該怎麼寫呢?
如果我在盤後寫好script,想要回測一分K的頻率策略,似乎也無法正確的取得正確資料!!!
1 評論