Categoria
Rischio
Livello
Base
Si usa in
Gestione del rischioOperatività su MT5Progettazione della strategia

Stop loss

Lo stop loss è il livello di prezzo collegato a una posizione al quale il broker la chiude in automatico, limitando la perdita di quell'operazione. Risiede sul server del broker, quindi funziona anche quando il terminale è spento.

anche: SL, stop fisso, stop di protezione

Aggiornato · Revisionato

In parole semplici

Il prezzo al quale hai accettato in anticipo di avere torto. Impostarlo trasforma una posizione aperta in un costo noto.

Perché conta

Uno stop loss fissa il caso peggiore prima che il mercato possa dire la sua. Dimensione della posizione, rapporto rischio/rendimento e drawdown atteso discendono tutti da quell'unica distanza. Senza, una strategia dichiara le perdite che ha chiuso, non quelle che può subire.

  • Trasforma il rischio in aritmetica. Una distanza di stop più un limite di rischio producono una dimensione del lotto; senza, non c'è nulla su cui basare il dimensionamento.
  • Una volta impostato risiede sul server del broker, quindi scatta anche con il terminale chiuso o mentre il VPS si riavvia.
  • La sua assenza lascia il caso peggiore senza limite. Il grid e il recupero in martingala lo omettono, ed è per questo che quelle curve sembrano tranquille finché non lo sono più.

In MetaTrader 5

Dove compare in MT5

  • Finestra Nuovo ordine (F9) → Stop Loss — si imposta all'ingresso, in termini di prezzo e non di pip
  • Toolbox → scheda Trade → clic destro su una posizione → Modifica o elimina posizione
  • Market Watch → clic destro sul simbolo → Specifica — la riga Stops level contiene la distanza minima che questo broker accetta
  • Toolbox → Journal — è qui che compare il rifiuto per stop non valido, non nella scheda Experts
  • Strategy Tester → Inputs — uno stop è un input come tutti gli altri, quindi l'ottimizzatore lo adatta ai tuoi dati storici

Come lo usano gli EA

  • Impostato all'ingresso nella stessa MqlTradeRequest dell'ordine. Il campo sl contiene un prezzo, non una distanza, quindi è l'EA a convertire i pip.
  • Applicato in un secondo momento con TRADE_ACTION_SLTP, oppure con CTrade::PositionModify(), quando la strategia ha bisogno prima del prezzo di esecuzione.
  • Di norma viene distribuita una distanza fissa: nessuno dei 27 registri pubblicati qui ricava il proprio stop dall'ATR.
  • I broker rifiutano uno stop più vicino al prezzo di quanto consenta SYMBOL_TRADE_STOPS_LEVEL. L'EA deve gestire quel rifiuto, non dare per scontato che lo stop sia stato accettato.

Impostazioni tipiche

Impostazione Valore tipico Nota
Multiplo di ATR (stop sulla volatilità) 1,5–2,5 × ATR(14) Una raccomandazione, non un censimento — nessun registro qui è impostato così. Sotto 1,5 lo stop resta dentro il movimento ordinario.
Stop distribuito, i 16 EA a stop singolo presenti qui 25–114 pip, mediana 100 Ciò che questi build inviano davvero. Cinque dei sedici inviano esattamente 114.
Rischio per operazione 0,5–2 % del saldo Questo e la distanza di stop fissano la dimensione del lotto. Scegliere prima il lotto inverte la logica.
Distanza minima dal prezzo stops level del broker Market Watch → Specifica lo riporta. Uno stop più vicino di così non raggiunge mai il server.
Spostamento al punto di pareggio dopo un profitto pari a 1 × la distanza di stop Comune, e non gratuito: su un ritracciamento trasforma alcune operazioni vincenti in chiusure a zero.

Problemi operativi frequenti

  • L'ordine viene eseguito, lo stop torna indietro rifiutato perché troppo vicino al prezzo, e la posizione resta scoperta dietro una sola riga di journal.
  • L'EA calcola il livello dal prezzo richiesto invece che dal prezzo di esecuzione, quindi lo slippage sposta il rischio reale.
  • Punti e pip si scontrano sulle quotazioni a 5 decimali: uno stop da 30 pip parte come 30 punti.

Funzioni MT5 collegate

MqlTradeRequest.sl
Il prezzo di stop inviato con l'ordine; zero significa nessuno stop.
SymbolInfoInteger(symbol, SYMBOL_TRADE_STOPS_LEVEL)
Punti minimi tra il prezzo e uno stop, sotto i quali il broker lo rifiuta.
SymbolInfoInteger(symbol, SYMBOL_TRADE_FREEZE_LEVEL)
Distanza entro la quale il server rifiuta di modificare o chiudere un ordine.
PositionGetDouble(POSITION_SL)
Rilegge lo stop in vigore: la verifica che il server lo abbia davvero preso.

Esempio

Nessuno sceglie una distanza di stop da sola. Va insieme al limite di rischio, e la coppia produce la dimensione del lotto.

Saldo del conto
10.000 $
Rischio per operazione
1 % = 100 $
Distanza di stop
40 pip
Dimensione della posizione risultante
0,25 lotti
Circa 10 $ per pip per lotto su una coppia major.

Allarga lo stop a 80 pip e la dimensione deve dimezzarsi a 0,125, altrimenti il rischio raddoppia.

Calcolo 100 ÷ (40 × 10) = 0,25 lotti

Risultato Uno stop da 40 pip che costa esattamente 100 $ se viene raggiunto

Come si usa

Leggi uno stop come una coppia: la distanza e la dimensione che le corrisponde. Presa da sola, nessuna delle due dice nulla sul rischio.

