Little Bird Trading

Commission négative dans Pine Script : ce que cela signifie et comment la corriger

3 min de lecture · Mis à jour le

Si votre Strategy Tester TradingView affiche une commission négative, ou un backtest bien meilleur qu'il ne devrait, le réglage de la commission est le premier endroit à vérifier. Cette page explique ce que fait une commission négative dans Pine Script, pourquoi elle apparaît par erreur et comment régler des coûts conformes à votre courtier.

Où la commission est réglée dans Pine Script

Les coûts de trading d'une stratégie viennent de deux arguments de l'appel strategy() :

  • commission_type : la façon dont le coût est mesuré. strategy.commission.percent est un pourcentage de la valeur de l'ordre, strategy.commission.cash_per_contract est un montant fixe par contrat et strategy.commission.cash_per_order est un montant fixe par ordre.
  • commission_value : le nombre utilisé avec ce type. Sa valeur par défaut est 0, une stratégie sans commission réglée trade donc gratuitement.

Les deux mêmes réglages figurent dans l'onglet Paramètres > Propriétés de la stratégie. Une valeur saisie là remplace celle du code pour votre graphique, c'est pourquoi deux personnes peuvent lancer le même script et voir des résultats différents.

Ce que fait une commission négative

Un commission_value négatif est appliqué comme un crédit. Chaque exécution ajoute de l'argent au compte là où un coût en retirerait normalement. Certaines bourses versent une remise aux ordres qui apportent de la liquidité, une petite valeur négative peut donc décrire un vrai barème de remise. Pour un trader particulier qui paie un courtier, un nombre négatif vient presque toujours d'une faute de frappe ou d'un script copié, et il rend chaque trade meilleur qu'il ne l'aurait été.

L'effet grandit avec le nombre de trades. Une stratégie qui trade 400 fois par an avec un crédit de 2 $US par contrat et par exécution gagne 1600 $US par contrat grâce au seul réglage, avant même de compter un mouvement de prix.

Comment la repérer

  • Dans la Liste des trades du Strategy Tester, le bénéfice net des petits trades gagnants dépasse le mouvement de prix multiplié par la valeur du contrat.
  • Les trades nuls (entrée et sortie au même prix) affichent un bénéfice.
  • Le résumé de performance affiche la commission payée en nombre négatif.
  • Les résultats s'améliorent nettement quand vous augmentez la fréquence des trades, sans changer la logique d'entrée.

Comment la régler correctement

  1. Trouvez le vrai coût total de votre courtier par contrat et par côté : commission, frais de bourse, de compensation et réglementaires réunis.
  2. Pour les futures, utilisez commission_type=strategy.commission.cash_per_contract avec ce montant par côté. Le Strategy Tester le facture à l'entrée puis à la sortie, un coût de 2,50 $US par côté devient donc 5 $US par aller-retour.
  3. Pour les actions et ETF cotés à l'unité, utilisez cash_per_order pour des frais fixes par ordre, ou percent si votre courtier facture un pourcentage.
  4. Ajoutez le slippage avec l'argument slippage, mesuré en ticks. Un tick par côté est un bon point de départ pour des futures sur indices liquides comme ES et NQ.
  5. Vérifiez l'onglet Propriétés après avoir chargé le script, pour qu'une valeur restée là ne remplace pas votre code.

Exemple pour une stratégie ES avec un coût de 2,50 $US par côté et un tick de slippage :

strategy("ES levels test", overlay=true,
     commission_type=strategy.commission.cash_per_contract,
     commission_value=2.5, slippage=1)

Pourquoi c'est important avant de trader une stratégie en réel

Les coûts décident si de nombreuses stratégies intraday gagnent de l'argent. Un tick sur ES vaut 0.25 point, soit 12,50 $US, donc une stratégie qui gagne en moyenne quelques ticks par trade peut passer de rentable à perdante une fois la vraie commission et le slippage inclus. Si un backtest ne marche qu'avec des coûts nuls ou négatifs, il ne tiendra pas en réel. La FAQ Pine Script sur les backtests et les alertes couvre les autres raisons pour lesquelles backtest et résultats réels divergent, et comment repérer les systèmes de trading suroptimisés couvre le reste de la checklist.

Tester une stratégie sur les niveaux quotidiens

Little Bird Trading publie les niveaux de support, de résistance et de pivot de la séance suivante pour 20 marchés, 23 symboles au total, dont ES, NQ, SPY et QQQ. Avec MyLinedChart, les niveaux se chargent sur votre graphique ou se téléchargent sous forme de données, pour tester des entrées à ces prix avec des coûts réalistes. Le plan de trading d'exemple montre à quoi ressemble le plan d'une journée.

FAQ

commission_value peut-il être négatif dans Pine Script ?

Oui. Le Strategy Tester traite une valeur négative comme un crédit à chaque exécution. Utilisez-la seulement pour représenter une vraie remise que vous recevez.

TradingView facture-t-il la commission par côté ou par aller-retour ?

Par exécution. Le montant est facturé à l'entrée puis de nouveau à la sortie, saisissez donc votre coût par côté.

Pourquoi ma stratégie affiche-t-elle des résultats différents sur le graphique de quelqu'un d'autre ?

Les réglages de l'onglet Propriétés, dont la commission et le slippage, peuvent différer des valeurs du code. Comparez-les d'abord.

Est-ce un conseil financier ?

Non. Cette page est un contenu éducatif sur le paramétrage des backtests. Vous prenez et assumez vos propres trades.

Contenu éducatif uniquement. Ceci n'est pas un conseil en investissement.