Skip to content
All strategies

Strategies

ETH Perp Funding-Settlement Reversion (Single-Instrument USD-M, 1H, Long-Short, Calendar-Mechanical Edge)

Outcome: Abandoned

EthFundingSettlementReversionLS

Outcome Summary

EthFundingSettlementReversionLS was the portfolio's first calendar/seasonality attempt, fading a hypothesized pre-settlement price overshoot on ETH 1H using funding purely as a gating signal, deliberately built on the two confirmed-dense feeds (OHLCV + funding) and the clean single-instrument USD-M path to dodge every structural blocker of the session. The backtest was clean and dense (3,860 trades over 1,553 days), which made its verdict unambiguous rather than noisy: the strategy lost money in all seven calendar years, with Sharpe -2.53 (entire CI below zero), profit factor 0.78, a 41% never-recovered drawdown, and commissions eating 20% of gross. The long/short imbalance directly falsified the thesis, with the dominant post-positive-funding 'buy the rebound' leg driving the losses. The analyst abandoned it at the backtest-review gate, concluding the post-settlement reversion edge simply does not exist in any regime and that the calendar family is fee-fragile on a single liquid major at 1H.

Hypothesis

A long-SHORT, SINGLE-INSTRUMENT, single-venue, CALENDAR-MECHANICAL reversion strategy on ETHUSDT.BINANCE USD-M perpetual futures using 1-HOUR bars, exploiting the fixed funding-settlement clock (00:00 / 08:00 / 16:00 UTC). Funding is used only as a gating SIGNAL (never credited as a cash flow). Thesis: when funding is large in magnitude, the side that owes the payment (longs when funding is positive) trims exposure in the hours APPROACHING settlement to avoid the fee, creating mechanical, information-free selling……Show moreShow less

A long-SHORT, SINGLE-INSTRUMENT, single-venue, CALENDAR-MECHANICAL reversion strategy on ETHUSDT.BINANCE USD-M perpetual futures using 1-HOUR bars, exploiting the fixed funding-settlement clock (00:00 / 08:00 / 16:00 UTC). Funding is used only as a gating SIGNAL (never credited as a cash flow). Thesis: when funding is large in magnitude, the side that owes the payment (longs when funding is positive) trims exposure in the hours APPROACHING settlement to avoid the fee, creating mechanical, information-free selling pressure that OVERSHOOTS price just into the settlement bar; immediately AFTER settlement that flow reverses (positions re-established, payment-collectors take profit), producing a short-lived reversion. Because the dip is caused by a calendar clock rather than by negative information, it reverts cleanly — the opposite skew profile to the information-driven 'buy-the-dip' dips that repeatedly failed this session. This is the first calendar/seasonality mechanism in the portfolio (1140 experiments), and it deliberately avoids EVERY structural blocker hit this session: it uses ONLY OHLCV + funding_rate (the two feeds confirmed dense across the full history — unlike liquidations/options/IV which cover only ~1 recent month), runs on the clean single-instrument USD-M MARGIN path (no BINANCE_SPOT CASH metric/fill bug, no COIN-M, no options-data wall), is NOT cross-venue/Hyperliquid (no basis artifact), NOT a multi-instrument pair (no extra-leg feed bug), NOT funding-carry (P&L is price-based and fully creditable), and NOT a price-breakout or dip-MR (the failed families). It fills the two most under-represented quotas simultaneously — long-short (14.4% vs heavy 85.6% long-only) and short-horizon (2.4% vs 10% target) — and is kept to ~4 parameters to resist overfitting.

Iteration 2 fixes the Layer-3 'No trades produced over 56300 evaluated bars' failure. Root cause: _build_funding rejected every funding key with 'if not isinstance(k, int): continue', but funding_rates is delivered as a JSON object whose keys stringify across the backtest subprocess (the documented dual int/str ns keys both arrive as strings), so the int-only filter dropped the entire series -> _fund_map empty -> _latest_settlement always returned (None, 0.0) -> should_enter could never pass its settlement gate.……Show moreShow less

Iteration 2 fixes the Layer-3 'No trades produced over 56300 evaluated bars' failure. Root cause: _build_funding rejected every funding key with 'if not isinstance(k, int): continue', but funding_rates is delivered as a JSON object whose keys stringify across the backtest subprocess (the documented dual int/str ns keys both arrive as strings), so the int-only filter dropped the entire series -> _fund_map empty -> _latest_settlement always returned (None, 0.0) -> should_enter could never pass its settlement gate. The minimal fix parses each key with int(k) inside a try/except, accepting both int and str ns keys (and collapsing the dual keys to the same ns value) exactly as the landed funding strategies do, so the funding map populates, settlements are found at the 00:00/08:00/16:00 UTC events, and the post-settlement entry window fires whenever |funding| >= threshold. Nothing else changed: the settlement lookup (causal bisect), the once-per-settlement post-settlement window gate, the long-short fade direction, the continuous funding+price signal, the time/stop exits, and the capital-relative sizing are byte-identical, so Layers 1-2 stay green and the strategy now produces trades. funding_threshold 0.0001 (~1bp/8h) is regularly exceeded by ETH funding, giving ample trade frequency over the multi-year window for a 3-window walk-forward; funding remains a gating signal only (no cash-flow crediting), single-instrument single-venue USD-M, leverage 1.0.

