Blave 的核心 Alpha 指標之一——它測量什麼、為什麼重要,以及三種建構策略的方式。
每一筆加密貨幣交易所的成交都有一個掛單方(掛著等待成交的限價單)和一個吃單方(主動成交的市價單)。多空力道(Taker Intensity,TI)衡量的是在一段滾動時間窗口內,市價買單和市價賣單淨差額的標準化值。
| TI 值 | 意義 |
|---|---|
| 正值(+) | 淨市價買單壓力——交易員積極做多 |
| 接近零(≈ 0) | 平衡——多空都不佔優勢 |
| 負值(−) | 淨市價賣單壓力——交易員積極做空 |
數值相對於近期歷史做了標準化,反映的是當前失衡程度有多不尋常,而不是絕對的買賣量。同樣的買盤力道,在活躍市場可能只產生 TI +0.5,在安靜市場則可能是 +2.5。Blave 提供六種時間框架的 TI:15m、1h、4h、8h、24h、3d。時間框架越長越平滑,適合部位策略;時間框架越短反應越快,但雜訊也越多。
這是大多數人對這個指標最容易誤解的地方。市價買單有兩個來源:
TI 超過進場門檻就做多;TI 低於出場門檻就空手。兩個門檻之間的「死區」可以防止 TI 在臨界值附近徘徊時反覆進出。
ENTRY_TH = 1.693
EXIT_TH = -0.453
def compute_signals(df, entry_th=None, exit_th=None):
eth = entry_th if entry_th is not None else ENTRY_TH
xth = exit_th if exit_th is not None else EXIT_TH
ti = df['TI']
signal = pd.Series(np.nan, index=df.index)
signal[ti > eth] = 1.0 # 進場做多
signal[ti < xth] = 0.0 # 空手
return signal
這就是 btc_ti_5min 範例策略的完整邏輯——用 24h 時間窗口的 TI,每 5 分鐘檢查一次。ENTRY_TH = 1.693 和 EXIT_TH = -0.453 是透過參數掃描找到的,不是憑感覺設定的。
把零軸當作訊號門檻。TI 穿越零軸以上做多,穿越零軸以下空手。直觀但容易在 15m 或 1h 時間框架上產生大量短暫的交易,快速累積手續費。在 8h 或 24h 時間窗口上,交叉更有意義。
signal[ti > 0] = 1.0 signal[ti < 0] = 0.0
把 TI 當成主要訊號的過濾閘門。只有在 TI 為正值(存在淨買盤壓力)時才接受進場訊號。這可以防止趨勢策略在大量賣壓環境中進場。
primary = compute_primary_signals(df) # 例如 SMA 交叉 ti_positive = (df['TI'] > 0) signal = primary.copy() signal[~ti_positive] = 0.0 # TI 為負時不做多
趨勢濾網通常可以減少交易次數和手續費,同時提升 Sharpe,代價是會錯過一些行情。用較長時間框架的 TI(8h、24h)作為短週期策略的宏觀濾網效果最好。
| TI 窗口 | 最適合 | 說明 |
|---|---|---|
15m | 超短線當沖 | 雜訊非常大,手續費風險高 |
1h | 日內策略 | 平衡 |
4h | 波段策略 | 訊號較少,品質較高 |
8h | 短線策略的趨勢濾網 | 良好的宏觀訊號 |
24h | 日線部位管理 | 最平滑,雜訊最少 |
3d | 多日趨勢確認 | 非常平滑,適合判斷市場環境 |
在 btc_ti_5min 中,策略每 5 分鐘執行一次,但使用的是 24h TI。這是刻意的設計:你想要 5 分鐘檢查的速度(TI 一穿越門檻就快速反應),但不想要 5 分鐘 TI 窗口的雜訊。
TI 單獨使用已有用,搭配 Blave 其他 Alpha 指標則更強大:
| 組合 | 用途 |
|---|---|
| TI + 籌碼集中度(HC) | 區分真實買盤和空單被清算。兩者都為正 = 機構支撐的多頭行情。 |
| TI + 巨鯨警報(WH) | WH 偵測大型 OI/成交量變化;TI 確認方向。兩者同向 = 高信心進場。 |
| TI + 市場方向(MD) | 用 MD 做宏觀濾網,TI 做進場觸發。減少逆勢交易。 |
stat 欄位(up_prob、exp_value、return_ratio)提供歷史背景參考。在信任統計數據前,請確認 is_data_sufficient 為 true。