Skip to content

View translation

BnbDailyTsMomFundingCarryVetoLS

Hypotheses

BNB Time-Series Momentum with Funding Carry-Veto, Long-Short (Single-Instrument BNBUSDT.BINANCE USD-M, DAILY Bars, Sign of ~56-Day Trailing Return, Vol-Scaled Size, Chandelier Stop, Funding ONLY Vetoes Negative-Carry Holds, 3-Parameter)

Hypotheses

A LONG-SHORT, single-instrument, DAILY-bar directional trend follower on BNBUSDT.BINANCE (USD-M perpetual). This deliberately extends the factory's ONE proven non-momentum-clone survivor recipe -- EthDailyTsMomFundingCarryVetoLS, which reached paper_stage at OOS Sharpe ~1.06 -- to a structurally different underlying. IMPORTANT: funding is used here strictly as a HOLD VETO, never as a harvested cash flow, so this is NOT the dead delta-neutral funding cash-and-carry / funding-differential class (L87). The core signal is pure price time-series momentum: take the SIGN of the ~56-day trailing log return; go long when positive, short when negative, flat only inside a small deadband around zero. The funding veto simply refuses to HOLD a position whose direction is paying (not receiving) funding beyond a threshold -- i.e. it declines negative-carry holds where the mechanical funding bleed erodes an already-marginal trend, letting the position flatten instead. Position size is inverse-volatility scaled (target constant risk per trade). Exit is a Chandelier (ATR-trailing) stop plus a trend-sign flip. BNB is chosen deliberately: it is a top-5-liquidity major (tight spreads, deep book, ~0.10% RT) that is heavily UNDER-tested here (corpus is 44% BTC), and as the exchange token it carries an idiosyncratic funding/positioning regime distinct from ETH's high-beta profile -- so this is a genuine new test of whether the funding-veto TSMOM mechanism generalizes on its own economics, not a symbol re-skin of a fee-fragile momentum recipe (L91 warns against volume-confirmed clones specifically; this is a different, proven recipe on a fresh symbol).

Hypotheses

Direct port of the factory's one proven non-clone survivor recipe (EthDailyTsMomFundingCarryVetoLS, OOS Sharpe ~1.06, paper stage) to a structurally different, under-tested top-5 major. Core signal = SIGN of the ~56-day trailing log return (pure price TSMOM, computed every bar and thresholded in should_enter, so the signal stays continuous). Funding enters strictly as a veto: entries are refused when the current funding print is beyond a rolling quantile of BNB's OWN trailing funding distribution and adverse to the intended side, and an open position is flattened only when that adverse extreme persists for carry_persist_days daily observations — so a single print cannot churn a multi-week trend hold. Rolling-quantile (not fixed-constant) thresholds keep firing frequency scale-invariant across BNB's regimes (L5), and missing funding degrades to the unvetoed trend rather than switching mechanism. Sizing is inverse-vol with an explicit per-trade risk cap tied to the stop distance, which prevents equity-compounding blowups (L15). All rolling state is O(1) per bar (deques + running sums), so the daily backtest is far inside the 300s smoke budget; warmup is 61 daily bars against a multi-year daily window, and the sign-of-momentum entry with a 1% deadband fires on the order of a dozen-plus round trips per year — ample sample. Venue: BINANCE USD-M futures is required because the strategy goes short and because funding must be observable on the contract actually held; leverage is left at 1.0 and is genuinely consumed as the exposure cap in position_size().

Hypotheses

analyzing_stuck_3_timeouts

Implementation

Long-short daily time-series momentum on the BNBUSDT.BINANCE USD-M perpetual. The signal is the trailing ~56-day log return, returned continuously every bar; its sign sets direction and a small deadband (entry_threshold) keeps the book flat near zero momentum. Size is inverse-volatility scaled to a 30% annualized target, floored at min_exposure, capped at config.leverage, and further capped so the chandelier stop distance risks at most 5% of equity per trade. Exits are a Chandelier (3xATR22 trailing-extreme) stop, a momentum sign flip, or a persistent extreme adverse-carry veto. Funding is used ONLY as a hold/entry veto against negative carry — never harvested — so this is directional trend following, not a delta-neutral funding carry trade.

Verification Results

Verify the base template dispatches to the subclass override; otherwise rename to a private helper (e.g. _min_bars) and gate warmup explicitly.

Verification Results

min_bars_required(self) overrides a framework base method (flagged by static analysis). The override returns mom_days+5 (61) which is a reasonable warmup, so behavior is correct if the base honors the override, but confirm the base template actually calls self.min_bars_required() rather than its own copy.

Verification Results

No change required; optionally document that the veto operates on the last funding print visible at each daily close.

Verification Results

Funding is sampled once per DAILY bar via supp_as_of, but Binance funding settles 3x/day (8h). The carry-veto persistence window (carry_persist_days daily observations) therefore covers ~3 calendar days, which matches the hypothesis's stated intent, but the intraday funding prints between daily bars are not seen. This is acceptable for a daily-clock veto and not a look-ahead, just a resolution note.

Verification Results

Short leg is materially weaker than the long leg (short_win_rate 0.356 vs long 0.50) and the 'normal' vol tercile is nearly flat (Sharpe 0.34). Sandbox is net positive (Sharpe 0.64, PF 1.43, avg_trade_return_pct 2.73%) so this is not blocking, but the analyst should confirm the short-side TSMOM actually contributes edge on full history rather than being carried by the long leg and the calm/stressed terciles.

Backtest Review

Exact protected survivor recipe (L97): single-name DAILY TSMOM with funding used strictly as a HOLD VETO (not harvested carry), same mechanism as the promoted EthDailyTsMomFundingCarryVetoLS sibling (OOS Sharpe ~1.06), applied to a deliberately under-tested major (BNB).

Backtest Review

Real edge above costs: avg_trade_return_pct 2.77% (>> 0.15% Binance USD-M floor), profit_factor 1.41, commission only 2.32% of gross and impact only 3.36% — not fee/impact fragile. Capacity $88M is deployable.

Backtest Review

Decisive, reliable sample: 160 trades over 6.5 years (2020-2026) of daily bars, metrics_reliable=true. Sharpe 0.64, Sortino 1.01, CAGR 17.4%, positive alpha 0.065 with low beta 0.153.

Backtest Review

Regime breadth: only_one_regime=false — calm (+56.9%), normal (+7.0%) and stressed (+65.9%) terciles are ALL positive; edge is not confined to one vol regime.

Backtest Review

Trades faithfully implement the hypothesis: 160 signaled = 160 submitted, balanced 87 long / 73 short, funding as veto not cash-flow (correctly NOT the dead delta-neutral carry class).

Backtest Review

max_drawdown 39.5% is above ETH sibling's 26.8% and above the 20% intraday tripwire — but L97 explicitly says NOT to apply that tripwire to low-turnover daily-hold TSMOM (160 trades, 12.8d avg hold); still under the 50% hard line (L19). Watch this in optimization vs the hypothesis DD budget.

Backtest Review

QA's concern is borne out directionally: short leg weaker (short_win_rate 0.38 vs long 0.48) and the 'normal' vol tercile is nearly flat (Sharpe 0.25). Short leg still contributes (73 trades, book net-positive in all regimes), but the short side is the soft spot to probe.

Backtest Review

Two negative calendar years (2022 -11.9%, 2023 -5.7%) — trend-follower give-back in chop, expected but flags the positive-years soft floor to check after WF.
Strategy report

Backtest and paper results are hypothetical. Trading involves risk of loss.