Rejoignez-nous
ProBacktest/probacktest · proorder

$PROFIT

L'instruction $PROFIT définit un objectif de take profit sous forme de montant monétaire fixe dans la devise de l'instrument avec SET TARGET $PROFIT dans ProBacktest et ProOrder.

Syntaxe

probuilder
SET TARGET $PROFIT x

Paramètres

NomTypePar défautDescription
xnumériqueaucunProfit auquel la position se clôture, exprimé dans la devise de l'instrument tradé.

Comment ça marche

$PROFIT se combine avec SET TARGET uniquement. L'instruction exprime la sortie comme un résultat monétaire : dès que le profit non réalisé sur la position atteint x unités de devise, la plateforme la ferme. Le montant monétaire est converti en niveau de prix à l'aide de la position size et de la valeur du point de l'instrument, de sorte qu'une position plus grande atteint le même objectif monétaire avec un mouvement de prix plus faible.

Le réglage est persistant. Après son exécution, il s'applique à la position courante et à toute position future jusqu'à ce qu'un autre SET TARGET l'appel le remplace. SET TARGET $PROFIT 0 annule l'objectif. Les stratégies placent généralement l'appel une seule fois, sans condition, vers la fin du code.

Sur les comptes IG et PRT-CFD, l'objectif est attaché à chaque ordre individuel, donc avec des ordres cumulés chaque ordre sort à son propre niveau calculé.

L'équivalent côté stop est SET STOP $LOSS. Un stop délibérément placé dans la zone de profit est la forme inversée documentée sous Set Stop Profit.

Exemples

Exemple 1, Entrée MACD avec un objectif de 100 unités monétaires (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 stratégie achète sur un croisement du MACD au-dessus de zéro et sort automatiquement dès que le profit latent atteint 100 unités monétaires.

Exemple 2, Objectif en argent sur une position 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

Pour une position short, le niveau de sortie est calculé sous le prix d'entrée afin que le trade se clôture après un gain de 80 unités monétaires.

Exemple 3, Encadrement en argent dimensionné à partir d'un budget de risque fixe (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

Les deux côtés de l'encadrement acceptent des variables, de sorte que le rapport risque/rendement peut être écrit une fois et réutilisé. Ici, le trade risque 50 pour gagner 150.

Erreurs et pièges courants

  • Mauvais appariement de SET. $PROFIT est documenté avec SET TARGET. Le stop en montant est SET STOP $LOSS. Attacher $PROFIT à SET STOP appartient aux formes inversées et place la sortie de l'autre côté de l'entrée.
  • La position size modifie la distance de prix. Le même x sur deux fois plus de contrats signifie la moitié du mouvement de prix pour atteindre l'objectif. Après avoir modifié la logique de sizing, vérifiez que la sortie implicite n'est pas à l'intérieur du spread.
  • Devise de l'instrument, pas devise du compte. Le montant est mesuré dans la devise dans laquelle l'instrument se négocie. Les comptes en devise différente réalisent un montant légèrement différent selon le taux de change à la sortie.
  • Emplacement d'objectif partagé. $PROFIT, %PROFIT, PPROFIT et SET TARGET BREAKEVEN écrivent dans le même objectif interne ; le plus récent SET TARGET appel l'emporte. Réarmer avec des valeurs différentes à chaque bar modifie silencieusement le prix de la sortie.
  • %PROFIT, take profit en pourcentage du prix de la position.
  • PPROFIT, take profit sous forme de distance en points.
  • $LOSS, stop loss sous forme de montant fixe en argent.
  • $TRAILING, trailing stop sous forme de montant fixe en argent.
  • BREAKEVEN, déplace le stop ou l'objectif au prix d'entrée.
  • TARGET, ordres target en attente et la famille SET TARGET.
  • Set Stop Profit, stop placé dans la zone de profit, la forme inversée.
  • TRADEPRICE, prix d'entrée d'un trade donné.
  • POINTVALUE, valeur en devise d'un point, utilisée dans la conversion argent-prix.
  • LONGONMARKET, vrai tant qu'une position long est ouverte.