Skip to content
All strategies

Strategies

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)

Outcome: Abandoned

BnbDailyTsMomFundingCarryVetoLS

Outcome Summary

BnbDailyTsMomFundingCarryVetoLS tested whether the ETH funding-carry-veto time-series momentum design works on BNB, a heavily under-tested major. The initial backtest cleared the fee floor easily, and the backtest review sent it to optimization while flagging the losing short leg, the 42.9% drawdown and the profit concentrated in 2021. Walk-forward validation then showed almost no out-of-sample edge (pooled Sharpe 0.07, 1 of 4 windows positive), and no parameter set met the 25% drawdown limit. After one iteration the analyst abandoned it, finding no legitimate iteration path.

Hypothesis

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……Show moreShow less

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).

Scope: this verdict covers the funding-veto time-series momentum design (56-day sign, long-short, chandelier stop) carried over to BNBUSDT USD-M daily. It is not a verdict on the ETH sibling. Fees are not the cause: the average trade is 1.80% against the 0.15% floor and profit factor is 1.32. The failed gates are out-of-sample consistency and the pre-registered drawdown limit. Pooled walk-forward OOS Sharpe is 0.07 (t 0.14) over about 4 years and 122 trades, and only 1 of 4 windows is positive. No parameter set……Show moreShow less

Scope: this verdict covers the funding-veto time-series momentum design (56-day sign, long-short, chandelier stop) carried over to BNBUSDT USD-M daily. It is not a verdict on the ETH sibling. Fees are not the cause: the average trade is 1.80% against the 0.15% floor and profit factor is 1.32. The failed gates are out-of-sample consistency and the pre-registered drawdown limit. Pooled walk-forward OOS Sharpe is 0.07 (t 0.14) over about 4 years and 122 trades, and only 1 of 4 windows is positive. No parameter set met the 25% drawdown limit, and the full-history drawdown is 42.9% (Calmar 0.28). 2021 carries 65% of the profit. The short leg lost $54.7k while longs made $170.9k. BNB buy-and-hold returned about +2,750% with a 70% drawdown; the strategy returned +116% with a 43% drawdown (information ratio -0.90). The holdout (Sharpe 0.76, 29 trades) is positive but not significant. All three tunables were unstable across windows. The sizing values are frozen in the contract, and dropping the losing shorts would change the direction, which makes it a new hypothesis, so there is no legitimate iteration path.

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.

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……Show moreShow less

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().

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.

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.

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

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.

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

Sharpe
0.61
Total return
116.23%
Max drawdown
42.93%
Trades
162
Win rate
45.1%
Profit factor
1.34

The sample is reliable: 132 closed trades over 1,953 development days (72 long, 60 short), about 2 a month, which fits a 56-day daily TSMOM with a chandelier stop.

Economics clear the fee floor easily: the average trade is 2.02% of notional against the 0.15% BINANCE USD-M floor. Profit factor is 1.30, Sharpe 0.58, total return +79.6% (CAGR 11.6%), and commissions were $7.8k.

The trades match the hypothesis: longs and shorts follow the sign of the 56-day return, sizes are vol-scaled (the first trade ran at 0.36x leverage), exits come from the chandelier stop or a sign flip, and funding acts only as a hold veto. Sizing never goes above 1x equity, which meets the signal-exit plus capped-sizing risk control (worst trade -$15.4k).

QA's concern is borne out. In the trade ledger, longs made +$131.0k and shorts lost -$52.3k (short win rate 0.38 vs 0.51 for longs). The short leg is a net drag, not a contributor. Dropping shorts would change the direction, which is not an allowed amendment, so the walk-forward must decide whether the long-short design holds up.

Benchmark: buy-and-hold BNB over the same window returned about +2,498%, with a 70.3% drawdown. The strategy's 42.9% drawdown is 0.61x that, just under the 0.7x beta-shape line. Its return is a small fraction of buy-and-hold, so any edge has to come from risk reduction, not raw return.

Max drawdown of 42.9% is well above the 20% futures default. Recovery took 1,504 days, and Calmar is 0.27.

The profit is concentrated: 2021 contributed +60.9% (February 2021 alone +60.5%), against -13.2% in 2022 and -4.5% in the first half of 2025. Stress windows were mostly negative (China ban -17.5%, FTX -10.8%).

Analysis

Average trade 1.80% against the 0.15% floor; profit factor 1.32; impact 3.9% of gross

Accounting is valid; worst trade lost 6.9% of equity; largest position was 84% of equity

Holdout Sharpe 0.76, consistent with OOS but not significant (t 0.86)

Pooled OOS Sharpe 0.07, with 1 of 4 windows positive

Drawdown 42.9% against the pre-registered 25%; no parameter set met the drawdown limit

2021 carries 65% of the profit

Shorts lost $54.7k

Information ratio vs buy-and-hold is -0.90; drawdown is 0.61x BNB's

All three tunables were unstable across windows; mom_days has a cliff between 70 and 84

Outcome Summary

A funding-veto TSMOM recipe that survived on ETH did not carry over to BNB: a strong full-history result driven by one year (2021) and a loss-making short leg should be read as a warning before optimization, not just noted.

The analyst abandoned it after optimization because it failed out-of-sample consistency and the pre-registered 25% drawdown limit, which no parameter set met. Fees were not the problem. 2021 carried 65% of the profit, the short leg lost $54.7k, and all three tunables were unstable across windows. Dropping shorts would change the direction, which makes it a new hypothesis, so there was no legitimate iteration path.

A long-short daily trend follower on BNBUSDT USD-M perp that trades the sign of the ~56-day trailing log return. It sizes positions by inverse volatility, exits on a Chandelier ATR stop or a sign flip, and uses funding only to veto holding a position into persistently adverse carry. It was a port of the ETH funding-veto TSMOM survivor to BNB.

Over the full 2020-02 to 2026-10 history it returned +116.2% (CAGR 12.2%) with Sharpe 0.61, 162 trades, an average trade of 1.87% of notional, profit factor 1.34 and a 42.9% max drawdown. Out of sample, the pooled walk-forward Sharpe was only 0.07 (t 0.14) with 1 of 4 windows positive; the holdout Sharpe of 0.76 over 29 trades was not significant.

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