請問指標腳本使用 TickCnt = GetField("總成交次數") 這個函數 盤中現貨抓到的筆數跟換K棒後回頭看前根的筆數有明顯落差 例如看現貨盤中是1391筆 收盤後此根K棒的成交筆數變成40筆 對照明細表之後 40筆才是正確的 幾乎現貨盤中都有這個情況 個股期貨則是正常沒有此情況 請問這會影響腳本判讀正確性嗎?
關於 總成交次數函數
- 108
- 最後發表 alan651109888 3 週前
當你使用GetField抓欄位資料且沒有賦予頻率參數時,系統會根據目前頻率去抓數據。
總成交次數會在每根K棒開始由0計算並累積次數。下一根K棒又從0開始累加。
我測試台積電個股,不論1分鐘或5分鐘,數據都是正確的。

我測試很多檔現貨都有這個情況 我是掛在1分K上面 例如我掛在1326台化 用查價視窗盤中看他在跳的筆數 會到幾百筆 等這根K棒收完的時候 他換棒時 這根K的成交筆數就跳回幾十筆 落差會滿大的
我這邊查看技術分析圖表,並沒有 你說的情況。也許把你Plot的指令及執行Plot指令的條件貼上來看看。
// 當根筆數:1分K行進中抓取,未指定頻率(依目前頻率)
TickCnt = GetField("總成交次數");
FundA_Ratio = (Volume / MaxList(TickCnt, 1)) / MaxList(YDayVolPerTick, 1);
FundB_Ratio = TickCnt / MaxList(YDayTickPerMin, 1);
// 昨日基準:日頻率(每日算一次鎖整天)
YDayTickCnt = GetField("總成交次數","D")[1];
// Plot 指令:無條件,每根K直接畫
Plot30(TickCnt, "30.本K筆數(驗證)");
▎ 「Plot30 是無條件顯示,直接畫 GetField("總成交次數")(1分K行進中、未指定頻率)。行進中顯示 127,同根K換棒後回看變 49;另外有的股票(稀疏股)行進中顯示 0,換棒後才出數值。都發生在現貨,期貨沒看過。對照明細
▎ 49 才是真實當根筆數。」 在成交頻繁的現貨都有此情況
從你貼的程式碼看來,不應該發生你描述的問題。
會不會你的 TickCnt 變數在 Plot 之前有被改變?
請先確認從 TickCnt = GetField("總成交次數"); 到 Plot30(TickCnt, "30.本K筆數(驗證)"); 之間的程式碼沒有改變 TickCnt。
指標腳本裡 TickCnt 總共出現 8 次,全部位置:
- 1 次是「領貨」:從欄位讀值放進 TickCnt(唯一一次賦值)
- 1 次是宣告:剛開頭宣告這個變數存在
- 6 次是「用貨」:算單筆張數倍數、算筆數倍數、判斷過關、畫 Plot30——全部只是拿來讀,沒有任何一行寫回
很奇怪 就現貨有這個問題 個股期貨沒有
既然你有用TickCt運算,要留意呼叫函數做運算,TickCnt是否有被當作參數使用;若有,且該函數的參數是傳址參數,則在函數運算中,若有改變參數值,TickCnt數值就會被改變。
老師您好 我同一個腳本掛載的自選股裡面 同時有現貨+個股期貨 只有現貨會有這個問題 期貨沒有發生過 如果是腳本問題的話 是不是應該兩種商品都會發生?
照理說,若期貨沒這個問題,現貨也應該不會有這個問題。你可以試著用print指令,在繪製現貨指標時,顯示總成交次數的變化。
9 評論