Skip to content
All strategies

Strategies

Howtrader DualThrustStrategy by 用Python的交易员: Faithful AVAX Bybit Intraday Long/Short Port

Outcome: Backtesting

HowtraderAvaxBybitDualThrust

Howtrader DualThrustStrategy by 用Python的交易员: Faithful AVAX Bybit Intraday Long/Short Port

Hypothesis

Concrete trading idea: reproduce the supplied DualThrustStrategy, credited to 用Python的交易员, using AVAXUSDT.BYBIT one-minute bars. Source: https://github.com/51bitquant/howtrader/blob/fcad8e2d86825506b9d33441ab78be853c2c3bdd/examples/strategies/dual_thrust_strategy.py . Preserve the exact source defaults fixed_size=1, k1=0.4, k2=0.6 and exit_time=14:55. This implementation uses the previous calendar day's high-minus-low, not the conventional multi-day Dual Thrust range formula. Preserve literal fixed-size quantity:……Show moreShow less

Concrete trading idea: reproduce the supplied DualThrustStrategy, credited to 用Python的交易员, using AVAXUSDT.BYBIT one-minute bars. Source: https://github.com/51bitquant/howtrader/blob/fcad8e2d86825506b9d33441ab78be853c2c3bdd/examples/strategies/dual_thrust_strategy.py . Preserve the exact source defaults fixed_size=1, k1=0.4, k2=0.6 and exit_time=14:55. This implementation uses the previous calendar day's high-minus-low, not the conventional multi-day Dual Thrust range formula. Preserve literal fixed-size quantity: one AVAX per entry or opposing stop order. This is an explicit exception to capital-relative sizing for faithful reproduction; replacing it with an equity fraction would change the submitted strategy. Use a MARGIN account with configured leverage=1.0. Platform fees are 0.020% maker and 0.055% taker per fill; all-taker round-trip cost is 0.110% of notional. The source has no performance evidence. Use UTC as the explicitly chosen platform calendar timezone because the source supplies no timezone. Preserve one-minute bar opening timestamps for its date/time comparisons by deriving them from platform close timestamps; orders are submitted only after the bar becomes available.

The user's request binds this experiment to a faithful single-symbol breakout reproduction. Bybit is underrepresented at 2.5%, and long/short addresses the portfolio's 82.8% long-only concentration. Hyperliquid minute bars cannot provide adequate historical validation. Corpus concentration is empty, so AVAX's historical experiment share cannot be verified. Do not add indicators, regime gates, profit targets or optimized thresholds to manufacture novelty.

Implementation

Faithful port of howtrader DualThrustStrategy on AVAXUSDT.BYBIT 1-minute bars: range = previous UTC calendar day's high-low; long stop at day open + 0.4*range when close > day open, short stop at day open - 0.6*range otherwise; opposite stops act as stop-and-reverse; one entry per side per day; flatten with aggressive limit (close*0.99 / close*1.01) from 14:55 UTC. Literal fixed size of 1 AVAX.

Iteration 2 fixes Layer 1.5 'optimization_plan fixes leverage at 1.0': every fixed plan parameter (k1, k2, leverage=1.0 as float, exit_hour, fixed_size, exit_minute, calendar_timezone='UTC', initialization_days, bar_interval_minutes) is now present in parameters with the exact type and value; config.leverage=1.0 and the code reads `leverage` as a mirror (no-op at 1.0; sizing stays the literal 1 AVAX per the hypothesis's explicit exception). Trading logic is unchanged from iteration 1. Caveat: 1 AVAX on $100k equity makes returns tiny relative to capital, as the hypothesis requires.

Verification Results

The smoke test reports three closed positions with average net return -0.2862% and profit factor 0.323. This small, truncated sample does not establish economic viability; assess full-history results against the stated 0.110% all-taker round-trip cost.

Iteration History

Verification failed (Layer 1.5 — hypothesis/config consistency) [class=hypothesis_mismatch]: - optimization_plan fixes leverage at 1.0

Analysis

DualThrustStrategy

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