Skip to content
All strategies

Strategies

DOT–FIL Hyperliquid Extreme-Anchored Reversal Filter

Outcome: Abandoned

DotFilHyperliquidExtremeReversalFilter

Outcome Summary

After one iteration, the strategy tested a frozen-distance reversal filter on DOT and FIL four-hour bars. Clean inputs and reconciled accounting supported a backtest showing -94.57% return across 1,602 closed positions and 96.77% maximum drawdown. Only the stressed-volatility regime was profitable, while overall trading costs and whipsaws undermined the economics. Backtest review abandoned this operationalization before optimization.

Hypothesis

Derived by the Research Lead from Ramdass's NRTR_extr indicator description: test whether a constant-distance filter from running HIGH/LOW extremes captures sustained moves while ignoring smaller corrections. The source describes an indicator, not a complete trading strategy; the rules below are my operationalization, not a claimed reproduction of its MQL5 code. Trade DOT and FIL independently, long and short, using 4-HOUR bars. Research choices are a percentage-scaled distance frozen at each trend-state initialization, close-confirmed reversals, and capital-relative risk sizing. Baseline filter_pct is 3.0. No supplementary feed or performance pre-study is required. Market orders execute at the completed signal bar's close. Protective stops trigger intrabar in the platform; protection while the process is offline is not required.

The supplied indicator remains testable despite prior trend-strategy losses. Hyperliquid is under target at 11% versus 20%, and this two-instrument long/short experiment reduces reliance on single-symbol and long-only research. corpus_concentration is empty, so instrument-level novelty cannot be verified. Options are further below their venue target, but using options would introduce expiry and volatility mechanisms absent from this source. This experiment isolates an extreme-anchored reversal filter rather than an SMA crossover or cross-sectional ranking.

negative_expectancy: decline optimization of this Research Lead version of Ramdass's NRTR_extr indicator: stop-and-reverse on DOT and FIL Hyperliquid 4H, with a 3% distance frozen at each state change, close-confirmed reversals, a fixed intrabar stop and 0.5% risk sizing. Across 1602 closed positions over 814 days it loses after costs. avg_trade_return_pct is -0.324% against the +0.15% HYPERLIQUID floor, PF 0.81, Sharpe -0.12, total -94.6% and max DD 96.8% against a 15% limit, and every calendar year loses. QA's……Show moreShow less

negative_expectancy: decline optimization of this Research Lead version of Ramdass's NRTR_extr indicator: stop-and-reverse on DOT and FIL Hyperliquid 4H, with a 3% distance frozen at each state change, close-confirmed reversals, a fixed intrabar stop and 0.5% risk sizing. Across 1602 closed positions over 814 days it loses after costs. avg_trade_return_pct is -0.324% against the +0.15% HYPERLIQUID floor, PF 0.81, Sharpe -0.12, total -94.6% and max DD 96.8% against a 15% limit, and every calendar year loses. QA's concern is borne out. Modeled impact ($127k) and commission ($25k) dominate, but even with impact removed the estimated gross edge is about 0.11% per trade, still below the floor, and the signal IC is noise (t = -0.56). The filter whipsaws about twice per leg per day in calm and normal vol and pays only in the stressed tercile. The tunable range for filter_pct (2-6%) cannot lift a per-trade edge this far below costs. This rejects only this operationalization. It does not reject Ramdass's indicator, which carries no trading rules, or NRTR-style trailing filters generally. A volatility-scaled (ATR) distance on daily bars with lower turnover, or a version that trades only in high-vol regimes, has not been tested and would be a separate hypothesis.

Implementation

NRTR_extr-style extreme-anchored reversal filter traded independently, long and short, on DOT and FIL Hyperliquid perps (4H). For each leg, an up state follows the highest HIGH and a down state follows the lowest LOW since the state began. The filter line sits a constant distance D from that extreme, where D = filter_pct% of the close on the bar that started the state, frozen for the whole state. A reversal is confirmed when a bar closes beyond the previous bar's filter line. On a reversal the leg closes any opposite position and opens a market position in the new direction at that bar's close. A reduce-only stop rests at fill price -/+ the entry's frozen D and triggers intrabar. After a stop-out, the leg re-enters only on the next indicator reversal. Size = 0.5% of equity at risk over D, capped at 20% of equity per instrument and 40% gross.

Implements the Research Lead's operationalization exactly: 4H bars, 60-bar warmup, distance as a percentage frozen at each state initialization (constant absolute distance per state), close-confirmed reversals against the previous filter, market execution at the signal bar's close, a fixed-entry-distance intrabar protective stop (platform-emulated reduce-only STOP_MARKET), re-entry only on the next reversal, and risk sizing at 0.005 of equity with 0.2 per-instrument and 0.4 gross caps at leverage 1. filter_pct……Show moreShow less

Implements the Research Lead's operationalization exactly: 4H bars, 60-bar warmup, distance as a percentage frozen at each state initialization (constant absolute distance per state), close-confirmed reversals against the previous filter, market execution at the signal bar's close, a fixed-entry-distance intrabar protective stop (platform-emulated reduce-only STOP_MARKET), re-entry only on the next reversal, and risk sizing at 0.005 of equity with 0.2 per-instrument and 0.4 gross caps at leverage 1. filter_pct (baseline 3.0) is the only tunable and is not clamped, so no _param_bounds are declared. Initialization: before the first state, the leg tracks the running high/low since warmup start; the first close more than D below the high (or above the low) sets the initial state. Reversals use one close order and then one opening order: the opening entry is submitted from on_position_closed so the netting position never flips in a single order. FIL trades only on an FIL bar whose ts_init equals the primary DOT bar's ts_init. All per-leg state is scalar attributes, so it persists across restarts. At 3% on 4H DOT/FIL, reversals happen often enough to exceed the 100-trade criterion, but the stop distance equals the full filter distance, so each loss costs about 0.5% of equity.