Intervallo Significato
Stop entro 1 × ATR Il movimento ordinario chiude l'operazione; il win rate cala per ragioni che non hanno a che fare con l'ingresso.
1,5–2,5 × ATR, con dimensione adeguata Fuori dal rumore, e dimensionato in modo che sbagliare costi una cifra pianificata.
Stop largo, dimensione del lotto invariata Il rischio per operazione è cresciuto in proporzione all'allargamento.
Nessuno stop Il caso peggiore è il conto; il drawdown copre soltanto le perdite che si sono chiuse.
  • Rileggi POSITION_SL dopo l'esecuzione. Dare per scontato che il server abbia accettato la richiesta è il modo in cui le posizioni restano scoperte.
  • Conta una perdita da dove il prezzo ha chiuso, non da quanto è stato addebitato al conto: swap e commissioni rendono 207 di queste righe perdite in denaro che il prezzo aveva vinto.

Ogni EA presente qui dichiara la propria regola di stop e pubblica il registro delle operazioni, così la perdita realizzata sta accanto allo stop implicito. Le cifre misurate in questa pagina vengono da quei registri di backtest (EXP-STOP-OVERSHOOT-001).

Errori frequenti

Allontanare lo stop dal prezzo per non incassare la perdita

L'unica modifica che trasforma una perdita controllata in una incontrollata. Ogni cifra di rischio del conto poggiava su quel numero.

Credere che uno stop fissi il prezzo di uscita

È un livello di attivazione, non una promessa sul prezzo: i gap attraversano il livello e la posizione chiude al primo prezzo disponibile. Uno stop limit fissa invece il prezzo, al rischio di non essere eseguito; MT5 lo offre, MT4 no.

Usare uno stop a pip fissi in tutti i regimi

Trenta pip sono generosi in un mercato calmo e stanno dentro una sola candela in uno volatile.

Mettere lo stop dove il conto se lo può permettere

Uno stop collocato alla distanza che una posizione troppo grande tollera sta dentro il rumore. È la dimensione a dover cedere.

In dettaglio

Che cosa hanno fatto 2.719 operazioni in perdita pubblicate al livello che doveva fermarle

Ogni scheda pubblica la propria lista di operazioni chiuse, quindi ogni distanza di uscita si legge accanto allo stop che la posizione portava con sé. Sedici dei 27 registri inviano una sola distanza su ogni ordine; qui una perdita significa che il prezzo ha chiuso contro l’ingresso.

16 registri a stop uniforme, 2.719 operazioni in perditaValore
Perdite chiuse entro ±2 % dallo stop distribuito81,98 % (2.229)
Perdite chiuse oltre lo stop4,34 % (118)
Registri la cui perdita più profonda supera di metà l’impostazione9 su 16
Mediana dello sforamento più profondo per registro55,65 %
Perdita singola più profonda316,6 pip contro uno stop da 114 pip
Ingresso di venerdì, chiusura non di venerdì: tutte le perdite vs sforamenti12,69 % vs 18,64 % (22)

La prima riga è lo stop che funziona: quattro perdite su cinque si chiudono al numero del preset. La seconda riga è la parte che nessuna impostazione governa. L’ultima riga è meno solida di quanto sembri: contando invece ogni posizione tenuta a cavallo di un sabato o di una domenica, le due quote convergono, 33,36 % contro 35,59 %. Anche la terza e la quarta riga sono fragili: la perdita più profonda di Sundial, 39,0 pip contro uno stop da 25 pip, è l’unica riga a tempo trascorso zero che sia una perdita, e togliendo tutte e tre queste righe diventano 8 su 16 e 44,06 %. La chiusura a tempo di Sundial di solito arriva prima, con una perdita mediana di 8,1 pip: un’uscita più rapida sposta la perdita tipica, non quella peggiore.

Termini collegati e che cosa controllare dopo

Ne discende una sola regola di dimensionamento: moltiplica lo stop distribuito per 1,56, la mediana del caso peggiore su questi 16 registri, prima di confrontarlo con il tuo limite per operazione; metà lo supera. Scala la distanza a partire dalla volatilità misurata, e leggi sulla scheda di ogni expert advisor nel catalogo lo stop che imposta.

Domande frequenti

Un EA per MT5 deve usare sempre uno stop loss?
Ogni EA di cui vuoi quantificare il rischio deve farlo: dimensione della posizione, rapporto rischio/rendimento e drawdown atteso discendono tutti dalla distanza di stop. Il grid e il recupero in martingala lo omettono, quindi il loro caso peggiore non ha limite.
Qual è una buona distanza di stop loss?
Abbastanza lontana perché il movimento ordinario non la raggiunga: all'incirca da 1,5 a 2,5 volte l'ATR in intraday. Conta di più l'abbinamento: dimensiona il lotto in modo che essere fermati costi una frazione pianificata del conto.
Lo stop loss funziona se il computer è spento?
Sì. Una volta accettato risiede sul server del broker e scatta lì, che il tuo terminale sia acceso o no. Uno stop gestito dall'EA nel codice ha invece bisogno del terminale acceso.
Perché il mio stop loss è stato rifiutato?
Di solito perché stava più vicino al prezzo di quanto consenta lo stops level del simbolo, riportato nella finestra Specifica. Altre cause: un prezzo non valido per la direzione, oppure una modifica dentro il freeze level.
Quanto può essere peggiore dello stop una perdita?
Sui 16 EA a stop singolo pubblicati qui, la perdita più profonda di ogni registro ha superato la distanza impostata di una mediana del 55,65 %. Nove dei sedici hanno subito almeno una perdita che superava di metà la propria impostazione.