許多剛跨入程式交易(Systematic Trading)與策略回測領域的投資人,在串接券商 API 或向歷史資料庫購買資料時,常會看見兩個主要規格:「OHLCV(K 棒資料)」與「Tick(逐筆成交資料)」。
一檔熱門指數 ETF 一整年的日 K 線資料,檔案大小通常僅有數十 KB,用簡單的文字編輯器就能瞬間開啟;但若是換成某活躍大盤股或期貨同一年份的逐筆 Trade Tick 資料,記錄可能膨脹到數千萬筆,原始檔案容量可能從數百 MB 到數個 GB 不等(具體取決於欄位格式與壓縮程度),一般電腦往往需要專門的資料庫才能順暢運算。
挑選錯誤的資料層級,不是讓策略回測嚴重偏離真實撮合現實,就是讓自己在無謂的資料清洗與儲存硬體上耗費過多心力。本文深入拆解這兩大資料格式的真實架構差異。
OHLCV 資料將固定時間區間(例如 1 分鐘、1 小時或 1 日)內的所有撮合交易,統整為 5 項關鍵數值:開盤價(Open)、最高價(High)、最低價(Low)、收盤價(Close)與總成交量(Volume)。它捨棄了該時段內的即時上下起伏細節,以換取極輕量化的儲存體積與秒級的回測速度。Tick 資料則是市場最真實的事件流記錄——必須嚴格區分成交資料(Trade Ticks,記錄成交時間戳、價格、股數與屬性)、盤口報價(Quote Ticks,記錄最佳買賣報價)與深度更新(Order Book Updates,記錄多檔掛單與排隊)。純成交 Tick 僅反映已撮合事實,價差分析需要 Quote 報價,深度與佇列分析則需要多檔委託簿更新。Tick 資料對微觀結構分析至關重要,但對多數波段策略來說則非必要。
| 比較維度 | OHLCV 時間 K 棒 | 逐筆成交 Tick 資料 |
|---|---|---|
| 資料本質 | 固定時間區間的壓縮摘要(單一週期僅 5 筆數值) | 事件驅動的完整交易原始流水(每一筆成交獨立記載) |
| K 棒內路徑 (Path) | 完全隱蔽(無法判斷是先觸及最高價還是先到最低價) | 完整保留價格高低起伏的先後順序與精準間隔時間 |
| 資料容量與負擔 | 極度輕巧(橫跨二十年的日 K 線檔案僅數 MB) | 體積可能相當龐大(活躍商品全天或全年原始資料可達數百 MB 至數 GB 不等,視欄位與壓縮而定) |
| 買賣盤口資訊 | 完全不含未成交的掛單深度資訊 | 純成交 Tick 僅反映已撮合事實;價差分析需要 Quote 報價,深度與佇列分析則需要多檔委託簿更新 |
| 最適策略類型 | 波段交易、多因子資產配置、跨日趨勢追蹤 | 高頻造市、超短線搶帽子、委託單拆單演算法與滑價壓力測試 |
策略回測的經典盲點:K 棒內部價格路徑失真
單純依賴 OHLCV 資料進行策略回測時,最大的潛在隱患在於無法重現 K 棒內部的時間先後順序(Intrabar Path Problem)。
假設你設計了一套 1 小時 K 棒的突破策略,停利點設定在 +2%,停損點設定在 -1%。在某一根波動劇烈的 1 小時 K 棒中,最高點衝到了 +3%,但最低點也下探到 -1.5%。
由於 OHLCV 資料只提供了 High 與 Low 兩個極值,回測系統無法得知究竟是先跌破停損點被打出場,還是先衝過停利點獲利了結。多數陽春回測軟體傾向於給出樂觀假設,進而導致策略在紙上談兵時展現虛假的高勝率。
• 持有數天至數個月(波段與資產配置): 日線或 4 小時 OHLCV 即具備極高性價比; • 持有數小時至單日內(當沖動量策略): 1 分鐘或 5 分鐘 OHLCV 能解決絕大多數進出場點位評估; • 持有數秒至數分鐘(極短線造市): 必須導入 Tick 資料與買賣委託簿切片,才能精確估算買賣價差與流動性衝擊。
哪些專業研究情境必須動用逐筆 Tick 資料?
若你的量化研究聚焦於以下三個微觀執行層面,Tick 資料便是無法替代的關鍵原料:
- 11. 真實滑價(Slippage)與流動性衝擊評估: 測量在開盤瞬間或突發重大消息公布時,市價單直接穿透最佳報價檔位所付出的實際交易摩擦。
- 22. 訂單流(Order Flow)與主力動向解析: 將逐筆成交(Trade Tick)與當時的盤口報價(Quote Tick)比對,區分主動買進(外盤)與主動賣出(內盤),計算累計主動買賣力道(Cumulative Delta)。
- 33. 劇烈行情下的停損單跳空滑價模擬: 檢驗在行情連續出現報價斷崖時,停損市價單(Stop-Market)究竟會在何處完成實際撮合。
常見問題
逐筆成交資料(Tick Data)與委託簿五檔報價(Order Book)是一樣的嗎?
不一樣。Trade Tick 資料記錄的是「已經撮合完成的實際成交」,包含價格與量;報價 Quote Tick 包含最佳買賣價量;而委託簿深度更新則記錄多檔掛單與排隊變動。純成交 Tick 無法還原深度,價差分析需要 Quote 報價,深度分析則需要委託簿更新。
可以用 Tick 資料合成 OHLCV 嗎?
可以。Tick 是最細緻的原始交易底層,你可以按任何時間週期(如 1 分鐘、10 分鐘或特定成交量)自行合成 K 棒;但 K 棒無法逆向還原為逐筆成交細節。
如何在不使用庞大 Tick 資料的前提下減少回測路徑偏差?
實務上可採用 1 秒至 5 秒的高頻 OHLCV 作為折衷方案,或是在回測程式碼中設定保守規則(例如同一根 K 棒同時滿足停損與停利門檻時,強制先判定停損觸發)。



