Swing Breakout Sequence Strategy
Aangemaakt op 07 jul. 2024
·
Bijgewerkt op 05 apr. 2025
De Swing Breakout Sequence (SBS) Strategy is een Premium mechanische strategie voor het NinjaTrader 8-platform, geïnspireerd op het handelsmodel van Stoic Trader's. De strategie kan worden gebruikt om propfirm-evaluatie-challenges te halen.
Vereisten
Om deze strategie correct te gebruiken, heb je de volgende vereisten nodig.
- NinjaTrader 8, met elk type licentie. Order Flow is niet nodig om deze strategie te draaien. Klik hier om te downloaden
- Een automated-trading.ch-account met een actief Premium-abonnement
Belangrijke disclaimer
We raden sterk aan om je algoritmische handelssystemen nooit met je hard verdiende echte geld te laten draaien. Beperk je risico altijd en draai je strategieën op trader-funding-programma's, zodat het maximale verlies gelijk is aan het maandelijkse abonnementsbedrag dat je aan die programma's betaalt.
Voorbeelden van instapsetups
Deze strategie heeft één entry-setup, gebaseerd op het Swing Breakout Sequence-algoritme — een entry-model met een hoge kans en een vastgelegde risk-reward-verhouding, gebaseerd op een reeks van 5 swings.
Dit is het algoritme voor een entry-setup:
- De eerste stap is de volledige detectie van een Swing Breakout Sequence, gevormd door 5 swings die het patroon voor een bullish entry volgen (of precies het omgekeerde voor een bearish entry). Het hebben van de 5 swings is op zich niet voldoende — het uiteindelijke criterium voor een geldige SBS is dat de prijs uitbreekt uit een van de swings die hem vormen. Omdat de 5e swing het laagste punt is bij een bullish SBS (en het hoogste bij een bearish SBS), biedt de strategie — net als de indicator — de mogelijkheid om te kiezen welke swing de breakout activeert. Volgens onze backtests is de 1e swing in de reeks meestal de beste keuze.
- Als de prijs sluit buiten de range die door de voorgaande swings is bepaald, wordt de SBS ongeldig verklaard, verwijderd en niet getoond.
- De SBS wordt niet in realtime getekend tijdens de vorming van de swings — als dat wel zo zou zijn, zouden veel SBS-patronen worden getekend en in realtime weer ongeldig worden verklaard en verwijderd, wat visuele verwarring zou veroorzaken. Alleen geldige SBS'en, bevestigd door een breakout, worden getekend.
-
Zodra een SBS is gevalideerd, berekent het algoritme er een ratio op, gebaseerd op twee niveaus:
- Het doelniveau: bepaald door de 3e swing
- Het stopniveau: de laagste (bullish) of hoogste (bearish) swing in de reeks — ofwel de 5e swing, ofwel de voorgaande laagste low-/hoogste high-swing
Functies
De Swing Breakout Sequence-strategie heeft een aantal unieke functies:
- Robuuste eigen implementatie van het Swing Breakout Sequence-algoritme
- Er worden geen pending orders geplaatst — alleen market orders
- Volledig geautomatiseerde strategie die kan worden opgeschaald naar meerdere instanties
- Nauwkeurige backtestmogelijkheden volgens de officiële best practices van NinjaTrader, met nauwkeurige entry-/exit-backtests op tick-niveau
- Een robuuste eigen order management-bibliotheek, bestand tegen verbindingsverlies, die naadloos werkt op Rithmic-accounts of NinjaTrader-brokeraccounts
Dynamische hoeveelheid en risicobeheer
Zoals bij al onze strategieën implementeert deze strategie twee methoden om de hoeveelheid open posities in te stellen:
- Vaste hoeveelheid: gebruikt dezelfde hoeveelheid voor elke positie. Als de stop loss tussen posities varieert, variëren ook de winst- en verliesbedragen.
- Dynamische risicogecorrigeerde hoeveelheid: berekent de hoeveelheid van elke positie op basis van de stop loss, het maximale risico (in $) dat per positie is toegestaan en de maximaal toegestane hoeveelheid — wat zorgt voor gelijke winst- en verliesbedragen over alle posities, ongeacht de breedte van de stop loss.
Positiebeheer
Zoals bij al onze strategieën implementeert deze strategie meerdere methoden voor positiebeheer:
- ATM Strategy: delegeer het positiebeheer volledig aan je eigen ATM-strategie, te kiezen uit een keuzelijst.
- Dollar Cost Averaging (Grid): verhoogt de hoeveelheid van de positie naarmate de prijs ertegen beweegt, waardoor de gemiddelde prijs dichter bij de huidige prijs komt, zodat de positie bij een pullback op breakeven kan sluiten.
- Trailing Stop: trekt de stop loss mee met elk nieuw swingpunt dat aan de winnende kant van de positie ontstaat.
- SuperTrend: gebruikt de SuperTrend-indicator als beheermethode.
De strategie laat ook toe de stop loss te baseren op meerdere strategieën en de take profit op basis van een ratio in te stellen — zie de sectie Parameters voor details.
Accountbeheer
De strategie implementeert dagelijkse triggers om te stoppen met handelen, gebaseerd op het netto aantal winnende posities, het netto aantal verliezende posities, of een doel voor de gerealiseerde netto winst of het netto verlies.
Parameters
We proberen de parameters tot een minimum te beperken — alleen de belangrijkste worden getoond.
| Algemeen | |
| Execute Historical Trades | Schakelt het uitvoeren van trades in wanneer de strategie draait in Historical-, Backtest- of Optimization-modus — moet uitgeschakeld zijn bij Live-gebruik. |
| Daily TakeProfit Target | De strategie stopt voor de dag zodra dit dagelijkse take-profitbedrag is bereikt. Wordt genegeerd wanneer ingesteld op 0. |
| Weekly TakeProfit Target | De strategie stopt voor de week zodra dit wekelijkse take-profitbedrag is bereikt. Wordt gereset aan het begin van elke nieuwe week. Wordt genegeerd wanneer ingesteld op 0. |
| Daily StopLoss Limit | De strategie stopt voor de dag zodra de dagelijkse verliesgrens is bereikt (positieve waarde — bijv. 300 stopt het handelen zodra de gerealiseerde PnL ≤ -$300). Wordt genegeerd wanneer ingesteld op 0. |
| Stop @ Winning Count | Stopt het handelen voor de dag zodra het netto aantal winnende trades deze waarde bereikt. Wordt genegeerd wanneer ingesteld op 0. |
| Stop @ Losing Count | Stopt het handelen voor de dag zodra het netto aantal verliezende trades deze waarde bereikt. Wordt genegeerd wanneer ingesteld op 0. |
| Execute on Different Instrument | Voert trades uit op een ander instrument dan het instrument van de actieve chart — bijv. logica draaien op Minis maar uitvoeren op Micros. Alle risicoberekening gebeurt op het uitvoeringsinstrument, en trades op een ander instrument worden niet op de chart getekend. |
| Execution Instrument | Kies uit een lijst van Micros die beschikbaar zijn op je NinjaTrader-verbinding als het instrument waarop de trades worden uitgevoerd. In dat geval worden trades niet op de chart getekend. |
| Order Label | Een label dat aan elke positie wordt toegevoegd die naar de broker wordt gestuurd; handig om je orders te onderscheiden van die van andere gebruikers van dezelfde strategie. |
| Swing Breakout Sequence | |
| Show Sequence Numbers | Schakelt het tekenen van nummerlabels onder/boven elk swingpunt van de reeks in of uit. |
| Show Sequence Lines | Schakelt het tekenen van lijnen die de swingpunten van de reeks verbinden in of uit. |
| Render Opacity (1-100) | De transparantie waarmee objecten op de chart worden getekend. |
| Swings Period | Swings zijn hogere lows, hogere highs, lagere highs en lagere lows. Deze parameter bepaalt hoeveel bars nodig zijn om twee swings van hetzelfde type te scheiden — hoe hoger deze waarde, hoe minder swings in totaal. |
| Invalidation Method |
|
| Breakout Swing |
|
| Breakout Fibo Level | Alleen gebruikt wanneer Breakout Swing Fibonacci Retracement is — één van 23.60%, 38.20%, 50%, 61.80% of 76.40%, elk berekend vanaf Swing 4 in de reeks. |
| Min SBS Ratio | De afstand van de potentiële take profit gedeeld door de afstand van de stop loss, gemeten vanaf de huidige prijs op het moment dat de SBS wordt gevalideerd. Weerspiegelt de scheefheid van de SBS — dichter bij 1 betekent minder scheef. Een waarde van 0.9 is in onze tests bewezen optimaal. |
| Min SBS Bars Count | Filtert SBS-structuren eruit die te weinig bars beslaan om significant te zijn. |
| Max SBS Bars Count | Filtert SBS-structuren eruit die te veel bars beslaan — deze leveren over het algemeen geen winstgevende signalen op. |
| Max SBS Height Points | Filtert SBS-structuren eruit die te hoog zijn, in punten. |
| Entry-setup | |
| Time Zone |
De tijdzone die wordt gebruikt voor de Trade Time-parameter hieronder.
|
| Trade Time | De tijdintervallen waarbinnen de strategie trades mag plaatsen — bijv. "09:30-16:15" voor RTH in EST. Meerdere kommagescheiden intervallen in oplopende volgorde worden ondersteund; ze worden om middernacht afgesneden om problemen bij de overgang naar een nieuwe dag te vermijden. |
| Quantity Strategy |
|
| Max Qty | Maximaal toegestane hoeveelheid wanneer Risk Adjusted is geselecteerd — handig omdat sommige propfirms limieten op de orderhoeveelheid hanteren die een account ongeldig kunnen maken. |
| Invert Entries | Keert entries om van long naar short en omgekeerd — de stop loss wordt de take profit en omgekeerd, met de risicoratio dienovereenkomstig omgekeerd (een take profit van 2:1 wordt 1:2). Nuttig in onrustige markten waar de oorspronkelijke breakout-logica niet opgaat. |
| Long/Short Entry Mode |
|
| SuperTrend Entry Filter | Beperkt long entries tot wanneer SuperTrend bullish is, en short entries tot wanneer deze bearish is. |
| SMAs Entry Filter | Vereist dat de SBS-reeks boven/onder twee Simple Moving Averages uitbreekt. |
| SMA Slow Period / SMA Fast Period | De periodes van de twee Simple Moving Averages die als entryfilter worden gebruikt. |
| Entry Mode |
|
| FVG Candle Filter |
|
| Min. Gap (ticks) | De minimale afstand, in ticks, tussen de wicks van de FVG om geldig te zijn — hoe hoger deze waarde, hoe minder FVG's er worden gedetecteerd. |
| Order Qty | Alleen gebruikt wanneer Quantity Strategy Fixed is — de vaste hoeveelheid per trade (en per hoeveelheidsverhoging tijdens order management). Meestal 1 of 2. |
| Ordermanagement | |
| Order Management Strategy |
|
| ATM Strategy Template Name | Alleen gebruikt met de ATM Strategy-beheermethode — de exacte templatenaam van je eigen ATM-strategie. Moet overeenkomen met een bestaand template, anders wordt geen positie geopend. |
| On Opposite Signal |
|
| Enable Price Breakeven | Schakelt het op prijs gebaseerde breakevenmechanisme in of uit. |
| Breakeven Price Strategy |
|
| Breakeven Price Trigger | Beschikbaar wanneer op prijs gebaseerde breakeven is ingeschakeld — de triggerwaarde die nodig is om de stop loss naar breakeven te verplaatsen. |
| Enable Time Breakeven | Schakelt het op tijd (minuten) gebaseerde breakevenmechanisme in of uit. |
| Breakeven Time Trigger | Beschikbaar wanneer op tijd gebaseerde breakeven is ingeschakeld — de triggerwaarde, in minuten, die nodig is om de stop loss naar breakeven te verplaatsen. |
| StopLoss Strategy |
|
| TakeProfit Strategy |
|
| Scale out % Qty at % Target / Scale out at % Target / Scale out % Qty | Sluit een percentage van de hoeveelheid van de positie zodra de prijs een percentage van het winstdoel bereikt (naar beneden afgerond bij breuken). |
| Take Profit Currency | Het take-profitbedrag in dollars, gebruikt met de strategie Fixed Currency Value. |
| Stop Loss Points | Beschikbaar wanneer de Stop Loss-strategie Points is. |
| Target Risk Per Trade ($) | Het maximale risico, in dollars, per positie — wordt vóór het openen van een trade gebruikt om te controleren of de berekende stop loss deze grens respecteert; zo niet, dan wordt de trade overgeslagen. |
| Max Allowed Risk Per ($) | Alleen gebruikt met de Risk Adjusted-hoeveelheid — bepaalt hoeveel het werkelijk berekende risico mag afwijken van het Target Risk. |
| Stoploss offset Points | Voegt een offset, in punten, toe aan het berekende stop loss-niveau — gebruikt bij het berekenen van het risico per trade. |
| Take Profit Points | Beschikbaar wanneer de Take Profit-strategie Points is. |
| SuperTrend | |
| SuperTrend Mode | ATR-gebaseerd, of Adaptive (gebaseerd op de sluit-, hoog- en laagwaarde van de candle). |
| Period / Multiplier / Moving Avg. Type / Smooth | Standaardparameters voor de SuperTrend-berekening. |
| SuperTrend Close Only Winning | Wanneer SuperTrend wordt gebruikt als order management-methode, voorkomt deze optie dat trades die direct na openen al onder/boven de supertrend liggen, worden gesloten — alleen posities die op dat moment winst maken, worden gesloten. |
| Trailing Stop-parameters | |
| Trailing Stop Strategy | Points (berekend vanaf de entryprijs) of Ratio (berekend vanaf de waarde van de stop loss, gespiegeld aan de winnende kant). |
| Trailing Stop Trigger / Trail Amount | De trigger en het trailing-bedrag (in Points of Ratio) voor de methode Classic Trail Stop. |
| DCA (Grid)-parameters | |
| Breakeven Profit Shift | Voegt een klein beetje winst toe aan de breakevendefinitie, om commissies te dekken wanneer het grid op breakeven wordt gesloten. |
| Grid Size to Breakeven | Het aantal orderverhogingen dat nodig is voordat het sluiten van de positie op breakeven wordt overwogen. |
| Min Grid Gap (Point) | De minimale afstand, in punten, tussen twee gridorders. |
| Bar Close Trigger | Zorgt dat gridorders openen bij barsluiting in de richting van de trade. |
| Commandoknoppen | |
| De strategie biedt handmatige commandoknoppen op het Chart Trader-paneel — zorg dat dit paneel zichtbaar is op je actieve chart. | |
| Arm/Disarm Buttons | Schakelt handmatig het openen van long- of short-trades in of uit — handig als je een richtingsvoorkeur hebt. |
| Close Position Button | Sluit de positie direct zonder de strategie opnieuw te starten, die daarna blijft zoeken naar nieuwe trades. |
| Increase Qty Button | Verhoogt de hoeveelheid van de huidige positie met het bedrag van Order Qty. |
| Set Breakeven Button | Verplaatst de stop loss van de open positie naar breakeven, als dat een verbetering oplevert. |
Prestatierapporten
Resultaten uit het verleden zijn geen garantie voor toekomstige resultaten. Alle backtestresultaten dienen uitsluitend ter indicatie.
- Commissies zijn inbegrepen, met het commissieschema van de NinjaTrader Lifetime-licentie, voor realistische resultaten.
- We volgen de officiële gids van NinjaTrader voor nauwkeurige backtesting op intrabar-granulariteit met aanvullende tick-level dataseries, en gebruiken in zowel realtime als backtestmodus alleen market orders — nooit pending orders.
De strategie is getest met meerdere risicoprofielen en instrumenten (MES, MNQ), en een defensieve parametertemplate is ook live gedraaid op een Apex Live Trader Funding-account, waarbij de accountvalidatie-challenge succesvol is doorlopen.
Er zijn nog geen prestatierapporten voor deze strategie geüpload.
Download- en installatie-instructies
Licentievereisten
Bij automated-trading.ch kun je kiezen: een maandelijks abonnement nemen om onze premium-producten te gebruiken, of onze gratis producten gebruiken zonder je te abonneren.
In beide gevallen moet je een account aanmaken, zodat je een licentie kunt krijgen die je voor zowel premium- als gratis producten kunt gebruiken.
Om je licentie te verkrijgen, moet je gewoon je registreren en daarna je licentie ophalen op de facturatiepagina.
Downloaden
Je kunt deze strategie — en elke andere automated-trading.ch-strategie of -indicator — altijd downloaden via je gecentraliseerde Downloads-pagina.
Installatiestappen
Veelgestelde vragen
Algemeen
Facturatie
Sceptici
Release-notes
- Bug Fix: Error when using ATM Strategy
- Added Decrease quantity command button; Added "Invert Entries" Parameter; Scaling out added Scale out at % Target/Qty; Breakeven considers commissions
- Fixed performance regression related to swing price detection
- Added filter Max bars between swings; Added Immediate on Swing 4 breakout mode; Added SMA Slow/Fast entry filter; Bug Fix crashing on new market session live
- Added Scale out 50% Qty at 50% Target management option
- Fix bug on Market Replay session transitions; Fix SuperTrend trailing stop miss bug; Added Max SBS Height points parameter
- Fibo levels calculated Swing3->extreme point (was extreme->Swing3); Added Fibo 0.236 as TP target
- Reorganization of Parameters; Added SuperTrend as trade management method; pixel-based SBS sequence number drawing; Added "Invalidation Method" parameter; sequences on invalidated swings removed
- Bug Fix: breakeven not triggered on long trades; Increase position button also triggering breakeven; breakeven button sometimes closing positions
- Bug Fix: ATM usage crashing Strategy; Command button Close now closes ATM positions; drawing objects disposed in optimization mode
- Added Entry mode selection: Immediate or wait for FVG; Added "Min Grid Gap" and "Bar Close Trigger" params to DCA (Grid) method
- Bug Fix when using ATM strategy
- Added Max Allowed Risk per trade separate from Target Risk per trade
- Bug fix: Trailing stop mechanism should trigger outside trade time
- Added StopLoss & Takeprofit line drawing with drag & drop
- Bug Fixes: weekly profit target calc; EST timezone glitch; Currency risk closing early; Trailing stop with Fixed currency value stoploss
- Bug Fix: rare error when little data loaded on chart
- Auto submit of License on Billing cycle date; all parameters displayed on Strategy Analyzer optimization; Clear warning message when strategy added from Strategy Tab not Chart
- Added weekly profit target
- Major fixes when Take Profit method set to Swing3; Stop Loss calc updated to include Prior Swing, Swing4, Swing5; Fix Chart Panel Glitch on tab change
- Removed strong condition on Swing5 price (relaxed successive-swing rule)
- Bug Fix: running strategy on multiple accounts overlaps daily limit stops
- Less strict detection rule for more pattern detection; Added Fibonacci Retracement Breakout method; Added Trade Time zone selection EST/local; Added Min & Max SBS Bars count filter
- Added Classic Trailing Stop management method; Fix issue with entry; Update parameter refresh logic; Added stoploss offset in points
- Added Swing 3 as new take profit strategy
- First Release of the strategy