Strategies
Bybit Korean Equity Basket Residual Reversion
Outcome: Abandoned
BybitKoreanBasketResidualReversion
Outcome Summary
The strategy aimed to trade a cost-aware, three-leg residual using prior hourly bars. After two iterations, it failed hypothesis/config consistency verification because the optimization plan fixed leverage at 1.0. It was abandoned before backtesting or optimization, so no performance results are available.
Hypothesis
Trade EWYUSDT against SAMSUNGUSDT and SKHYNIXUSDT using synchronized 1-hour Bybit perpetual bars. Adapt the economically linked three-leg residual described at https://www.fmz.com/digest-topic/10996. The local catalog has 2,868 overlapping hourly bars from 2026-06-04 through 2026-10-01. Estimate the relationship using only prior bars; enter only when the deviation is large enough to clear costs.
This adds an underrepresented Bybit, long-short, multi-instrument mechanism. It differs from the failed dual-class share pair through its economically linked three-leg basket and a 0.45% projected-capture floor. The short history limits confidence.
verification_loop: Verification failed (Layer 1.5 — hypothesis/config consistency) [class=hypothesis_mismatch]: - optimization_plan fixes leverage at 1.0
Implementation
Trades EWY’s rolling log-price residual against synchronized Samsung and SK Hynix Bybit perpetual bars, with beta-weighted hedge legs.
The bounded regression, signal, research parameters, sizing, and exits are unchanged. The edit avoids repeated position-cache scans while the basket is flat. The timeout cause remains unverified.
Verification Results
Verification failed (Layer 1.5 — hypothesis/config consistency) [class=hypothesis_mismatch]: - optimization_plan fixes leverage at 1.0
Iteration History
sandbox_timeout: Verification failed (Layer 3 — sandbox backtest): smoke test exceeded the 300s wall-clock limit on a ~20000-bar window (833 days of EWYUSDT.BYBIT-1-HOUR-LAST-EXTERNAL). This almost always means per-bar work that scales with history — e.g. rescanning the full funding/supplementary series, or rebuilding a list and calling min()/sorted() inside calculate_signal()/on_bar() on every bar. Precompute sorted timestamp arrays ONCE in __init__ and use bisect, or cache lookups keyed by timestamp, so per-bar cost is O(log n) not O(n).
Outcome Summary
Resolve the leverage mismatch in the optimization plan before verification.
After two iterations, Layer 1.5 verification failed because the optimization plan fixed leverage at 1.0. The run was abandoned.
Trade hourly mean reversion in EWYUSDT relative to a SAMSUNGUSDT and SKHYNIXUSDT hedge basket on Bybit.
No backtest results were reported; return, Sharpe, and trade count are unavailable. Optimization was not reached.
Backtest and paper results are hypothetical. Trading involves risk of loss.