Automated NQ Breakouts: Evaluating the Backtest and Execution Risk

Video: Is This The Ultimate NQ Futures Strategy? (Fully Automated)
Creator: Ara Kerbabian
Original Video: Watch the original video
Difficulty: Advanced

The Big Idea

A previous-day high or low can provide a simple reference for an intraday breakout. Turning that reference into a durable automated strategy requires much more: a precise confirmation rule, executable orders, correct contract sizing, reliable data, and evidence that the results survive realistic costs.

Ara Kerbabian describes a proprietary Nasdaq breakout system, shows winning and losing examples, and discusses a historical testing report. The disclosed premise is useful to study, but the low-timeframe confirmation is withheld. This guide distinguishes the observable idea from the undisclosed implementation and examines what the reported numbers can—and cannot—establish.

What Is Disclosed, and What Remains Unknown?

ComponentAvailable informationQuestion still needed for replication
ReferencePrevious-day high and lowCash session, overnight session, or vendor daily bar?
DirectionIntraday breakout momentumExact confirmation and order submission timing?
RewardTargeted 1:2 risk/rewardActual stop placement, fills, and exit exceptions?
AutomationTradingView strategy plus third-party bridgeLatency, acknowledgments, duplicate prevention, and protective-order handling?
Historical testMulti-year report with commission includedData source, slippage, version history, and untouched test period?

A high marked from the full futures session can differ substantially from the US cash-session high. Two implementations can therefore trade different events despite both claiming to break “yesterday’s high.” Session definition belongs in the rules.

The losing demonstration reaches what would have been its target after the position is stopped. That does not turn the executed loss into a winner. Evaluate the actual stop and entry policy; do not award hypothetical recoveries only to the trades where price eventually came back.

Read the Report as a Set of Claims

The speaker reports approximately 241% net profit, profit factor 1.25, a 40% win rate, Sharpe ratio 1.7, and more than 1,500 trades over about seven years. He also reports 56 positive months out of 80, a best month around +18%, and a worst month approaching −12%.

The supplied transcript does not include the original report or trade ledger. Its maximum-drawdown phrase is garbled, so no numeric drawdown should be reconstructed from it. Obtain the report with exact units before using that metric.

Several simple checks make the figures more informative. Fifty-six of eighty months is exactly 70%, rather than greater than 70%. Around 1,500 trades across eighty months is roughly nineteen monthly trades. These are arithmetic relationships, not verification of the underlying records.

If 241% means a compounded account gain over exactly seven years, ending value is 3.41 times starting value. The corresponding annualized rate is approximately 3.41^(1/7) − 1, or 19.2%. That interpretation depends on dates, cash flows, sizing, and how the report defines return. It is not 241% per year.

Profit Factor 1.25 Leaves a Modest Cushion

Profit factor is total winning P&L divided by absolute total losing P&L, with cost treatment specified. A value of 1.25 means $1.25 of gains for each $1 of losses in the stated sample.

At a 40% win rate, profit factor 1.25 implies an average-win/average-loss ratio of approximately 1.25 × 0.60 ÷ 0.40 = 1.875, if those statistics describe the same trade set and compatible P&L definitions. That can be consistent with a nominal 2R target after execution effects or different exits, but the ledger is needed to explain it.

In an original simplified example, forty wins of +2R and sixty losses of −1R produce +20R before costs across 100 trades. An additional average friction of 0.20R per trade would consume the whole surplus. This is not an estimate of the proprietary system’s actual friction; it illustrates why small edges require careful cost measurement.

Sharpe ratio also needs its calculation details: return interval, annualization, cash-flow treatment, and whether unrealized equity is included. A single ratio without those definitions cannot settle the risk comparison.

Futures Have Execution Friction Too

The video contrasts difficult CFD execution with futures and suggests futures have essentially no slippage. That is too strong. An exchange order book can improve transparency without guaranteeing the displayed price or sufficient quantity during a fast breakout.

CME’s liquidity guide identifies spread and order-book depth as execution considerations and describes slippage as a transaction cost. Test changing spread, depth, and volatility rather than assuming every market order receives a frictionless fill.

Automation adds another timeline: signal recognition, alert delivery, bridge processing, broker submission, acceptance, and fill. A chart marker is not evidence that a live account received the same price. Reconcile timestamps and quantities at each stage.

