Op de wachtlijst
Strategieën / Breakout / Range Breakout And Fakeout

Range Breakout And Fakeout: traden aan beide zijden van de range van gisteren

De high en low van gisteren vormen een range, en het systeem plaatst orders net buiten die range voor breakouts en net binnen die range voor fakeouts die terugvallen. Het handelt alleen wanneer die range tussen 20 en 150 punten ligt en slaat vrijdagen over. De position size is risicogebaseerd, op 0.5% van de equity gedeeld door de stopafstand.

BreakoutLong & shortSwingDAX 404 uur
n/aProfit factor
2,477,210Nettowinst EUR
16.48%Winstpercentage
6,779Trades
-336,797Max drawdown
365Gem. trade

Beste run van 15. DAX 40, 4 uur, spread 3, uit run sweeps:2026-09-16-DAX40-4h-opt.tsv:2.

Instapregels, long

  1. De range van gisteren ligt tussen 20 en 150 punten en vandaag is het geen vrijdag
  2. Breakout long: koop at market wanneer de prijs al meer dan 10% van de range boven de high van gisteren staat, of plaats een buy stop 1 punt boven dat niveau
  3. Elk van de vier instapniveaus wordt maximaal één keer per dag gebruikt

Instapregels, short

  1. De range van gisteren ligt tussen 20 en 150 punten en vandaag is het geen vrijdag
  2. Breakout short: ga short at market wanneer de prijs al meer dan 10% van de range onder de low van gisteren staat, of plaats een sell stop 1 punt onder dat niveau
  3. Elk van de vier instapniveaus wordt maximaal één keer per dag gebruikt

Uitstapregels

  1. Stop loss van twee keer de instapmarge (10% van de range), minimaal 6 punten
  2. Tijdens een trade keert een tegengestelde stoporder aan de andere rand de positie om

Testomstandigheden

PeriodeTot 2026-09-16
InstrumentDAX 40, 4 uur
Spread3 punten
Startkapitaal1,000,000
KostenAlleen spread. Commissies en overnight financiering zijn niet meegerekend.
BarsTot 200,000 bars, minder waar het instrument minder historie heeft
Laatst getest2026-09-17
Parameters (10)
startingCapital
Accountgrootte gebruikt voor risicobepaling
3000
riskPct
Percentage van de equity dat per trade wordt geriskeerd
0.5
maxRangePoints
Sla de dag over als de range van gisteren breder is dan dit
150
minRangePoints
Sla de dag over als de range van gisteren smaller is dan dit
20
targetRangeMultiple
Winsttarget als veelvoud van de range van gisteren
1.5
rangeMarginFraction
Instapniveaus liggen dit deel van de range binnen en buiten elke rand
0.1
stopMarginMultiple
Stop loss als veelvoud van de instapmarge
2
minStopPoints
Kleinste toegestane stop loss in punten
6
orderOffset
Extra punten toegevoegd aan stop-instaporders
1
blockedDay
Weekdag zonder nieuwe trades (5 = vrijdag)
5

Elke run

Geteste markten en tijdframes

MarktTijdframePFTradesWinst %NettoMax DD
DAX 40Beste run4 uurn/a 6,77916.482,477,210 EUR-336,797
DAX 40Dagelijksn/a 4,27321.8319,248,806 EUR-860,999
FTSE 100Dagelijksn/a 6,73721.794,648,349 EUR-653,406
Nikkei 225Dagelijksn/a 2,88218.49686,515 USD-50,206
Brent-olieDagelijksn/a 2,31521.81410,183 EUR-60,891
Nasdaq 100Dagelijksn/a 4,13119.7559,003 EUR-6,503
S&P 500Dagelijksn/a 3,33524.3544,615 EUR-5,773
GoudDagelijksn/a 1,95927.163,244 EUR-1,039
Dow Jones1 uurn/a 83013.371,903 EUR-1,572
Dow Jones4 uurn/a 1,01111.771,843 EUR-1,300
Dow Jones30 minn/a 70913.261,816 EUR-1,239
Nasdaq 1005 minn/a 30911.97837 EUR-699
Nasdaq 1003 minn/a 12212.30686 EUR-510
Amerikaanse ruwe olie1 minn/a 3423.53615 EUR-173
Nasdaq 1001 minn/a 1822.22449 EUR-239

Grafieken

Resultaten per run

Top 10 van 15 runs. De volledige lijst staat in de tabel hierboven.

NettowinstMax drawdown

De code

ProBuilder, herschreven naar huisstandaard

// ============================================================
// Range Breakout And Fakeout
// ProRealAlgos Strategy Library  |  prorealalgos.com
// Type: Breakout
// Direction: Long & short
// Timeframe tested: 4 hours
// ============================================================

// --- Settings ---
DEFPARAM CumulateOrders = false
DEFPARAM PreloadBars = 10000

// --- Parameters ---
startingCapital = 3000        // account size used for risk sizing
riskPct = 0.5                 // percent of equity risked per trade
maxRangePoints = 150          // skip days when yesterday's range is wider than this
minRangePoints = 20           // skip days when yesterday's range is narrower than this
targetRangeMultiple = 1.5     // profit target as a multiple of yesterday's range
rangeMarginFraction = 0.1     // entry levels sit this fraction of the range inside and outside each edge
stopMarginMultiple = 2        // stop loss as a multiple of that margin
minStopPoints = 6             // floor for the stop loss
orderOffset = 1               // extra points added to stop entries
blockedDay = 5                // no new trades on this weekday (Friday)

