feat: proper Order Book Imbalance strategy for BTC-USD on HL
strategies/nt/obi_nt.py: - Dual-mode OBI: candle proxy (backtest) + real L2 orderbook (live) - Volume-based imbalance: buy_vol / (buy_vol + sell_vol) over rolling window - Entry when |imbalance| > 0.35, exit on reversion < 0.10 - Stop-loss 2%, take-profit 0.5%, cooldown 3 bars - compute_signal(price, orderbook=None) for paper trader integration backtests/vbt_runner.py: - Replaced placeholder z-score with proper volume-based OBI - Buy vol = volume where close > open, sell vol = volume where close < open - Rolling window imbalance computation - Parameter sweep support with 12 combos tested Registered across: deploy.py, nt_runner.py, dashboard, strategies/nt/__init__ Verified: - VectorBT OBI backtest: 15 trades, -7.2% on default (window=20) - Param sweep best: w=30 t=0.35 → sharpe -0.82, 49% win, 23% DD - Real L2 orderbook signal: BUY obi=0.880 (bids 88% of depth) - NT backtest engine: 201 bars, 8 days, 236ms
This commit is contained in:
@@ -180,6 +180,7 @@ class NTBacktestRunner:
|
||||
"pairs": "strategies.nt.pairs_trading_nt.PairsTradingNT",
|
||||
"hurst_vpin": "strategies.nt.hurst_vpin_nt.HurstVPINNT",
|
||||
"as_mm": "strategies.nt.as_mm_nt.ASMarketMakingNT",
|
||||
"obi": "strategies.nt.obi_nt.OBINT",
|
||||
}
|
||||
path = registry.get(strategy)
|
||||
if not path:
|
||||
|
||||
Reference in New Issue
Block a user