Word nu lid
ProBacktest/probacktest · proorder

TRAILING

TRAILING stelt een trailing stop in in ProBacktest en ProOrder via SET STOP TRAILING x, waarbij de stop met de prijs meebeweegt op een vaste afstand van x punten van de markt.

Syntaxis

probuilder
SET STOP TRAILING x

Parameters

NaamTypeStandaardBeschrijving
xnumeriekgeenAfstand in punten tussen de stop en de meest gunstige bereikte prijs.

Hoe het werkt

Een vaste stop blijft waar hij is geplaatst. Een trailing stop volgt de trade. SET STOP TRAILING x plaatst de stop x punten van de prijs af en schuift hem daarna mee op naarmate de positie winst maakt: bij een long stijgt de stop wanneer nieuwe highs worden gezet, bij een short daalt hij wanneer nieuwe lows worden gezet. De stop wordt alleen strakker, een ongunstige beweging duwt hem nooit terug.

Het resultaat is een ingebouwde exit die een winnende trade laat doorlopen en tegelijk begrenst hoeveel openstaande winst kan worden teruggegeven. Zodra de prijs omkeert met x punten van het beste niveau af staat, sluit de positie. Er is geen handmatige code voor stopbeheer nodig, de engine onderhoudt het niveau bar voor bar.

De afstand wordt uitgedrukt in punten. Verwante instructies dekken andere eenheden, PTRAILING trailt in pips, %TRAILING in procent van de koers, en $TRAILING in accountvaluta. Ze bezetten allemaal hetzelfde interne stopslot als SET STOP LOSS en BREAKEVEN, dus de meest recente SET STOP statement is het geldende.

Voorbeelden

Voorbeeld 1, Pullback-instap beschermd door een trail van 10 punten (ProOrder)

probuilder
// Trend and pullback filters
i1 = average(close)[100]
i2 = average(close)[5]

// Enter on a pullback inside a longer uptrend, exit on strength
tradeinitiate = Close > i1 AND Close < i2 AND Low[3] > Low[2] AND Low[2] > Low[1] AND Low[1] > Low
tradeclose = Close > Close[1]

IF NOT LongOnMarket AND tradeinitiate THEN
  BUY 1 CONTRACTS AT MARKET
ENDIF

IF LongOnMarket AND tradeclose THEN
  SELL AT MARKET
ENDIF

// Safety net: trail the stop 10 points behind the best price
SET STOP TRAILING 10

De strategie heeft zijn eigen uitstapregel en de trailing stop werkt als een permanent veiligheidsnet 10 punten achter de meest gunstige prijs. Dit behoudt het referentievoorbeeld voor de instructie.

Voorbeeld 2, Trailing-afstand geschaald met ATR (ProBacktest)

probuilder
atr = AverageTrueRange[14](close)
// Trail at twice the ATR, converted into points
trailPoints = ROUND(2 * atr / pointsize)

IF NOT onmarket AND close crosses over average[50](close) THEN
  BUY 1 CONTRACT AT MARKET
ENDIF

SET STOP TRAILING trailPoints

De trailing-afstand past zich aan de volatiliteit aan. In rustige markten blijft de stop dicht bij de prijs, in volatiele markten blijft hij ver genoeg weg om niet door ruis uit de markt te worden geschud.

Voorbeeld 3, Trail die alleen wordt geactiveerd nadat de trade in winst staat (ProOrder)

probuilder
IF NOT onmarket AND close > highest[20](high)[1] THEN
  BUY 1 CONTRACT AT MARKET
  SET STOP LOSS 30
ENDIF

// Switch from fixed stop to a tight trail once 20 points in profit
IF longonmarket AND close - tradeprice >= 20 * pointsize THEN
  SET STOP TRAILING 10
ENDIF

De trade start met een ruime vaste stop. Zodra hij 20 punten heeft opgebouwd, vervangt de code die door een trailing stop van 10 punten, waarmee het grootste deel van de winst wordt vastgelegd terwijl er ruimte blijft om door te lopen.

Veelvoorkomende fouten en valkuilen

  • Punten, geen valuta of procenten. SET STOP TRAILING 10 betekent 10 punten. Gebruik voor pips, procenten of geldafstanden PTRAILING, %TRAILING, of $TRAILING, bij sommige instrumenten zet het verwarren van de eenheden de stop ordes van grootte verkeerd.
  • Één stop-slot. Trailing stops, SET STOP LOSS, en BREAKEVEN overschrijven elkaar: alleen de meest recente opdracht is actief. Code die op elke bar een vaste stop afgeeft na de trailing-opdracht schakelt de trail stilletjes uit.
  • Te krap voor het tijdframe. Een afstand kleiner dan de normale ruis van bar tot bar wordt bijna direct geraakt. Schaal de afstand naar de volatiliteit, bijvoorbeeld met ATR, in plaats van een klein rond getal te kiezen.
  • Backtest-fills zijn geïdealiseerd. ProBacktest stapt exact op het meegetrokken niveau uit. Live ProOrder-uitvoering kan er in snelle markten voorbij slippen, dus trailing stop-systemen presteren live meestal iets slechter dan in de backtest.
  • PTRAILING, trailing stop uitgedrukt in pips.
  • %TRAILING, trailing stop uitgedrukt in procent van de prijs.
  • $TRAILING, trailing stop uitgedrukt in rekeningvaluta.
  • STOP, vaste stop loss-configuratie met SET STOP LOSS.
  • BREAKEVEN, verplaatst de stop of het target naar de instapprijs.
  • TARGET, take profit-configuratie voor de positie.
  • TRADEPRICE, instapprijs van de huidige positie.
  • LONGONMARKET, waar zolang er een long positie open is.