Bli medlem i dag
ProBacktest/probacktest · proorder

$TRAILING

Instruksjonen $TRAILING setter en trailing stop som en fast pengeavstand i instrumentets valuta med SET STOP $TRAILING i ProBacktest og ProOrder.

Syntaks

probuilder
SET STOP $TRAILING x

Parametere

NavnTypeStandardBeskrivelse
xnumeriskingenMaksimal tilbakegivelse som tillates fra den beste prisen siden inngangen, uttrykt i valutaen til det handlede instrumentet.

Slik fungerer det

$TRAILING kombineres med SET STOP bare. Den oppfører seg som SET STOP $LOSS med én forskjell: referanseprisen flyttes bare én vei. For en long posisjon følger stoppen under den høyeste prisen som er nådd siden inngang, med en avstand som tilsvarer x valutaenheter gitt position size, og den flytter seg aldri ned. For en short-posisjon ligger den over den laveste prisen som er nådd. Når prisen trekker seg tilbake hele avstanden, lukkes posisjonen.

Pengebeløpet oversettes til en prisavstand gjennom position size og punktverdien til instrumentet, så samme x gir et tettere prisspor på en større posisjon. Innstillingen varer for gjeldende og alle fremtidige posisjoner til et nytt SET STOP kallet overstyrer den, og en verdi på 0 deaktiverer den.

Den praktiske virkningen er en grense for hvor mye åpen gevinst handelen kan gi tilbake, målt i kontorelevante størrelser i stedet for i punkter eller prosent.

Eksempler

Eksempel 1, Pullback-inngang med en trail på 100 valutaenheter (ProBacktest)

probuilder
// 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
ENDIF

Strategien kjøper pullbacker i en opptrend. Fra inngangen og utover følger stoppen den høyeste prisen som er nådd, og går ut etter en tilbaketrekning verdt 100 valutaenheter.

Eksempel 2, Pengetrail på et short breakout (ProOrder)

probuilder
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 75

På short-siden følger trailen prisen nedover; bare et oppsving verdt 75 valutaenheter mot posisjonen utløser utgangen.

Eksempel 3, Statisk pengestopp først, trail etter aktivering (ProOrder)

probuilder
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
ENDIF

En tofaset utgang uttrykt helt i penger: et statisk risikotak på 120 ved inngang, erstattet av en trailing tilbakegivelse på 60 når den åpne gevinsten når 100. Konverteringen bruker POINTVALUE og POINTSIZE for å gjøre prisbevegelsen om til valuta for en posisjon på én kontrakt.

Vanlige feil og fallgruver

  • Feil SET-paring. $TRAILING er en stoppinstruksjon og kombineres med SET STOP bare. Det finnes ingen SET TARGET $TRAILING; profittmål bruker $PROFIT.
  • Penger, ikke punkter. SET STOP $TRAILING 100 tillater en tilbakegang verdt 100 valutaenheter, ikke 100 punkter. Punktvarianten er PTRAILING, og å forveksle de to endrer stoppavstanden med instrumentets punktverdi.
  • Position size skalerer trailen på nytt. Fordi pengeavstanden fordeles over posisjonen, halveres prisgapet når antallet dobles. Endringer i position size kan gjøre en romslig trail til en som ligger innenfor normal barstøy.
  • Én plass for stop. $TRAILING, %TRAILING, $LOSS, PLOSS og BREAKEVEN overskriver samme interne stopp; bare det nyeste SET STOP kallet er aktivt. Å veksle mellom dem per bar gir ustabile utganger.
  • Granularitet i backtest. ProBacktest oppdaterer det trailede nivået fra bardata. Utførelse live trailer tick for tick, så utganger live kan avvike litt fra de backtestede på raske barer.
  • %TRAILING, trailing stop som en prosentandel av posisjonsprisen.
  • PTRAILING, trailing stop som en avstand i punkter.
  • TRAILING, oversikt over trailing stop-familien.
  • $LOSS, statisk stop loss som et fast pengebeløp.
  • $PROFIT, take profit som et fast pengebeløp.
  • BREAKEVEN, flytter stoppen eller målet til inngangsprisen.
  • STOP, ventende stop-ordrer og SET STOP-familien.
  • POINTVALUE, valutaverdien av ett punkt, brukt i konvertering fra penger til pris.
  • LONGONMARKET, sann så lenge en long-posisjon er åpen.