Protective orders need special attention. Determine where they reside, whether they remain active if the bridge disconnects, and how the system handles rejected orders, partial fills, and disagreement between strategy and broker positions. Avoid retrying an uncertain submission in a way that creates a duplicate position.

Contract Size Determines the Dollar Consequences

CME specifies NQ at $20 per index point with a 0.25-point minimum tick, or $5 per tick. MNQ is $2 per point with the same tick increment, or $0.50 per tick.

A hypothetical twenty-point stop is therefore $400 for one NQ contract or $40 for one MNQ contract before costs. Two ticks of adverse entry slippage plus two ticks of adverse stop slippage add $20 per NQ contract. Quantity, instrument, and realistic fill assumptions belong together.

For an evaluation account, the advertised account label is different from the permitted loss buffer. One percent of a $150,000 label is $1,500, but its significance depends on the actual drawdown allowance and rules. Track distance to breach, daily limits, trailing calculations, and any contract or automation restrictions.

The speaker’s evaluation progress and intention to reduce risk after funding are examples from his account discussion. They do not establish that another account will pass or receive payouts. Three copied accounts also share correlated trade risk; their results are not three independent tests.

What Monte Carlo Adds—and What It Cannot Repair

The video describes 10,000 shuffled trade sequences and 10,000 samples with replacement. Shuffling investigates different orders of the same outcomes. Resampling permits repeated or omitted outcomes and therefore examines a different set of hypothetical histories.

Neither procedure creates evidence for an edge missing from the original sample. Independent resampling can also underrepresent clustering if losses depend on regimes, sessions, or consecutive market conditions. Block resampling is one way to investigate that dependence.

With fixed dollar outcomes, reshuffling changes the path while preserving their sum. When sizing, withdrawals, account breaches, or stopping rules depend on the path, the resulting tradable history can differ. The simulation must apply those rules, not merely rearrange an equity curve.

The repeated strategy updates mentioned in the video also raise a selection question: were the reported years used to choose the final version? Seven years of repeatedly inspected data is not equivalent to seven years of untouched evidence. Request version dates, a held-out period, and forward results.

Pine Script: A Transparent Breakout Baseline

Expand Pine Script v6 strategy

//@version=6
strategy("CandleChasers: Previous-Day NQ Breakout Lab", overlay=true,
 initial_capital=100000, pyramiding=0, margin_long=5, margin_short=5,
 commission_type=strategy.commission.cash_per_contract, commission_value=2.5,
 slippage=2, calc_on_every_tick=false, calc_on_order_fills=false,
 process_orders_on_close=false)
if not timeframe.isminutes or timeframe.multiplier != 1
    runtime.error("Use a standard one-minute futures chart.")
riskDollars = input.float(200, "Planned stop budget, dollars", minval=1)
maxContracts = input.int(2, "Maximum contracts", minval=1)
atrLen = input.int(14, "One-minute ATR length", minval=1)
stopMult = input.float(1.5, "Stop ATR multiple", minval=0.1, step=0.1)
rr = input.float(2.0, "Target / stop distance", minval=0.1, step=0.1)
allowShort = input.bool(true, "Enable shorts")
// These are previous completed DAILY bars from the selected chart feed.
// They are not necessarily previous US cash-session highs and lows.
priorHigh = request.security(syminfo.tickerid, "D", high[1], lookahead=barmerge.lookahead_on)
priorLow = request.security(syminfo.tickerid, "D", low[1], lookahead=barmerge.lookahead_on)
var bool usedLong = false
var bool usedShort = false
if timeframe.change("D")
    usedLong := false
    usedShort := false