Premise falsified by its own dense backtest: the post-funding-settlement reversion on ETH has NO edge in any regime — negative every single year (2020 -16.3% through 2026 -0.5%), Sharpe -2.53 with the entire CI below zero (-3.33 to -1.76), profit factor 0.78, negative avg_trade_return, and commission at 20.11% of gross. This is not a sparsity or data-gap failure (3,860 trades / 1,553 days), so the consistent loss is a real verdict on the mechanism, not noise or under-sampling. Optimization cannot help — there is……Show moreShow less

Premise falsified by its own dense backtest: the post-funding-settlement reversion on ETH has NO edge in any regime — negative every single year (2020 -16.3% through 2026 -0.5%), Sharpe -2.53 with the entire CI below zero (-3.33 to -1.76), profit factor 0.78, negative avg_trade_return, and commission at 20.11% of gross. This is not a sparsity or data-gap failure (3,860 trades / 1,553 days), so the consistent loss is a real verdict on the mechanism, not noise or under-sampling. Optimization cannot help — there is no positive window to tune toward, and the parameters (funding_threshold, hold_bars, entry_window_hours) cannot manufacture an edge from a signal that is negative everywhere; a best-of-225 sweep would at most fit a 2026-flat artifact. Inverting the signal to momentum/continuation is a different hypothesis, not a parameter fix, and is structurally blocked by the same ~20% fee drag on a thin calendar move (commission is paid regardless of trade direction). FAILURE PATTERN: short-horizon calendar-mechanical reversion around the funding-settlement clock produces a high-frequency, fee-heavy strategy (3,860 trades, 20% commission-of-gross) with no gross edge — the hypothesized pre-settlement overshoot either does not exist or is momentum rather than reversion, yielding a deeply negative Sharpe whose entire confidence interval sits below zero and a loss in all seven calendar years. The first calendar/seasonality attempt in the portfolio confirms the family is fee-fragile on a single liquid major at 1H.

Implementation

Long-short single-instrument calendar-mechanical funding-settlement reversion on ETHUSDT.BINANCE USD-M perpetual, 1-hour bars. Funding is used only as a gating signal (never credited): in the hours just after a funding settlement (00:00/08:00/16:00 UTC), when the most-recent settlement's |funding| exceeds the threshold, it fades the pre-settlement fee-avoidance flow once per settlement -- BUY after positive-funding settlements (price was pushed down), SELL after negative-funding ones (price was pushed up). It exits on a 3-bar time stop or a 1.5% protective stop. P&L is purely price-based; OHLCV + funding_rate only, leverage 1.0. ~5 parameters.

Verification Results

Verification failed (Layer 3 — sandbox backtest): No trades produced Bar type used: ETHUSDT.BINANCE-1-HOUR-LAST-EXTERNAL, Bars processed: 56304 Diagnostics: should_enter() returned a side 0 times over 56300 evaluated bars -> your ENTRY CONDITION never triggered. Loosen the entry logic / thresholds. Ensure your strategy produces trades with the given data and parameters.

Backtest Review

Sharpe
-2.53
Total return
-41.35%
Max drawdown
41.87%
Trades
3860
Win rate
46.0%
Profit factor
0.78

Clean execution: 3,860 trades over 1,553 days, dense sample, no data-gap or sparsity issue, uses only the two confirmed-dense feeds (OHLCV + funding_rate)

Single-instrument USD-M path is structurally sound — none of the cross-venue/multi-leg/options-data blockers apply

Negative in EVERY year (2020 through 2026) — the post-settlement reversion edge does not exist in any regime

Sharpe -2.53 with the entire 95% CI below zero (-3.33 to -1.76); Sortino -3.17; profit factor 0.78; recovery factor -0.99

avg_trade_return negative; commission is 20.11% of gross — even a signal flip cannot clear this fee load on a thin calendar move

max_drawdown 41.9% with a 2,333-day underwater duration (never recovers); total_return -41.35%

Direction imbalance (3,695 long / 165 short) shows the dominant funding-positive 'buy the rebound' leg is the main loss source, directly falsifying the thesis

negative 7/7 years

majority positive

Outcome Summary

Short-horizon calendar-mechanical reversion around the funding-settlement clock is fee-fragile on a single liquid major at 1H — the hypothesized pre-settlement overshoot either does not exist or is momentum rather than reversion, and a high-frequency strategy paying 20% of gross in commission cannot manufacture an edge from a signal that is negative everywhere.

On its second iteration the analyst issued an 'abandon' verdict at the pre-optimization backtest-review gate, so optimization, full analysis, and risk review never ran: with no positive window in any regime and a ~20% fee drag paid regardless of direction, there is no edge for parameters to surface and even a signal flip could not clear the commission load on such a thin calendar move.

A long-short, single-instrument calendar-mechanical reversion on ETHUSDT.BINANCE USD-M 1H perpetual futures that used funding only as a gating signal (never as carry) to fade a hypothesized pre-settlement overshoot — buying just after settlement when funding was positive (longs had trimmed to dodge the fee) and selling when funding was negative — expecting the calendar-driven, information-free flow to revert cleanly.

On a dense sample (3,860 trades over 1,553 days) the premise was outright falsified: it lost money in every year 2020-2026, Sharpe -2.53 with the entire CI below zero (-3.33 to -1.76), Sortino -3.17, profit factor 0.78, negative avg trade return, 41.9% max drawdown with a 2,333-day underwater duration, total return -41.35%, and commission at 20.11% of gross; the 3,695-long / 165-short imbalance showed the dominant 'buy the rebound' leg was the main loss source.

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