Iscriviti ora
ProBacktest/probacktest · proorder

$PROFIT

L'istruzione $PROFIT imposta un obiettivo di take profit come importo fisso in denaro nella valuta dello strumento con SET TARGET $PROFIT in ProBacktest e ProOrder.

Sintassi

probuilder
SET TARGET $PROFIT x

Parametri

NomeTipoPredefinitoDescrizione
xnumericonessunoProfitto al quale la posizione si chiude, espresso nella valuta dello strumento negoziato.

Come funziona

$PROFIT si combina con SET TARGET soltanto. L'istruzione esprime l'uscita come risultato monetario: quando il profitto non realizzato sulla posizione raggiunge x unità di valuta, la piattaforma la chiude. L'importo in denaro viene convertito in un livello di prezzo usando la position size e il valore del punto dello strumento, quindi una posizione più grande raggiunge lo stesso obiettivo in denaro con un movimento di prezzo minore.

L'impostazione è persistente. Dopo la sua esecuzione, si applica alla posizione corrente e a ogni posizione futura fino a un altro SET TARGET chiamata lo sostituisce. SET TARGET $PROFIT 0 annulla il target. Le strategie in genere inseriscono la chiamata una sola volta, senza condizioni, verso la fine del codice.

Sui conti IG e PRT-CFD l'obiettivo è associato a ciascun singolo ordine, quindi con ordini cumulati ogni ordine esce al proprio livello calcolato.

La controparte sul lato stop è SET STOP $LOSS. Uno stop posizionato deliberatamente nella zona di profitto è la forma invertita documentata sotto Set Stop Profit.

Esempi

Esempio 1, Ingresso su MACD con obiettivo di 100 unità di valuta (ProBacktest)

probuilder
myMACD = MACD[12,26,9](close)
long = myMACD crosses over 0
IF NOT LongOnMarket AND long THEN
    BUY 1 CONTRACTS AT MARKET
ENDIF
// Take the profit once the position has gained 100
SET TARGET $PROFIT 100

La strategia compra su un incrocio del MACD sopra lo zero ed esce automaticamente quando il profitto aperto raggiunge 100 unità di valuta.

Esempio 2, Obiettivo in denaro su una posizione short (ProOrder)

probuilder
resistance = Highest[20](high)
IF NOT ShortOnMarket AND close crosses under Average[50](close) THEN
    SELLSHORT 1 CONTRACT AT MARKET
ENDIF
// Same instruction for shorts, the platform places the exit below entry
SET TARGET $PROFIT 80

Per una posizione short il livello di uscita è calcolato sotto il prezzo di ingresso così l'operazione si chiude dopo un guadagno di 80 unità di valuta.

Esempio 3, Bracket in denaro dimensionato da un budget di rischio fisso (ProOrder)

probuilder
DEFPARAM CumulateOrders = false

// Trade plan in money: risk 50 to make 150
riskAmount   = 50
rewardAmount = 3 * riskAmount

IF NOT OnMarket AND RSI[14](close) crosses over 50 THEN
    BUY 1 CONTRACT AT MARKET
ENDIF

SET STOP $LOSS riskAmount
SET TARGET $PROFIT rewardAmount

Entrambi i lati del bracket accettano variabili, quindi il rapporto rischio-rendimento può essere scritto una volta e riutilizzato. Qui l'operazione rischia 50 per guadagnare 150.

Errori e insidie comuni

  • Abbinamento SET errato. $PROFIT è documentato con SET TARGET. Lo stop basato sul denaro è SET STOP $LOSS. Collegare $PROFIT a SET STOP appartiene alle forme invertite e posiziona l'uscita sul lato opposto dell'ingresso.
  • La position size cambia la distanza di prezzo. Lo stesso x sul doppio dei contratti significa metà del movimento di prezzo per raggiungere il target. Dopo aver modificato la logica di sizing, verifica che l'uscita implicita non sia dentro lo spread.
  • Valuta dello strumento, non valuta del conto. L'importo è misurato nella valuta in cui lo strumento è negoziato. I conti in valuta diversa realizzano un importo leggermente differente a seconda del tasso di cambio all'uscita.
  • Slot obiettivo condiviso. $PROFIT, %PROFIT, PPROFIT e SET TARGET BREAKEVEN scrivono sullo stesso target interno; il più recente SET TARGET chiamata prevale. Riarmare con valori diversi a ogni bar riprezza l'uscita silenziosamente.
  • %PROFIT, take profit come percentuale del prezzo della posizione.
  • PPROFIT, take profit come distanza in punti.
  • $LOSS, stop loss come importo fisso in denaro.
  • $TRAILING, trailing stop come importo fisso in denaro.
  • BREAKEVEN, sposta lo stop o il target al prezzo di ingresso.
  • TARGET, ordini target pendenti e la famiglia SET TARGET.
  • Set Stop Profit, stop collocato nella zona di profitto, la forma invertita.
  • TRADEPRICE, prezzo di ingresso di una data operazione.
  • POINTVALUE, valore in valuta di un punto, usato nella conversione da denaro a prezzo.
  • LONGONMARKET, vero mentre una posizione long è aperta.