Strategies
Howtrader PCP Arbitrage — Frozen Three-Leg ETH Parity-Spread Port
Outcome: Abandoned
HowtraderEthPcpArbitrage
Outcome Summary
HowtraderEthPcpArbitrage translated an MIT-licensed howtrader put-call-parity strategy into a three-leg ETH trade: a Binance call/put synthetic forward against a Bybit perpetual. After one iteration the run was held in data review because an input was unavailable. The hold lasted 514 h against a 144 h limit, expired unresolved, and the run was abandoned before any backtest metrics, backtest review, optimization, analyst or risk review were produced. The abandonment reflects the data problem, not the strategy's merit, and the run can be revived once the data is fixed.
Hypothesis
Faithful signal and order-target translation of PcpArbitrageStrategy by 用Python的交易员, MIT licensed, at commit fcad8e2d86825506b9d33441ab78be853c2c3bdd. Preserve entry_level=20, price_add=5 and fixed_size=1 exactly. Use one-minute last-trade bars for a same-strike, same-expiry Binance call/put pair and a Bybit linear ETH perpetual. The perpetual replaces the source's unspecified futures contract; consequently this tests synthetic-forward versus perpetual spread convergence, not a maturity-matched, risk-free parity arbitrage. All three prices are USDT per ETH. Adapt only symbol parsing, contract multipliers and equity-relative sizing. The two option instruments exist in the local catalog; Bybit bars may be collected on demand. Preserve limit orders, persistent targets and futures-position-based branching; do not add indicators, entry filters, stops or signal-reversal rules. Source performance is unverified.
A seeded strategy must be tested faithfully rather than rejected on anticipated performance. This three-leg options mechanism differs from the supplied failed momentum and relative-strength strategies and adds options, cross-venue and bidirectional exposure. Options represent approximately 4.9% of experiments versus the 15% target; cross-venue strategies represent 7.8% versus 15%. Corpus concentration was empty, so instrument-level concentration could not be assessed. ETH avoids another BTC-only experiment. The source does not specify a futures expiry, so the perpetual substitution is explicit and its funding and term-basis risks must remain visible.
hold_expired: data_review:input_unavailable held 514 h, past its 144 h limit, unresolved (owner: data). Not a verdict on the strategy; revivable once resolved. Recommended: fix the stream or the audit; close only with positive evidence the data cannot exist
Implementation
Frozen three-leg ETH parity-spread port: short call, long put and long perpetual above +20 USDT; opposite legs below -20. Futures-position-based zero-crossing exits zero all targets. Persistent limit targets are canceled and re-quoted each synchronized minute at close plus/minus 5 USDT.
Preserves the source spread, strict entry thresholds, persistent targets, futures-position branching and call/put/futures order sequence without added indicators, stops or reversal filters. One source unit maps to 3% of combined venue equity in aggregate gross underlying exposure, equally distributed across the matched three ETH legs and frozen per episode. The perpetual substitution adds funding and maturity-basis risk; this is convergence trading rather than risk-free parity. The research evaluation plan supplies the one-day historical replay.
Outcome Summary
Before coding a multi-venue options strategy, confirm that every leg's data (here the option pair plus Bybit perpetual bars collected on demand) is available and passes the input audit, so the run does not stall in a data hold.
The run sat in a data_review:input_unavailable hold for 514 h, past its 144 h limit, and the hold was never resolved (owner: data), so it expired and the run was abandoned. The pipeline record says this is not a verdict on the strategy and the run can be revived once the input data issue is resolved.
A faithful port of howtrader's PcpArbitrageStrategy (entry_level=20, price_add=5, fixed_size=1) that traded the spread between a synthetic forward (same-strike, same-expiry Binance ETH call minus put plus strike) and a Bybit linear ETH perpetual on one-minute bars using limit orders, betting that the spread converges rather than claiming a maturity-matched risk-free parity arbitrage.
No performance was measured: the backtest report is empty and no optimization, return, Sharpe or trade-count figures exist.
Analysis
PcpArbitrageStrategy
Analysis
pcp_arbitrage_strategy.py
Backtest and paper results are hypothetical. Trading involves risk of loss.