Iscriviti ora
ProBacktest/probacktest · proorder

PTRAILING

SET STOP PTRAILING in ProBacktest and ProOrder sets a trailing stop that follows price at a fixed distance in points. PTRAILING syntax, examples, and gotchas.

Sintassi

probuilder
SET STOP PTRAILING x

Parametri

NomeTipoPredefinitoDescrizione
xnumeronessunoDistanza in punti tra il prezzo di mercato e il trailing stop. Accetta valori letterali, variabili ed espressioni.

Come funziona

SET STOP PTRAILING dichiara un ordine di stop dinamico che segue il mercato a una distanza fissa di punti. Per una posizione long lo stop si colloca x punti sotto il prezzo massimo raggiunto dall'ingresso; quando il prezzo segna un nuovo massimo, lo stop sale con esso, e quando il prezzo scende lo stop mantiene il suo livello. La posizione si chiude quando il prezzo ritraccia di x punti dal suo livello migliore. Le posizioni short rispecchiano questo comportamento sopra il mercato.

Come tutte le dichiarazioni SET, l'istruzione è persistente. Dichiarata una volta, di solito su una riga a sé fuori da qualsiasi blocco IF, si applica alla posizione corrente e a ogni posizione successiva fino a un'altra SET STOP chiamata lo sostituisce.

La distanza è misurata in punti. Le varianti affini coprono altre unità: SET STOP TRAILING per le unità di prezzo, SET STOP %TRAILING per la percentuale, e SET STOP $TRAILING per la valuta del conto.

Esempi

Esempio 1, Trailing stop su un ingresso in pullback (ProBacktest)

probuilder
// Trend filter and short-term average
i1 = average(close)[100]
i2 = average(close)[5]

// Enter on a three-bar pullback inside an uptrend
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

// Protective stop trails 10 points behind price
SET STOP PTRAILING 10

La strategia compra i pullback sopra la media a 100 barre ed esce sulla forza, mentre il trailing stop limita qualsiasi ritracciamento a 10 punti. Questo è l'esempio tratto dal riferimento ufficiale.

Esempio 2, Ingresso breakout protetto da un trail basato sui punti (ProOrder)

probuilder
DEFPARAM CumulateOrders = false

// Enter on a 20-bar breakout
IF NOT onmarket AND close > highest[20](high)[1] THEN
  BUY 1 CONTRACT AT MARKET
ENDIF

// Let the trade run, exit after a 25-point retracement
SET STOP PTRAILING 25

Non viene usato alcun target fisso. Il trailing stop è l'unica uscita, quindi l'operazione resta aperta finché il prezzo continua a salire senza un pullback di 25 punti.

Esempio 3, Trailing di una posizione short (ProOrder)

probuilder
DEFPARAM CumulateOrders = false

// Short when price loses the 50-bar average
IF NOT onmarket AND close CROSSES UNDER Average[50](close) THEN
  SELLSHORT 1 CONTRACT AT MARKET
ENDIF

// Stop trails 15 points above the falling price
SET STOP PTRAILING 15

Per uno short, lo stop si trova sopra il mercato e scende a gradini mentre il prezzo segna nuovi minimi, chiudendo l'operazione dopo un rimbalzo di 15 punti.

Errori e insidie comuni

  • Punti, non unità di prezzo o percentuali. PTRAILING segue in punti, TRAILING in unità di prezzo, %TRAILING in percentuale e $TRAILING nella valuta del conto. Scegliere la variante sbagliata su uno strumento con un punto di dimensione piccola crea uno stop che è praticamente al mercato o assurdamente lontano.
  • Uno slot di stop per posizione. SET STOP PTRAILING, SET STOP LOSS, e SET STOP BREAKEVEN scrivono tutte sullo stesso stop interno, e vince la chiamata più recente. Alternarle barra per barra produce uscite erratiche; scegli una sola politica di stop per operazione.
  • I backtest eseguono i trailing stop in modo ottimistico. ProBacktest valuta il trail sui dati delle barre e presume esecuzioni pulite al livello dello stop. L'esecuzione live nei mercati veloci scivola oltre il livello, quindi i risultati live sono sistematicamente peggiori della simulazione per i trail stretti.
  • Un trail troppo stretto si trasforma in un'uscita immediata. Una distanza inferiore al normale rumore da barra a barra dello strumento chiude la maggior parte delle operazioni entro poche barre. Dimensiona la distanza sulla volatilità misurata, per esempio un multiplo di ATR convertito in punti, invece di una stima fissa.
  • TRAILING, distanza del trailing stop in unità di prezzo.
  • %TRAILING, distanza del trailing stop in percentuale.
  • $TRAILING, distanza del trailing stop nella valuta del conto.
  • SET, prefisso di tutte le dichiarazioni di gestione degli ordini.
  • STOP, il lato dello stop di protezione dell'istruzione SET.
  • BREAKEVEN, sposta lo stop o il target al prezzo di ingresso.
  • PLOSS, distanza fissa di stop loss in punti.
  • TRADEPRICE, il prezzo di ingresso della posizione corrente.
  • POINTSIZE, il valore di un punto dello strumento.
  • LONGONMARKET, vero mentre una posizione long è aperta.