Candle Range Theory (CRT) Strategy
Aangemaakt op 16 mrt. 2025
·
Bijgewerkt op 05 sep. 2025
De Candle Range Theory (CRT) Strategy is een Premium mechanische strategie voor het NinjaTrader 8-platform. De strategie kan worden gebruikt om propfirm-evaluatie-challenges te halen.
Vereisten
Om deze strategie goed te kunnen gebruiken, moet je onderstaande vereisten beschikbaar hebben.
- NinjaTrader 8, met elk type licentie. 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 de Candle Range Theory (CRT)-methodologie.
Kort gezegd is het CRT-entrymodel een entrymodel met een hoge kans en een vooraf bepaalde risk/reward-verhouding. Het is gebaseerd op het analyseren van een kaarsenpatroon op een hogere timeframe en het zoeken naar entrybevestiging op een lagere timeframe.
Op de hogere timeframe zoeken we naar een CRT-kaarsenpatroon — een reeks die de Accumulation-, Manipulation-, Distribution-structuur volgt en over drie kaarsen wordt gevormd:
- De eerste kaars is een lange accumulatiekaars.
- De tweede kaars is een manipulatiekaars, waarbij de koers een wick vormt die boven de high van de vorige kaars uitkomt, maar weer terugvalt en binnen de body van de vorige kaars sluit.
- De derde kaars is de distributiekaars, waarbij de koers de onderste wick van de tweede kaars doorbreekt en de low van de eerste kaars in (en daarbuiten) beweegt.
De entrytrigger voor dit model is het doorbreken van de onderste wick van de tweede kaars (voor een longentry geldt het omgekeerde). Die trigger wordt geanalyseerd op een snellere, lagere timeframe — als het CRT-kaarsenpatroon bijvoorbeeld op een 1-uurs timeframe wordt gezien, kan entrybevestiging worden gezocht op de 1-minuten- of 5-minuten timeframe.
Een lagere timeframe wordt gebruikt voor entrybevestiging, zodat de trade tijdig kan worden geopend — via een Fair Value Gap, of gewoon door te wachten tot de lagere timeframe sluit onder de onderste wick van de tweede kaars.
Een voordeel van dit model is dat de verhouding take-profit/stop-loss vooraf bekend is voordat je de trade opent: over het algemeen wordt de stop loss een paar ticks voorbij de manipulatiekaars (2e kaars) geplaatst, en is het take-profitdoel de low van de eerste kaars (of de high, voor een longentry).
Chartvoorbeelden
Deze voorbeelden zijn niet bedoeld om aan te tonen dat de strategie winst oplevert — het zijn bewust uitgekozen winnende trades, gekozen om verwarring te voorkomen en om de best-case scenario's te illustreren waarin de entry-setup goed werkt. Als je de strategie zelf draait, zul je zien dat veel vergelijkbare entry-setups tot verliezende trades leiden — dat is de realiteit van trading. Het doel is verwachte winstgevendheid op de lange termijn, ook al zijn sommige individuele trades verliezers.
MES, 1-minutenchart / 1-uurs hogere timeframe
Op MES, 1-minuten timeframe, met de 1-uurs timeframe als hogere timeframe (als overlay op de chart getekend, wat erg handig is). Dit voorbeeld toont twee aparte entries — de eerste een long entry, de tweede een short entry. De kaarsen gemarkeerd met 1 en 2 zijn de kaarsen die elke entry hebben gegenereerd, en de TP/SL-markers tonen waar de take-profit- en stop-loss-niveaus waren ingesteld.
MES, 1-minutenchart — 2x CRT-kaars take profit
De strategie ondersteunt meerdere take-profit- en stop-loss-strategieën. De standaard CRT take profit is ingesteld op de high/low-wick van de eerste (accumulatie)kaars, maar dit kan worden uitgebreid tot een veelvoud van die range — dit voorbeeld illustreert de factor 2. De marker 1X toont het eerste take-profitniveau, en 2X toont waar het 2x take-profitniveau in plaats daarvan was ingesteld — wat op de lange termijn een hogere verwachte winst oplevert.
Functies
De CRT-strategie heeft een set unieke functies:
- Robuuste eigen implementatie van het Candle Range Theory entry-setup-algoritme
- Er worden geen pending orders geplaatst — alleen market orders, wat geen afgewezen orders of gedeeltelijke fills oplevert
- Volledig geautomatiseerde strategie die kan worden opgeschaald naar meerdere instanties
- Nauwkeurige backtestmogelijkheden volgens de officiële best practices van NinjaTrader, met nauwkeurige entry-/exitbacktests op tickniveau
- Een robuuste eigen order-managementbibliotheek, bestand tegen verbindingsverlies, die naadloos werkt op Rithmic-accounts of NinjaTrader-brokeraccounts
- Knoppen op de chart om posities handmatig te beheren wanneer nodig
- Een zeer lichte strategie die in meerdere instanties kan draaien, zelfs op een VPS met weinig rekenkracht
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 voor elke positie dezelfde hoeveelheid. 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 $) per positie en de maximaal toegestane hoeveelheid — wat gelijke winst- en verliesbedragen oplevert, 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 dropdown.
- SuperTrend: gebruikt de SuperTrend-indicator om de stop loss te laten meelopen en exits dynamisch te beheren.
- Klassieke Trailing Stop: laat de stop loss meelopen op basis van een trigger en een trailingbedrag.
De strategie maakt het ook mogelijk de stop loss op basis van meerdere strategieën in te stellen en de take profit op basis van een verhouding — zie de sectie Parameters voor details.
Accountbeheer
De strategie implementeert dagelijkse stop-triggers voor het handelen, gebaseerd op het aantal netto winnende posities, het aantal netto verliesgevende posities, of een doel voor gerealiseerde netto winst of netto verlies.
Parameters
We proberen de parameters tot een minimum te beperken — alleen de belangrijkste worden getoond.
| Algemeen | |
| Execute Historical Trades | Maakt het mogelijk trades uit te voeren wanneer de strategie draait in Historical-, Backtest- of Optimization-modus — moet uitgevinkt zijn bij live handelen. |
| Daily TakeProfit Target | De strategie stopt voor die dag zodra dit dagelijkse take-profitbedrag is bereikt nadat een positie is gesloten. Wordt genegeerd als het op 0 staat. |
| Daily StopLoss Limit | De strategie stopt voor die dag zodra de dagelijkse verliesgrens is bereikt nadat een positie is gesloten (positieve waarde — bijv. 300 stopt het handelen zodra de gerealiseerde PnL ≤ -$300 is). Wordt genegeerd als het op 0 staat. |
| Stop @ Winning Count | Stopt het handelen voor die dag zodra het aantal netto winnende trades deze waarde bereikt. Wordt genegeerd als het op 0 staat. |
| Stop @ Losing Count | Stopt het handelen voor die dag zodra het aantal netto verliesgevende trades deze waarde bereikt. Wordt genegeerd als het op 0 staat. |
| Render Opacity (1-100) | Dekking die wordt gebruikt om objecten op de chart te tekenen. |
| Execute on Different Instrument | Voert trades uit op een ander instrument dan dat van de actieve chart — bijv. de logica draaien op Minis maar uitvoeren op Micros om het risico beter te beheren. Alle risicoberekeningen gebeuren op het uitvoeringsinstrument, en trades op een ander instrument worden niet op de chart getekend. |
| Execution Instrument | Kies uit een lijst met Micros die beschikbaar zijn op je NinjaTrader-verbinding als het instrument waarop trades worden uitgevoerd. Historische en live trades worden in dit geval niet op de chart getekend. |
| Marktstructuur | |
| Higher TimeFrame | Selecteert de hogere timeframe waarop de analyse van de entry-setup draait. Zorg dat je een timeframe kiest die hoger is dan en van hetzelfde type is als die van de actieve chart — bijv. je kunt geen op ticks gebaseerde hogere timeframe selecteren terwijl de timeframe van de chart op minuten is gebaseerd. |
| Higher TimeFrame Period | Stelt de periode van de hogere timeframe in. |
| Entry-setup | |
| Time Zone |
De tijdzone die wordt gebruikt voor de parameter Trade Time hieronder. Futures-markten werken op Amerikaanse oostkusttijd (EST), dus hiermee kun je het handelsinterval in plaats daarvan relatief ten opzichte van de tijdzone van je eigen computer opgeven.
|
| Trade Time |
Het/de tijdsinterval(len) waarbinnen de strategie trades mag plaatsen. Enkele voorbeelden:
|
| Quantity Strategy |
|
| Max Qty | Maximaal toegestane hoeveelheid wanneer Risk Adjusted is geselecteerd — handig omdat sommige propfirms limieten op het aantal orders hanteren die een account ongeldig kunnen maken. |
| Long/Short Entry Mode |
Handig als je al een richtingsgerichte dagelijkse bias hebt en het handelen tot één richting wilt beperken.
|
| Trade Entry Mode |
Entrymodus nadat een geldige CRT-reeks is gedetecteerd.
|
| Min CRT Ticks | De minimale grootte, in ticks, van het winstgebied van de CRT-kaars. Een CRT-kaars waarvan de range te klein is om de moeite waard te verhandelen — d.w.z. de afstand van het entrysignaal tot de take-profit-wick is zeer klein — wordt overgeslagen. |
| Min CRT Ratio | De CRT-ratio is de win:loss-verhouding van de trade — de afstand van het entrysignaal tot de take-profit-wick (de high-wick van de eerste CRT-kaars voor een long, de low-wick voor een short), gedeeld door de afstand van de entryprijs tot de stop-loss-wick (de low-wick van de eerste CRT-kaars voor een long, de high-wick voor een short). Deze parameter stelt de minimaal toegestane verhouding in; entries onder die waarde worden overgeslagen. |
| SuperTrend Entry Filter | Schakelt het gebruik van de SuperTrend-indicator als entryfilter in of uit — wanneer ingeschakeld, zijn longtrades alleen toegestaan wanneer SuperTrend bullish is, en shorttrades alleen wanneer die bearish is. |
| Order Qty | Alleen gebruikt wanneer Quantity Strategy Fixed is — de vaste hoeveelheid per trade (en per hoeveelheidsverhoging, als het order-managementmechanisme opschaalt). Doorgaans 1 of 2. |
| SuperTrend | |
| Dit gedeelte is alleen zichtbaar wanneer SuperTrend Entry Filter is ingeschakeld. | |
| SuperTrend Mode |
|
| Period / Multiplier / Moving Avg. Type / Smooth | Standaard SuperTrend-berekeningsparameters — periode, bandvermenigvuldiger (hoe hoger de waarde, hoe breder de band), type voortschrijdend gemiddelde en afvlakkingsperiode. |
| Run SuperTrend on Higher TF | Berekent de SuperTrend-indicator op de koersreeks van de hogere timeframe in plaats van op de eigen timeframe van de chart. |
| Ordermanagement | |
| Order Management Strategy |
|
| ATM Strategy Template Name | Alleen gebruikt bij de ordermanagementmethode ATM Strategy — de exacte templatenaam van je eigen ATM-strategie (passend bij de afbeelding hierboven zou dit template1 zijn). Moet overeenkomen met een bestaand template, anders wordt geen positie geopend. |
| On Opposite Signal |
Het gedrag van de strategie wanneer een tegengesteld signaal optreedt terwijl een positie open is.
|
| Enable Price Breakeven | Schakelt het op koers gebaseerde breakevenmechanisme in of uit. |
| Breakeven Price Strategy |
|
| Breakeven Price Trigger | Beschikbaar als op koers gebaseerde breakeven is ingeschakeld — de triggerwaarde die nodig is om de stop loss naar breakeven te verplaatsen. |
| Enable Time Breakeven | Schakelt het op tijd (in minuten) gebaseerde breakevenmechanisme in of uit. |
| Breakeven Time Trigger | Beschikbaar als 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 |
|
| Target Risk Per Trade ($) | Maximaal 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 bij Risk Adjusted-hoeveelheid — bepaalt hoe ver het werkelijk berekende risico mag afwijken van het Target Risk (omdat een exacte overeenkomst zelden mogelijk is). |
| Stop Loss Points | Beschikbaar wanneer de StopLoss Strategy op Points staat. |
| Take Profit Currency | Het take-profitbedrag in dollars, gebruikt wanneer de take-profitstrategie Fixed Currency Value is geselecteerd. Als dit niet wordt gebruikt, stel het dan in op een hoge waarde zodat het de op verhoudingen gebaseerde strategieën niet beïnvloedt. |
| Scale out % Qty at % Target | Sluit een percentage van de hoeveelheid van de positie zodra de koers een percentage van het winstdoel bereikt (naar beneden afgerond bij breuken — bijv. 50% van een positie van 5 contracten sluit 2 contracten). |
| Scale out at % Target | Het percentage van het winstdoel dat het scale-outmechanisme activeert. |
| Scale out % Qty | Het percentage van de hoeveelheid dat door het scale-outmechanisme wordt gesloten. |
| Take Profit Points | Beschikbaar wanneer de TakeProfit Strategy op Points staat. |
| Trailingstop-parameters | |
| Trailing Stop Strategy |
Beschikbaar bij de ordermanagementmethode Classic Trail Stop.
|
| Trailing Stop Trigger | De trigger (in punten of verhouding) voor de methode Classic Trail Stop. |
| Trail Amount | Het bedrag (in punten of verhouding) dat wordt getrailed zodra de trigger is bereikt. |
| Commandoknoppen | |
De strategie toont handmatige commandoknoppen op het Chart Trader-paneel — zorg dat het op je actieve chart wordt weergegeven.![]() | |
| Arm/Disarm Buttons | Handmatig het openen van long- of shorttrades in- of uitschakelen — handig als je een richtingsgerichte bias hebt. |
| Close Position Button | Sluit de positie op het actieve instrument direct zonder de strategie te herstarten, die daarna blijft zoeken naar nieuwe trades. |
| Increase / Decrease Qty Button | Past de hoeveelheid van de huidige actieve positie aan met ±1 contract. |
| Set Breakeven Button | Verplaatst de stop loss van de open positie naar breakeven, als dit de stop loss zou verbeteren. |
Prestatierapporten
Resultaten uit het verleden zijn geen garantie voor toekomstige resultaten. Alle backtestresultaten dienen uitsluitend ter indicatie.
- Commissies zijn inbegrepen, met het commissieschema van NinjaTrader's Lifetime-licentie, voor realistische resultaten.
- We volgen de officiële handleiding van NinjaTrader voor nauwkeurige backtesting op intrabar-granulariteit met extra tickniveau-datareeksen, en gebruiken in zowel realtime als backtestmodus alleen market orders — nooit pending orders.
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: fix error when running without supertrend
- Bug fix: SuperTrend MA Type was always taking HMA, now takes selected parameter type; Fix SL & TP manual drag & drop issues; Fixed price breakeven logic when take profit strategy is Fixed Value; Removed "Dollar Cost Averaging" order management method; Supertrend added as Order Management method; Added New stoploss strategy: SuperTrend; Supertrend can run on Lower or Higher timeframe
- Bug Fix: Error when using ATM Strategy
- First Release of the strategy
