請問新版開始如何取得Tick的上下五檔買賣單資訊呢?有打到客服專線教我們去公佈欄設定一些設定之後還是會出現如圖所示問題?圖示第9~11行單獨編譯可以執行。煩請幫忙解惑一下,謝謝。
關於Tick的使用問題?
- 468
- 最後發表 新手新手新新手 2020 十一月 03
請問小幫手,該如何寫Tick模式下的最佳五檔買賣價格和最佳五檔買賣量能呢?我寫以下方式編譯發生錯誤,我想請問是否是因為BestBid1和BestBidSize1這兩個參數給的不對,如果是,請問要填入甚麼?
麻煩您給予指導,謝謝。(其他的都是複製你們的範例,編譯過沒有發生任何錯誤)
Value1 = GetField("BestBid1", "Tick")[offset]; //委買1價格
Value2 = GetField("BestBidSize1", "Tick")[offset]; //委買1量能
新手新手新新手 您好
主要原因在於您的 [offset] 喔
因為報價欄位為即時資料
他不能像getfield 一樣抓取歷史數據
也就是不能用 [1] 類似這種方式來抓
我看了一下您的 offset 是0 那其實您不需要設這個 offset
直接寫q_BestBid1 就是一樣數值了
Dear Sir,
首先謝謝你回覆。那請問我目前需要使用GetField抓取委買賣五檔的價格和量能,然後又需要抓歷史資料使用offset,該怎麼撰寫呢?
新手新手新新手 您好
目前是無法使用 GetField 來取得 五檔報價的數據的,
五檔報價為即時數據,所以沒辦法撈取歷史資料
感謝您的提問。
Dear Sir,
我的程式如下,請問無法抓到對應的時間下五檔委買賣資訊,該如何改呢?
var: intrabarpersist last_seqno(0); // 上次洗價時最後一筆Tick的SeqNo
var: curr_seqno(0); // 這次洗價時最後一筆Tick的SeqNo
if Date <> CurrentDate then return; // 只跑今日的資料
curr_seqno = GetField("SeqNo", "Tick"); // 最新一筆Tick編號
if last_seqno = 0 then last_seqno = curr_seqno - 1; // 第一次洗價時只洗當時那一筆
var: seq_no(0), offset(0);
seq_no = curr_seqno;
offset = 0;
while seq_no > last_seqno begin
Value1 = GetQuote("BestBidSize1"[offset]); //委買1量能
Value2 = GetQuote("BestBidSize2"[offset]);
Value3 = GetQuote("BestBidSize3"[offset]);
Value4 = GetQuote("BestBidSize4"[offset]);
Value5 = GetQuote("BestBidSize5"[offset]);
Value6 = GetQuote("BestAskSize1"[offset]);
Value7 = GetQuote("BestAskSize2"[offset]);
Value8 = GetQuote("BestAskSize3"[offset]);
Value9 = GetQuote("BestAskSize4"[offset]);
Value10 = GetQuote("BestAskSize5"[offset]);
Value11 = GetQuote("BestBid1"[offset]); //委買1價格
Value12 = GetQuote("BestBid2"[offset]);
Value13 = GetQuote("BestBid3"[offset]);
Value14 = GetQuote("BestBid4"[offset]);
Value15 = GetQuote("BestBid5"[offset]);
Value16 = GetQuote("BestAsk1"[offset]);
Value17 = GetQuote("BestAsk2"[offset]);
Value18 = GetQuote("BestAsk3"[offset]);
Value19 = GetQuote("BestAsk4"[offset]);
Value20 = GetQuote("BestAsk5"[offset]); //Value13 =GetField("BidAskFlag","Tick");
value21 = GetField("Time", "Tick")[offset];
value22 = GetField("Close", "Tick")[offset];
value23 = GetField("Volume", "Tick")[offset];
value24 = GetField("SeqNo", "Tick")[offset];
print(file("D:\OP\"), value1, value2, value3, value4, value5, value6, value7, value8, value9, value10, value11, value12, value13, value14, value15, value16, value17, value18, value19, value20, value21, value22, value23, value24);
seq_no = seq_no - 1;
offset = offset + 1;
end;
last_seqno = curr_seqno;
請問這種q_開頭的內建指標說明在那裡可以找到, 我用正常管道的說明都看不到這些?
9 評論