Method
Rule / pseudocode
_Opening-range momentum: early-session direction reflects overnight information being priced in plus institutional order flow that persists through the day._
Out-of-sample equity curve
Out-of-sample performance
Hypothesis
On QQQ hourly bars, the sign of the first regular-session hour's return predicts the sign of the return over the remainder of the session, giving a positive after-cost intraday continuation edge.
Method
Instrument: QQQ
Results
Out-of-sample Sharpe was -2.38, versus 0.22 in-sample. A bootstrap test returned p = 0.996 (not significant). Walk-forward Sharpe stayed positive in 2 of 5 folds. Worst out-of-sample drawdown was -27.69%.
Analysis
In-sample the rule looks like nothing: over 508 trading days the after-cost IS Sharpe is only 0.218 (total return +6.3%, win rate 51.2%, drawdown -13.6%). That is a coin-flip-plus-a-whisker, already below the 0.5 promotion threshold before any out-of-sample test — a weak prior that opening-hour direction carries through the session.
Out of sample the weak prior inverts hard: across 219 independent daily trades the after-cost OOS Sharpe is -2.38 with a -26.5% total return, a -27.7% drawdown and a 42.9% win rate. First-hour direction did not continue — the remainder of the session moved against it, so a continuation bet was consistently wrong over the most recent ~30% of the sample.
Walk-forward exposes extreme instability rather than a decayed-but-real edge: fold Sharpes are -0.84, +2.26, +0.80, -3.76, -0.85, an oos_consistency of 40% (2 of 5 folds positive) and a wildly negative worst fold. The single strong fold (+2.26) is swamped, and the sign of the edge flips fold to fold — the hallmark of noise, not structure.
The block-bootstrap significance test gives p = 0.996 on the OOS per-trade returns: the observed strongly-negative Sharpe sits deep in the left tail of the zero-edge null, i.e. there is no evidence of a positive continuation edge and the negative OOS result is itself within noise given the small (~2-year) hourly sample yfinance allows.
Verdict: REJECTED. Trade count is adequate (219 OOS trades), so this is a real rejection, but the short hourly history and fold-to-fold sign flips mean the honest read is 'no exploitable opening-range continuation on QQQ after costs.' Opening-range momentum, if it ever existed intraday, is not present in this instrument/timeframe once realistic costs are charged. No promotion, no paper trade.
Source
Originated from discussion on r/manual.
Evidence
Walk-forward Sharpe by fold
---
_Generated by labs-algo-trading. Automated research — not financial advice. Backtests overfit; treat verdicts as hypotheses._