EXITSHORT
EXITSHORT chiude una posizione short aperta in ProBacktest e ProOrder, a mercato oppure come ordine pendente. Sintassi, esempi svolti e insidie comuni.
Sintassi
EXITSHORT AT MARKETEXITSHORT x SHARES AT MARKETLe varianti pendenti collocano l'uscita a un prezzo scelto invece di eseguirla immediatamente:
EXITSHORT AT price LIMIT
EXITSHORT AT price STOPx è il numero di azioni, lotti o contratti da riacquistare. Omettere la quantità chiude l'intera posizione short.
Come funziona
Una posizione short si apre con SELLSHORT e chiusa riacquistando lo strumento. EXITSHORT esegue quel riacquisto senza mai aprire una posizione long: se non è aperta nessuna posizione short, l'istruzione non ha nulla da chiudere e nessun ordine viene inviato. Questo lo rende più sicuro rispetto all'uso di BUY per le uscite, che aprirebbe una nuova posizione long una volta chiusa la short.
La forma a mercato viene eseguita al primo prezzo disponibile. Le forme pendenti restano presso il broker fino a quando il prezzo raggiunge il livello specificato, LIMIT per uscite a un prezzo favorevole inferiore a quello attuale, STOP per uscite protettive al di sopra. Una quantità trasforma l'istruzione in una copertura parziale, riducendo la posizione e lasciando aperto il resto, che è il modo standard per uscire gradualmente da uno short in piramide.
In ProBacktest l'istruzione viene eseguita dal motore di simulazione con la stessa logica di prezzo usata per gli altri ordini. In ProOrder live l'uscita viene trasmessa al broker come qualsiasi altro ordine.
Esempi
Esempio 1, Ingresso e uscita short guidati dal MACD (ProBacktest)
myMACD = MACD[12,26,9](close)
// Short when the MACD line falls through zero,
// cover when it climbs back above zero
short = myMACD crosses under 0
exit = myMACD crosses over 0
IF NOT SHORTONMARKET AND short THEN
SELLSHORT 1 LOT AT MARKET
ENDIF
IF SHORTONMARKET AND exit THEN
EXITSHORT AT MARKET
ENDIFIl ciclo canonico di andata e ritorno tratto dalla documentazione ufficiale. Il SHORTONMARKET i controlli garantiscono che ingressi e uscite scattino solo nello stato di posizione corretto.
Esempio 2, Uscita progressiva da uno short piramidato (ProOrder)
DEFPARAM CumulateOrders = true
// Cover 2 lots once the short is 25 points in profit,
// keep the rest running with a trailing stop
IF SHORTONMARKET AND TRADEPRICE - close >= 25 * pointsize AND COUNTOFSHORTSHARES > 2 THEN
EXITSHORT 2 SHARES AT MARKET
ENDIF
SET STOP TRAILING 40La forma con quantità copre una parte dello short, incassando il profitto mentre i lotti restanti rimangono esposti a ulteriori ribassi.
Esempio 3, Uscita pendente con limite su un target di profitto (ProOrder)
// Rest a buy-back order 30 points below the entry price
IF SHORTONMARKET THEN
EXITSHORT AT TRADEPRICE - 30 * pointsize LIMIT
ENDIFInvece di attendere che il codice della strategia reagisca, l'ordine di uscita resta presso il broker e viene eseguito nel momento in cui il prezzo scende al livello target.
Errori e insidie comuni
- Nessuna posizione, nessun ordine.
EXITSHORTnon fa nulla quando la strategia non è short. Una logica che conta sul suo scatto incondizionato, per esempio come chiusura a fine sessione, dovrebbe verificareSHORTONMARKETprima o usareDEFPARAM FLATAFTER. - Usare BUY per chiudere uno short.
BUYriduce una posizione short e poi continua a comprare fino ad aprire una posizione long. Quando l'intento è solo coprire,EXITSHORTè l'istruzione corretta perché non può mai invertire la posizione. - Uscita parziale maggiore della posizione. Richiedere più azioni di quelle detenute chiude semplicemente l'intera posizione. Dimensiona le uscite parziali a partire da
COUNTOFSHORTSHARESper mantenere corretta l'aritmetica. - Le uscite pendenti vengono rivalutate a ogni bar. Un ordine pendente
EXITSHORT ... LIMITinserito dentro una condizione viene aggiornato a ogni barra in cui la condizione è vera e annullato quando smette di esserlo. Mantieni la condizione vera per tutto il tempo in cui l'ordine deve restare attivo.
Istruzioni correlate
SELLSHORT, apre o incrementa una posizione short.SELL, chiude totalmente o parzialmente una posizione long.BUY, apre o incrementa una posizione long.MARKET, esegue un ordine al prezzo corrente di mercato.LIMIT, ordine pendente eseguito a un prezzo stabilito o migliore.STOP (pending), ordine pendente attivato quando il prezzo raggiunge un livello.SHORTONMARKET, vero mentre una posizione short è aperta.ONMARKET, vero mentre una qualsiasi posizione è aperta.