Strategies
SOL cross-venue perpetual residual convergence
Outcome: Abandoned
SolCrossVenueResidualConvergence
Outcome Summary
The strategy tried to trade convergence between Bybit and OKX SOL perpetuals after a rolling residual screen. Its sandbox smoke test lost 3.04%. After three iterations, QA found an entry cost issue and a risk of leaving one leg exposed, so the run was abandoned during verification. The required outbox file could not be written because the workspace is read-only.
Hypothesis
Adapt the source's correlation and cointegration screen to SOLUSDT.BYBIT and SOLUSDT.OKX on synchronized 1-hour bars. Fit a 90-day rolling residual model using completed bars and refresh it monthly. Trade only when correlation is at least 0.98 and the residual ADF statistic is below -3.34. Match SOL exposure across the long and short legs; cap combined gross exposure at 20% of equity.
Removed an added 0.55% dislocation floor that prevented all entries and reduced the configurable residual threshold to 1.5 standard deviations. Correlation and ADF screens remain unchanged. The required outbox file could not be written because the workspace is read-only.
verification_loop: Verification failed (Layer 4 — QA review) [class=code_defect]: - [edge_concern] The sandbox lost 3.04%, but that smoke test cannot establish profitability. - [critical] The zero minimum dislocation permits entries whose expected spread convergence cannot cover the approximately 0.21% combined Bybit and OKX taker round-trip cost, before slippage. (line 179) — fix: Require a fee-aware minimum expected spread move, while retaining the z-score trigger. - [critical] After pair_fault is set, _flatten_pair refuses further cleanup. An entry that fills after cancellation can leave one leg exposed because subsequent fill callbacks cannot trigger another flatten. (line 107) — fix: Recheck and flatten both venues after every relevant order or position event until all entry orders are closed and both positions are flat.
Implementation
Monthly refreshed 90-day SOL Bybit–OKX residual convergence model on synchronized hourly bars, with equal-quantity opposing legs and 20% combined gross exposure cap.
Verification Results
Verification failed (Layer 4 — QA review) [class=code_defect]: - [edge_concern] The sandbox lost 3.04%, but that smoke test cannot establish profitability. - [critical] The zero minimum dislocation permits entries whose expected spread convergence cannot cover the approximately 0.21% combined Bybit and OKX taker round-trip cost, before slippage. (line 179) — fix: Require a fee-aware minimum expected spread move, while retaining the z-score trigger. - [critical] After pair_fault is set, _flatten_pair refuses further cleanup. An entry that fills after cancellation can leave one leg exposed because subsequent fill callbacks cannot trigger another flatten. (line 107) — fix: Recheck and flatten both venues after every relevant order or position event until all entry orders are closed and both positions are flat.
Iteration History
Verification failed (Layer 3 — sandbox backtest): No trades produced Bar type used: SOLUSDT.BYBIT-1-HOUR-LAST-EXTERNAL, Bars processed: 19993 Diagnostics: should_enter() returned a side 0 times over 19974 evaluated bars -> your ENTRY CONDITION never triggered. Loosen the entry logic / thresholds. Ensure your strategy produces trades with the given data and parameters.
Outcome Summary
Require a fee-aware minimum spread move and continue checking both legs until orders are closed and positions are flat.
After three iterations, Layer 4 QA failed verification because entries could target moves below the approximately 0.21% combined taker round-trip cost, and a late fill could leave one leg exposed. Later stages were not reached.
It sought convergence between Bybit and OKX SOL perpetual prices using synchronized hourly bars and matched long and short exposure.
The sandbox smoke test lost 3.04%. No return, Sharpe, or trade count was provided in a backtest report.
Abandon Reason
verification_loop: Verification failed (Layer 4 — QA review) [class=code_defect]: - [edge_concern] The sandbox lost 3.04%, but that smoke test cannot establish profitability. - [critical] The zero minimum dislocation permits entries whose expected spread convergence cannot cover the approximately 0.21% combined Bybit and OKX taker round-trip cost, before slippage. (line 179) — fix: Require a fee-aware minimum expected spread move, while retaining the z-score trigger. - [critical] After pair_fault is set, _flatten_pair refuses further cleanup. An entry that fills after cancellation can leave one leg exposed because subsequent fill callbacks cannot trigger another flatten. (line 107) — fix: Recheck and flatten both venues after every relevant order or position event until all entry orders are closed and both positions are flat.
Analysis
Intraday Dynamic Pairs Trading using Correlation and Cointegration Approach
Backtest and paper results are hypothetical. Trading involves risk of loss.