atrValue = ta.atr(atrLen)
stopTicks = math.max(1, int(math.ceil(atrValue * stopMult / syminfo.mintick)))
targetTicks = math.max(1, int(math.round(stopTicks * rr)))
riskPerContract = stopTicks * syminfo.mintick * syminfo.pointvalue
contracts = not na(riskPerContract) and riskPerContract > 0 ? math.min(maxContracts, int(math.floor(riskDollars / riskPerContract))) : 0
longSignal = close > priorHigh and close[1] <= priorHigh
shortSignal = close < priorLow and close[1] >= priorLow
entryWindow = not na(time(timeframe.period, "0935-1550:23456", "America/New_York"))
flattenWindow = not na(time(timeframe.period, "1555-1600:23456", "America/New_York"))
if barstate.isconfirmed and entryWindow and contracts >= 1 and strategy.position_size == 0
    if longSignal and not usedLong
        strategy.entry("L", strategy.long, qty=contracts)
        strategy.exit("LX", "L", loss=stopTicks, profit=targetTicks)
        usedLong := true
    else if allowShort and shortSignal and not usedShort
        strategy.entry("S", strategy.short, qty=contracts)
        strategy.exit("SX", "S", loss=stopTicks, profit=targetTicks)
        usedShort := true
if flattenWindow and strategy.position_size != 0
    strategy.close_all(comment="Session exit")
plot(priorHigh, "Previous completed daily high", color=color.green)
plot(priorLow, "Previous completed daily low", color=color.red)

This strategy tests a completed one-minute close crossing the previous completed daily high or low. That confirmation is an added definition, not the proprietary algorithm. It adds a fixed dollar stop budget, ATR-distance bracket, 2R target, and at most one entry submission per direction per daily period.

What This Code Actually Tests

The daily requests use prior-bar offsets, so the current day’s eventual high and low are not available to earlier signals. The day boundary follows the selected futures feed. The references can include overnight trading; they are not automatically cash-session levels. Record session and continuous-contract adjustment settings.

Entry conditions use completed bars, with market orders normally filled on the next available tick. ATR distances are converted to ticks and frozen when the entry is submitted. Relative brackets anchor to the actual emulator fill. Quantity is rounded down using the symbol’s point value and skipped if one contract exceeds the planned stop budget.

The budget excludes fees and slippage and cannot cap gap losses. A submitted entry consumes that direction’s daily allowance even if the emulator later rejects it. No pyramiding or fill-triggered recalculation is enabled. Flattening is requested from 15:55 New York time, ordinarily filling next tick; shortened sessions or missing bars need separate handling and may leave overnight exposure.

What This Code Does Not Test

It does not reproduce the hidden confirmation, original stop method, proprietary reports, broker bridge, or evaluation rules. Its $100,000 capital and 5% margin settings are illustrative emulator assumptions, not CME or broker margin requirements. Verify sufficient buying power and actual contract specifications before interpreting any simulated order.

Defaults include $2.50 commission per contract per side and two ticks of slippage. Adjust Strategy Properties to represent the instrument and account. The code has received a logic review but has not been compiled or backtested in TradingView. It supplies no performance result and does not send live orders.

Three Comparisons Worth Running

  1. Session definitions: Compare completed full-session daily levels with explicitly calculated cash-session levels, keeping other rules constant.
  2. Cost stress: Compare several plausible slippage and commission cases, including fast-market conditions. Report the point at which net expectancy disappears.
  3. Independent evidence: Freeze parameters, evaluate a later untouched period, and then compare paper or small-scale forward fills with the emulator’s timestamps and prices.

Review NQ and MNQ separately, especially commissions relative to stop distance. Continuous-chart results should also be checked against actual contracts and rollover handling before claiming executable historical performance.

Final Takeaway

The previous-day breakout is a testable premise. The proprietary confirmation, session definitions, costs, and live execution determine what system is actually being evaluated. Read the report critically, separate simulation from account results, and monitor whether forward behavior remains consistent with the assumptions. A drawdown can be normal without making recovery inevitable.

Risk Disclosure: This material is for educational and research purposes only and is not financial or investment advice. Futures trading is leveraged and can result in substantial losses, including losses beyond initial funds. Backtests and Monte Carlo simulations are hypothetical, depend heavily on assumptions, and cannot reproduce every aspect of live execution. Commissions, spreads, slippage, liquidity, gaps, contract rollover, margin requirements, account rules, technology failures, market regime changes, and discretionary decisions can materially affect results. Automation, historical profitability, and evaluation progress do not guarantee future profits, passing an evaluation, or receiving payouts.

This article is an independent educational companion to the video and is not affiliated with, sponsored by, endorsed by, or authorized by Ara Kerbabian or Currency Pros.

As an Amazon Associate I earn from qualifying purchases.