$TRAILING
De instructie $TRAILING stelt een trailing stop in als een vaste geldafstand in de valuta van het instrument met SET STOP $TRAILING in ProBacktest en ProOrder.
Syntaxis
SET STOP $TRAILING xParameters
| Naam | Type | Standaard | Beschrijving |
|---|---|---|---|
x | numeriek | geen | Maximaal toegestane teruggave vanaf de beste prijs sinds de instap, uitgedrukt in de valuta van het verhandelde instrument. |
Hoe het werkt
$TRAILING combineert met SET STOP alleen. Het gedraagt zich als SET STOP $LOSS met één verschil: de referentieprijs schuift alleen in één richting mee. Voor een long positie loopt de stop mee onder de hoogste koers sinds de instap, op een afstand gelijk aan x valuta-eenheden gegeven de position size, en hij beweegt nooit naar beneden. Bij een short positie loopt hij mee boven de laagste bereikte prijs. Wanneer de prijs de volledige afstand terugloopt, sluit de positie.
Het geldbedrag wordt via de position size en de puntwaarde van het instrument omgezet in een prijsafstand, zodat hetzelfde x levert een nauwer prijsspoor op bij een grotere positie. De instelling blijft gelden voor de huidige en alle toekomstige posities totdat een volgende SET STOP aanroep overschrijft dat, en een waarde van 0 schakelt het uit.
Het praktische effect is een plafond op hoeveel open winst de trade kan teruggeven, gemeten in voor de rekening relevante eenheden in plaats van in punten of procenten.
Voorbeelden
Voorbeeld 1, Pullback-instap met een trail van 100 valuta-eenheden (ProBacktest)
// Moving averages framing the pullback
i1 = Average[100](close)
i2 = Average[5](close)
// Uptrend pullback with three rising lows
tradeinitiate = Close > i1 AND Close < i2 AND Low[3] > Low[2] AND Low[2] > Low[1] AND Low[1] > Low
IF NOT LongOnMarket AND tradeinitiate THEN
BUY 1 CONTRACTS AT MARKET
// Give the trade at most 100 of retracement from its best price
SET STOP $TRAILING 100
ENDIFDe strategie koopt pullbacks in een uptrend. Vanaf de instap volgt de stop de hoogst bereikte prijs en stapt uit na een retracement ter waarde van 100 valuta-eenheden.
Voorbeeld 2, Geldtrail op een short breakout (ProOrder)
support = Lowest[20](low)
IF NOT ShortOnMarket AND close crosses under support[1] THEN
SELLSHORT 1 CONTRACT AT MARKET
ENDIF
// The stop trails above the lows, exit after a 75 currency-unit bounce
SET STOP $TRAILING 75Aan de short-zijde volgt de trail de prijs naar beneden; alleen een opleving ter waarde van 75 valuta-eenheden tegen de positie in zet de exit in werking.
Voorbeeld 3, Eerst een statische geldstop, trailen na activering (ProOrder)
DEFPARAM CumulateOrders = false
IF NOT OnMarket AND close crosses over Highest[20](high)[1] THEN
BUY 1 CONTRACT AT MARKET
// Fixed risk while the breakout proves itself
SET STOP $LOSS 120
ENDIF
// Once the trade is 100 ahead in money terms, switch to a trail
IF LongOnMarket AND (close - TRADEPRICE) * POINTVALUE / POINTSIZE >= 100 THEN
SET STOP $TRAILING 60
ENDIFEen uitstap in twee fasen, volledig in geld uitgedrukt: een statisch risicoplafond van 120 bij de instap, vervangen door een trailing give-back van 60 zodra de open winst 100 bereikt. De omrekening gebruikt POINTVALUE en POINTSIZE om de prijsbeweging om te zetten in valuta voor een positie van één contract.
Veelvoorkomende fouten en valkuilen
- Verkeerde SET-combinatie.
$TRAILINGis een stopinstructie en combineert metSET STOPalleen. Er is geenSET TARGET $TRAILING; winstdoelen gebruiken$PROFIT. - Geld, geen punten.
SET STOP $TRAILING 100staat een terugval van 100 valuta-eenheden toe, niet 100 punten. De puntenvariant isPTRAILING, en het verwarren van de twee verandert de stopafstand met de puntwaarde van het instrument. - Position size herschaalt de trail. Omdat de geldafstand over de positie wordt verdeeld, halveert een verdubbeling van de hoeveelheid het prijsgat. Wijzigingen in de position size kunnen een comfortabele trail veranderen in een trail binnen de normale bar-ruis.
- Één stop-slot.
$TRAILING,%TRAILING,$LOSS,PLOSSenBREAKEVENoverschrijven dezelfde interne stop; alleen de meest recenteSET STOPaanroep is actief. Per bar wisselen tussen beide levert onvoorspelbare exits op. - Granulariteit van de backtest. ProBacktest werkt het meegetrokken niveau bij op basis van bar-data. Live uitvoering trailt tick voor tick, dus live exits kunnen op snelle bars licht afwijken van die in de backtest.
Gerelateerde instructies
%TRAILING, trailing stop als percentage van de positieprijs.PTRAILING, trailing stop als afstand in punten.TRAILING, overzicht van de trailing stop-familie.$LOSS, statische stop loss als een vast geldbedrag.$PROFIT, take profit als vast geldbedrag.BREAKEVEN, verplaatst de stop of het target naar de instapprijs.STOP, pending stoporders en de SET STOP-familie.POINTVALUE, valutawaarde van één punt, gebruikt bij de omrekening van geld naar prijs.LONGONMARKET, waar zolang er een long positie open is.