%LOSS
L'istruzione %LOSS imposta uno stop loss come percentuale sotto il prezzo medio della posizione con SET STOP %LOSS nel codice ProBacktest e ProOrder di ProRealTime™.
Sintassi
SET STOP %LOSS xParametri
| Nome | Tipo | Predefinito | Descrizione |
|---|---|---|---|
x | numerico | nessuno | Distanza percentuale dal prezzo medio della posizione a cui scatta lo stop loss. Accetta decimali, quindi 1.5 significa 1.5 percento. |
Come funziona
%LOSS si combina con SET STOP soltanto. L'istruzione definisce uno stop loss come distanza relativa: per una posizione long il livello di uscita si trova x percento sotto il prezzo medio della posizione, e per una posizione short si trova x percento sopra di esso. Poiché il livello deriva dal prezzo di posizione invece che da un prezzo fisso, la stessa riga di codice si adatta a qualsiasi strumento e a qualsiasi livello di ingresso.
L'istruzione è dichiarativa. Una volta eseguita, lo stop si applica alla posizione corrente e a ogni posizione futura aperta dalla strategia, finché un'altra SET STOP la chiamata lo sostituisce. Inserirlo una sola volta verso la fine del codice è il pattern consueto. Chiamare SET STOP %LOSS 0 rimuove lo stop.
Quando diversi ordini sono cumulati in una sola posizione, la percentuale è calcolata dal prezzo medio dell'intera posizione. Sui conti IG e PRT-CFD la piattaforma associa lo stop a ogni singolo ordine, quindi ogni ordine porta il proprio livello di protezione.
La controparte sul lato target è SET TARGET %PROFIT. Le combinazioni invertite, uno stop posizionato nella zona di profitto o un target posizionato nella zona di perdita, sono documentate separatamente in Set Stop Profit e Set Target Loss.
Esempi
Esempio 1, Ingresso MACD con stop al 2 percento (ProBacktest)
myMACD = MACD[12,26,9](close)
long = myMACD crosses over 0
IF NOT LongOnMarket AND long THEN
BUY 1 CONTRACTS AT MARKET
ENDIF
// Protective stop 2 percent below the average position price
SET STOP %LOSS 2La strategia acquista quando la linea MACD incrocia sopra lo zero. Qualunque sia il prezzo di ingresso, lo stop si trova sempre il 2 percento sotto di esso.
Esempio 2, Stop percentuale su una posizione short (ProOrder)
fast = Average[10](close)
slow = Average[40](close)
IF NOT ShortOnMarket AND fast crosses under slow THEN
SELLSHORT 1 CONTRACT AT MARKET
ENDIF
// For shorts the stop sits 1.5 percent ABOVE the position price
SET STOP %LOSS 1.5La stessa istruzione protegge le posizioni short. La piattaforma specchia la distanza automaticamente, quindi nel codice non serve nessun cambio di segno.
Esempio 3, Bracket percentuale completo attorno all'ingresso (ProOrder)
DEFPARAM CumulateOrders = false
rsiVal = RSI[14](close)
IF NOT OnMarket AND rsiVal < 30 THEN
BUY 1 CONTRACT AT MARKET
ENDIF
// Risk 1 percent, aim for 2 percent, a fixed 1:2 bracket
SET STOP %LOSS 1
SET TARGET %PROFIT 2Combinare SET STOP %LOSS con SET TARGET %PROFIT costruisce una forchetta simmetrica in percentuale che scala con il prezzo dello strumento.
Errori e insidie comuni
- Percentuale del prezzo, non dell'equity.
SET STOP %LOSS 2rischia il 2 percento del prezzo della posizione, non il 2 percento del conto. Su una posizione a leva l'impatto sull'equity può essere molto maggiore. Converti con attenzione quando traduci una regola di rischio per operazione in questa istruzione. - Abbinamento SET errato. La forma documentata è
SET STOP %LOSS. Il target percentuale è una parola chiave diversa,SET TARGET %PROFIT. Confonderli tra loro causa un errore di compilazione oppure produce un'uscita dal lato sbagliato rispetto all'ingresso. - Vince l'ultimo SET STOP.
%LOSS,$LOSS,PLOSS,%TRAILINGeBREAKEVENscrivono tutti nello stesso slot interno di stop. Solo il più recenteSET STOPchiamata è attiva, quindi alternare le forme bar per bar porta a uscite erratiche. - Collocazione all'interno di blocchi condizionali. Racchiudere l'istruzione in un
IFvera su un solo bar funziona comunque, perché l'impostazione persiste, ma rieseguirla con un valore diverso a ogni bar riposiziona lo stop senza alcun avviso. Mantienila non condizionata, a meno che il riposizionamento sia intenzionale.
Istruzioni correlate
$LOSS, stop loss come importo fisso in denaro.PLOSS, stop loss come distanza in punti.%PROFIT, take profit come percentuale del prezzo della posizione.%TRAILING, trailing stop come percentuale del prezzo della posizione.BREAKEVEN, sposta lo stop o il target al prezzo di ingresso.STOP, ordini stop pendenti e la famiglia SET STOP.Set Target Loss, target collocato nella zona di perdita, la forma invertita.TRADEPRICE, prezzo di ingresso di una data operazione.POSITIONPRICE, prezzo medio della posizione aperta.LONGONMARKET, vero mentre una posizione long è aperta.