Verification Results

Accumulate the last nonzero flip across the bars stepped in one _advance call (or remember the latest flip_ns vs last traded flip) so a reversal on a gap bar is still acted on at the next aligned bar.

If a DOT primary bar is missing while the FIL bar at the same timestamp exists, _advance('fil') steps two FIL bars at the next primary bar. _step resets 'flip' on every bar, so a FIL reversal confirmed on the skipped bar is silently lost. The indicator state still flips, so the leg stays out until the following reversal. This does not read future data. It can only drop a trade on a data gap.

Only reuse a stop whose side is opposite to the current position; otherwise cancel it and submit a fresh stop.

In on_order_filled, the branch that modifies an existing reduce-only STOP_MARKET updates quantity and trigger but never checks the stop's side against the new position. In the backtest this is unreachable: _submit_exit/_submit_exit_position call cancel_all_orders before the close, and the stop fill itself closes the position. It is only a hazard if a stale opposite-side stop survives in paper/live.

No change required. The analyst should read avg_position_pct/exposure_pct with this in mind.

Sizing uses get_account_equity(), the engine's settled balance. That balance does not include the post-run folded impact cost, so late in a losing run the strategy keeps sizing from a balance well above the impact-adjusted equity the metrics report. This is a platform accounting interaction, not a strategy bug. Per-trade risk is still capped at 0.5% of engine equity and gross at 40%.

Sandbox (814 days, 1602 closed positions on both legs, 801 long and 801 short): PF 0.816, avg_trade_return_pct -0.314%, total -91.7% and max DD 94.7%, against a 15% DD constraint. Most of the loss is folded impact cost, not the signal. total_impact_usd is 127k on 56.6M traded notional, about 0.22% of notional per side. Commission is 25.5k and capacity_usd is only 7.75k. Back-calculated, net-of-commission PnL before impact is roughly +35k on 100k. So the first question for the analyst is whether DOT/FIL……Show moreShow less

Sandbox (814 days, 1602 closed positions on both legs, 801 long and 801 short): PF 0.816, avg_trade_return_pct -0.314%, total -91.7% and max DD 94.7%, against a 15% DD constraint. Most of the loss is folded impact cost, not the signal. total_impact_usd is 127k on 56.6M traded notional, about 0.22% of notional per side. Commission is 25.5k and capacity_usd is only 7.75k. Back-calculated, net-of-commission PnL before impact is roughly +35k on 100k. So the first question for the analyst is whether DOT/FIL Hyperliquid depth can carry ~17% of equity per leg every ~23 hours. The 0.2/0.4 exposure caps are frozen in the research contract, so this is a capacity/edge question and not a sizing bug. Fee arithmetic: about 2 round-trips per leg-day, about 0.09% taker round-trip plus about 0.45% modeled impact round-trip. A whipsaw filter with a 3% stop must average well above 0.5% gross per trade to survive. Regime split: losses in calm/normal vol, gains only in the stressed tercile, which is consistent with a trend filter that whipsaws in chop. avg_position_pct (59%) and exposure_pct (187%) are inflated by the metric's equity denominator, which includes folded impact. The engine's sized notional is about 16.7% of settled equity per leg (0.5% risk / 3% D).

Backtest Review

Sharpe
-0.12
Total return
-94.57%
Max drawdown
96.77%
Trades
1602
Win rate
36.1%
Profit factor
0.81

The mechanism is implemented as specified: 801 longs and 801 shorts, stop-and-reverse on close-confirmed filter breaks, and sizing set by risk / D.

Inputs are clean (no missing bars on either leg), the accounting reconciles, the sample is reliable, and no position is open at the end (end_unrealized 0%).

The only positive regime is the stressed-vol tercile (Sharpe 0.82, +22.8%), which fits a trend filter that profits only in large moves.

Net economics are strongly negative over 1602 closed positions in 814 days. avg_trade_return_pct is -0.324%, against the +0.15% HYPERLIQUID floor. PF is 0.81, Sharpe -0.12, total return -94.6% and max DD 96.8%, against the pre-registered 15% limit. Each year 2024, 2025 and 2026 loses 49-73%.

QA's concern is confirmed. Modeled impact ($127k) and commissions ($25.5k) turn a small gross result into a large loss, and capacity_usd is only $6.5k.

The edge is below the fee floor even with impact removed. Net-of-commission PnL before impact is about +$32.5k, roughly +$20 per trade on about $17.7k average notional per side, or about 0.11% per trade. That is still below the 0.15% floor, and it is before any realistic slippage on DOT/FIL Hyperliquid depth.

The executed-signal forecast IC is -0.044 (t = -0.56), which is not distinguishable from noise. Win rate is 0.36 and PF 0.81, a payoff structure where losers come from whipsaws.

Turnover is about 254x with about 2 round trips per leg per day. On a 3% fixed filter, calm and normal regimes produce a constant chop of reversals.

Outcome Summary

A future hypothesis should address calm- and normal-regime whipsaws and demonstrate sufficient per-trade edge after costs before optimization.

Backtest review issued an abandon verdict for negative expectancy, excessive drawdown and trading costs; even excluding modeled impact, estimated per-trade return was only 0.11%. Optimization and subsequent analyst and risk reviews were not reached.

Trade DOT and FIL independently, long and short on Hyperliquid four-hour bars, using close-confirmed reversals of a running-extreme filter with a frozen 3% distance and protective stops.

Over 814 days and 1,602 closed positions, the backtest returned -94.57%, with Sharpe -0.12, profit factor 0.81 and maximum drawdown 96.77%. Average per-trade return was -0.324%, below the +0.15% floor.

Analysis

NRTR_extr

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