// Once-per-day entry flags, one per entry level
ONCE lowerEdgeLongDone = 0
ONCE upperEdgeShortDone = 0
ONCE upperBreakLongDone = 0
ONCE lowerBreakShortDone = 0
ONCE tradingAllowed = 0

// --- Indicators ---
// Reset the daily flags on the first bar of every day except the blocked day.
IF DayOfWeek = blockedDay THEN
  tradingAllowed = 0
ELSE
  IF IntradayBarIndex = 0 THEN
    tradingAllowed = 1
    lowerEdgeLongDone = 0
    upperEdgeShortDone = 0
    upperBreakLongDone = 0
    lowerBreakShortDone = 0
  ENDIF
ENDIF

// Entry levels come from the previous completed day's range.
IF IntradayBarIndex = 0 THEN
  rangeHigh = DHigh(1)
  rangeLow = DLow(1)
  rangePoints = ROUND(rangeHigh - rangeLow)
  targetPoints = rangePoints * targetRangeMultiple
  rangeMargin = rangePoints * rangeMarginFraction
  aboveHigh = rangeHigh + rangeMargin
  belowHigh = rangeHigh - rangeMargin
  aboveLow = rangeLow + rangeMargin
  belowLow = rangeLow - rangeMargin
  stopLossPoints = ROUND(rangeMargin * stopMarginMultiple)
  IF stopLossPoints < minStopPoints THEN
    stopLossPoints = minStopPoints
  ENDIF
ENDIF

// Risk a fixed share of current equity on every trade.
equity = startingCapital + StrategyProfit
maxRisk = ROUND(equity * (riskPct / 100))
positionSize = ABS(ROUND((maxRisk / stopLossPoints) / PointValue) * PipSize)

insideRange = close < rangeHigh - rangeMargin AND close > rangeLow + rangeMargin
aboveRange = close > (rangeHigh + rangeMargin)
belowRange = close < (rangeLow - rangeMargin)
nearHigh = close > rangeHigh - rangeMargin AND close < rangeHigh + rangeMargin
nearLow = close < rangeLow + rangeMargin AND close > rangeLow - rangeMargin

Nog 92 regels: de instap- en uitstapregels.

Opzet

Zo laad je hem in

  1. Kopieer de code met de kopieerknop op het codeblok.
  2. Open in ProRealTime een grafiek van het instrument en tijdframe dat je wilt testen en open dan ProOrder > New trading system en kies "Create with programming".
  3. Plak de code, geef het systeem een naam en sla het op.
  4. Klik op "Backtest", stel je eigen spread en position size in en voer hem uit voordat je overweegt er live mee te traden.
Lees dit eerstBekende zwaktes4 punten
  • Er is alleen sweepdata, dus de profit factor is voor geen enkele run vastgelegd, ook niet voor de beste op DAX 40 4 uur.
  • Het winstpercentage is slechts 16.48% op de beste run. De winst hangt af van een paar grote winnaars, en lange reeksen verliezen zijn normaal.
  • De position size groeit mee met de equity, wat de kopcijfers opblaast. De DAX 40 Daily-run toont EUR 19,248,805.5 nettowinst naast een drawdown van EUR 860,999.0, cijfers die een account met vaste position size nooit zou zien.
  • Er kunnen tot vier openstaande orders actief zijn en posities kunnen intraday omkeren, waardoor live uitvoering en slippage moeilijker te matchen zijn met de backtest.

Vragen

Over deze strategie

Werkt deze strategie met geautomatiseerd traden in ProOrder?

Ja, hij plaatst stop- en limitorders die ProOrder kan beheren. Omdat er meerdere orders tegelijk kunnen openstaan, controleer de orderverwerking eerst op een demo-account.

Welke markten zijn getest?

Runs zijn vastgelegd op DAX 40, FTSE 100, Nikkei 225, Brent Crude, Nasdaq 100, S&P 500, Gold, Dow Jones en US Crude Oil, en geen van de rijen verloor geld. De beste rijen zijn Daily- en 4 uur-runs, terwijl de 1 minuut-runs op US Crude Oil en Nasdaq 100 slechts EUR 615.0 en EUR 448.5 opleverden.

Hoe wordt het risico per trade beheerst?

Elke trade riskeert 0.5% van de equity, met een stop op twee keer de instapmarge en minstens 6 punten. De beste run had toch een max drawdown van EUR 336,796.7, omdat de position size meegroeit met de equity.

Waarom dagranges gebruiken op een 4 uur-chart?

De range komt van de vorige dag, dus een 4 uur-chart geeft een paar bars per sessie om de break of de fakeout te pakken zonder de ruis van heel korte charts.

Gerelateerd

Strategieën zoals deze

Buy After Price Fall

Beste run op dezelfde markt, DAX 40.

1.88 PF · 312 trades

Breakout Regime Filter

Ook een breakout strategie.

6.28 PF · 70 trades

Bollinger Band Walk

Ook een breakout strategie.

3.10 PF · 148 trades

Nieuwsgierig hoe range-systemen met compounding zich gedragen in echte accounts? Zet je op de ProRealAlgos-wachtlijst.

De ProRealAlgos community krijgt de volledige regels, de complete code en de geautomatiseerde portefeuille.

Backtestresultaten uit het verleden bieden geen garantie voor de toekomst. Dit is geen financieel advies. Samengesteld en onderhouden door ProRealAlgos. ProRealTime™ is een handelsmerk van ProRealTime SAS. prorealalgos.comStatsDocumentatie