BL-SD-013: Pairwise Cointegration Stat-Arb
BIJECTIVE LABS
BL-SD-013: Pairwise Cointegration Stat-Arb
Status: RELEASED
Classification: PUBLIC
Revision: 1
Date: 2026-09-07
Venue: Bybit Programme: I Verdict: FALSIFIED Axis of death: Data, then idea Transferability: UNIVERSAL
1. Identification
| Field | Value |
|---|---|
| Internal code | B, Strategy B, cointegration_shadow |
| Family | Pairwise cointegration mean reversion |
| Venue | Bybit perpetuals |
| Programme | I |
| Pre-registered | Not pre-registered before initial deployment; the falsifying decision rule was fixed on 2026-06-25, before the walk-forward result was seen |
| Verdict issued | 2026-06-25 |
| Pre-registration document | Decision rule stated in the docstring of the walk-forward instrument, BL-IS-003, dated 2026-06-25 |
| Verdict document | D-009 |
Strategy B was already live before the discipline this record now enforces was in place. It had accumulated 105 shadow trades under a backtest claim of positive expectation before anyone tested whether that claim survived removing a look-ahead term. This dossier is the record of that test.
2. Economic thesis
Two instruments whose prices are cointegrated share a long-run equilibrium relationship; when their price spread, adjusted by a fitted hedge ratio, diverges from its historical mean, a position betting on reversion to that mean is opened, and closed when the spread reverts.
Who is forced to lose. The original design record does not name one. It argues from a statistical property of the price panel, cointegration, rather than from a mechanism that compels a counterparty to transact against their own interest. This is a defect of the original thesis, not an omission in this retelling, and it is the reason this hypothesis appears in the later Bybit post-mortem under the failure class "statistics without mechanism" alongside three other reversion theses that failed the same way.
3. Falsifiable claim
No pre-registration statement predates the strategy's initial deployment. The decision rule that settled this hypothesis was fixed in the walk-forward harness before its result was seen, and is reproduced here from the instrument's own documentation:
If the walk-forward net expected value is at or below zero, or its t-statistic is below 2, across the configurations tested, the positive expectation reported by the original backtest is a look-ahead artifact and the cointegration edge does not persist out of sample. Retire the strategy.
| Metric | Threshold | Decision if crossed |
|---|---|---|
| Walk-forward NET, pooled | at or below 0 | Confirms look-ahead artifact; retire |
| Walk-forward t-statistic | below 2 | Confirms look-ahead artifact; retire |
| Stricter pair selection (higher correlation, shorter half-life) | still fails | Failure is mechanism, not selection quality |
4. Mathematical specification
Notation per BL-D-011. Pair (i, j) drawn from a liquid Bybit perpetual panel.
THE DEFECT, as it was run (in-sample construction):
beta_full, alpha_full = OLS( log p_i , log p_j ) fitted on the ENTIRE panel [0, T]
spread_t = log p_{i,t} - beta_full * log p_{j,t} - alpha_full for every t in [0, T]
z_t = ( spread_t - mean(spread[t-w:t]) ) / std(spread[t-w:t])
Every spread_t for t < T is a function of beta_full, which is itself a
function of observations at every t up to and including T. spread_t is
therefore measurable with respect to F_T, not F_t, for any t < T.
THE CORRECTION, causal construction:
beta_t(L), alpha_t(L) = OLS( log p_i, log p_j ) fitted on the trailing window [t-L, t-1] ONLY
spread_t = log p_{i,t} - beta_t(L) * log p_{j,t} - alpha_t(L)
mu_t(L), sigma_t(L) = mean and std of the fitting window's own spread, [t-L, t-1]
z_t = ( spread_t - mu_t(L) ) / sigma_t(L)
A position opened at entry time t0 is hedged at beta_{t0}(L), frozen for the
life of the trade. Exit is evaluated against the entry-time mu_{t0}(L) and
sigma_{t0}(L), never refitted mid-trade.
entry: fire at t when |z_t| >= 2.0; direction = -sign(z_t) [fade the divergence]
exit: |z_t| <= 0.5 (reversion), or |z_t| >= 3.5 (stop), or hold >= max_hold bars
sizing: one unit each leg, dollar-neutral pair
cost: c_rt = 11.0 * (1 + beta_t(L)) bps + leg_spread [two-leg taker round trip]beta_full versus beta_t(L) is the entire defect, and it is visible as a
subscript rather than as a difference in prose. Only the causal construction
satisfies BL-D-011 section 3. The in-sample construction is presented here
because it is what generated the reported return that justified the strategy,
not because it was ever a valid specification.
5. Operating envelope
| Parameter | Value for this measurement |
|---|---|
| Round-trip cost assumed | 11.0 * (1 + beta) bps fee plus a per-leg spread of 6.0 bps in the walk-forward harness |
| Execution channel | Crossing on both legs, taker to taker |
| Latency band | Cold path; four-hour bar cadence renders latency immaterial |
| Measurement cadence | Four-hour candles |
| Capital scale | Programme default, BL-FM-002 section 6 |
| Venue and instruments | Bybit USDT perpetuals; live universe was movement-selected microcaps, the walk-forward test used a broad curated liquid panel, top 60 by volume at or above 13,000,000 USD, excluding BTC, ETH, commodities, and tokenized stocks |
| Data era | Live shadow accumulated through 2026-06-25; walk-forward panel of approximately 700 four-hour bars fetched the same day |
6. Instrument
The original in-sample pre-screen, dated 2026-06-11, was superseded by this
measurement. BL-IS-003, the correcting walk-forward instrument, dated
2026-06-25, restricted pair selection to a training slice, froze the hedge
ratio at entry, and applied a cost model aligned to live economics.
| Property | Value |
|---|---|
| Pair selection gates | Absolute correlation at or above 0.72, hedge beta in [0.3, 3.0], spread half-life in [1, 25] bars, an out-of-sample drift check on a 70/30 split of the training slice |
| Inference | Per-trade mean, median, and t-statistic, pooled across pairs |
| Null | None separate from the sign and magnitude of the walk-forward result itself |
The inference method is a per-trade t-statistic rather than the per-timestamp
portfolio-collapse block bootstrap that BL-D-011 section 5 later establishes
as standard for this substrate. This measurement predates that correction and
the record states the method used rather than reconstructing a corrected
figure that was never run. Given a walk-forward t-statistic as low as -5.9,
the correction would not plausibly reverse the sign of the verdict, but that
is a judgement stated here, not a re-measurement.
7. Results
| Arm | n | NET (bps) | t | Win rate | Result |
|---|---|---|---|---|---|
| Live shadow, all trades | 105 | -25.5 | not reported | 38 pct | Divergent trades overwhelm reverted trades |
| Live shadow, clean crypto-only subset | 79 | -6.4, median -34 | not reported | 44 pct | Dirty subset with stock or commodity legs measured -105 separately |
| Backtest, in-sample beta_full | not reported in the source | +180.0 | not reported | 80 pct | The look-ahead artifact that justified deployment |
| Walk-forward, beta_t(L), max_hold 12 bars | not preserved in the narrative source | -55.0 to -68.0 across configurations | -4.00 to -5.90 | 33 to 37 pct | FAIL, every configuration tested |
| Walk-forward, stricter selection (corr 0.78, half-life 15) | not reported | worse than the base configuration | not reported | not reported | Tightening the filter does not rescue it |
| Walk-forward, stricter still (corr 0.82, half-life 10) | not reported | worse again | not reported | not reported | Same direction |
The sample size for each individual walk-forward configuration is not preserved in the narrative decision record; only the range of point estimates and t-statistics survives. That absence is reported here rather than reconstructed.
8. Verdict, axis of death, and transferability
Verdict: FALSIFIED. Axis: data, then idea. Transferability: UNIVERSAL.
The axis is compound because the failure was discovered in two layers. The first layer was a data-construction defect: the reported edge was an artifact of fitting the hedge ratio on the full sample and trading on that same sample. Once that defect was corrected, the second layer was exposed: the true, causal relationship is negative in sign. Pairs of liquid crypto perpetuals diverge roughly two and a half times more often than they revert once only past information is used to fit the hedge ratio.
This is a mechanism failure, not a cost failure. Even at zero round-trip cost, a walk-forward return between -55 and -68 basis points, at t-statistics between -4.0 and -5.9, does not turn positive. No envelope substitution rescues a relationship whose sign is wrong once look-ahead is removed, which is why the transferability classification is universal rather than envelope-bound, notwithstanding the data-construction origin of the finding.
9. Cost and capacity analysis
Cost is embedded in the walk-forward net figures already reported and is not separable from them in the source. The qualitative cost statement that matters is structural rather than a fee-schedule figure: the spread diverges roughly two and a half times more often than it reverts under causal fitting, which no realistic fee schedule reverses. Capacity was never measured. The strategy was retired on the mechanism finding before frequency or size became a live question.
10. Envelope sensitivity and reopening conditions
No binding parameter exists to name, because the finding is a sign reversal under causal fitting, not a magnitude shortfall against cost.
Reversal condition: none computable.Tightening pair selection, which is the lever an outside reader would try
first, makes the result worse rather than better. That rules out the
interpretation that a better-quality pair set would have survived. BL-D-002
section 4 asks whether the result would be positive under arbitrarily
favourable envelope parameters; here it would not, because the defect is in
the direction of the underlying price relationship rather than in the margin
available to trade it.
What would reopen it: none identified. The subsequent Bybit strategy redesign explicitly rejected reviving cross-sectional reversion, cross- sectional momentum, funding carry, and pairwise cointegration together, on the grounds that each was falsified out of sample with a method that was already correct, and no new data changes that premise.
What would not reopen it: a different fee tier or execution channel. The sign of the relationship, not the cost of trading it, decided this result.
11. Reference implementation
Two implementations are published, and the pair is the exhibit.
The corrected instrument, BL-IS-003, is
05_INSTRUMENTS/src/walk_forward.py. The original in-sample pre-screen is
05_INSTRUMENTS/strategies/python/src/cointegration_prescreen.py, with 23
tests, retained specifically as a negative exhibit rather than as a validated
tool. Its entry points refuse to run without an explicit look-ahead
acknowledgement, because section 11 of an earlier revision said this was not a
validated tool and a sentence in a document does not stop anybody importing a
function.
The pre-screen's module docstring locates the leak precisely, and it is two independent channels rather than one. Parameter leakage: the hedge ratio is fitted across the whole panel, so the spread the simulation walks could only have been constructed after the last bar printed. Selection leakage: three of the four candidate filters read whole-panel statistics, so a pair enters the traded universe because of behaviour that includes the period being simulated. Repairing the first leaves the second.
The held-out stability gate in the pre-screen is worth a reader's attention. It genuinely holds out a tail and checks it for drift and for mean crossings, which is why the design looked defensible at review. It governs candidate selection only. The beta the simulation trades is still the whole-panel one, so a partial control on one channel read, to a reviewer, as a control on the design.
The published test suite measures the leak rather than asserting it. Two independent random walks, between which no cointegration exists, are handed to both implementations at the same thresholds and the same cost. The pre-screen reports a net edge above +50 basis points; the corrected harness on the same two series reports a negative one. That is this dossier's +180 against -60 reproduced from first principles, on data whose true edge is known to be zero.
The live shadow-trading engine is described in section 4 rather than published: it is a deployment wrapper around the same fitting rule, and what a reader needs to check this verdict is the fitting rule.
12. Evidence register
| Related artifact | Carries |
|---|---|
| None assigned | This measurement rests on the narrative decision record and the incident note rather than an emitted machine-readable artifact, and is registered as D-009 in BL-A-006 |
13. Lessons extracted
This is the worked example cited in BL-D-011 section 1: a strategy
described in prose can hide a look-ahead violation indefinitely, and the same
defect written as an equation is a single visible subscript. It survived
review, implementation, and a live deployment that lost 25.5 basis points
before the walk-forward harness caught it.
The walk-forward harness produced from this incident, BL-IS-003, was
declared a permanent, mandatory validation instrument for any future
mean-reversion or momentum strategy on this substrate, and it is the
instrument that later settled BL-SD-014.
14. Cross-references
BL-IN-003 for the full incident narrative. BL-D-011 sections 1 and 3 for
the causality constraint this hypothesis violated. BL-D-009 for the rule
produced. BL-SD-014 for the inverse hypothesis tested through the same
corrected harness. BL-SD-000 ledger row COINT.
Copyright (c) 2026 Bijective Labs. All rights reserved.