Commissione negativa in Pine Script: cosa significa e come correggerla
3 min di lettura · Aggiornato il
Se il tuo Strategy Tester di TradingView mostra una commissione negativa, o un backtest molto migliore di quanto dovrebbe, l'impostazione della commissione è il primo posto da controllare. Questa pagina spiega cosa fa una commissione negativa in Pine Script, perché compare per errore e come impostare costi in linea con il tuo broker.
Dove si imposta la commissione in Pine Script
I costi di trading di una strategia vengono da due argomenti della chiamata strategy():
- commission_type: come si misura il costo.
strategy.commission.percentè una percentuale del valore dell'ordine,strategy.commission.cash_per_contractè un importo fisso per contratto estrategy.commission.cash_per_orderè un importo fisso per ordine. - commission_value: il numero usato con quel tipo. Il valore predefinito è 0, quindi una strategia senza commissione impostata opera gratis.
Le stesse due impostazioni compaiono nella scheda Impostazioni > Proprietà della strategia. Un valore scritto lì sostituisce quello del codice sul tuo grafico, per questo due persone possono eseguire lo stesso script e vedere risultati diversi.
Cosa fa una commissione negativa
Un commission_value negativo viene applicato come accredito. Ogni esecuzione aggiunge denaro al conto dove un costo normalmente lo toglierebbe. Alcune borse pagano un rimborso agli ordini che aggiungono liquidità, quindi un piccolo valore negativo può descrivere un vero piano di rimborsi. Per un trader retail che paga un broker, un numero negativo deriva quasi sempre da un errore di battitura o da uno script copiato, e fa sembrare ogni operazione migliore di quanto sarebbe stata.
L'effetto cresce con il numero di operazioni. Una strategia che opera 400 volte l'anno con un accredito di 2 USD per contratto per esecuzione guadagna 1600 USD per contratto solo dall'impostazione, prima di contare un singolo movimento di prezzo.
Come individuarla
- Nell'Elenco delle operazioni dello Strategy Tester, il profitto netto delle piccole operazioni vincenti è maggiore del movimento di prezzo per il valore del contratto.
- Le operazioni in pari (ingresso e uscita allo stesso prezzo) mostrano un profitto.
- Il riepilogo delle prestazioni mostra la commissione pagata come numero negativo.
- I risultati migliorano sensibilmente aumentando la frequenza delle operazioni, senza cambiare la logica di ingresso.
Come impostarla correttamente
- Trova il costo reale complessivo del tuo broker per contratto e per lato: commissione, tariffa di borsa, compensazione e oneri regolamentari insieme.
- Per i futures, usa
commission_type=strategy.commission.cash_per_contractcon quell'importo per lato. Lo Strategy Tester lo addebita all'ingresso e di nuovo all'uscita, quindi un costo di 2,50 USD per lato diventa 5 USD per operazione completa. - Per azioni ed ETF quotati per azione, usa
cash_per_orderper una tariffa fissa per ordine, oppurepercentse il tuo broker applica una percentuale. - Aggiungi lo slippage con l'argomento
slippage, misurato in tick. Un tick per lato è un buon punto di partenza per futures su indici liquidi come ES e NQ. - Controlla la scheda Proprietà dopo aver caricato lo script, così un valore rimasto lì non sostituisce il tuo codice.
Esempio per una strategia su ES con un costo di 2,50 USD per lato e un tick di slippage:
strategy("ES levels test", overlay=true,
commission_type=strategy.commission.cash_per_contract,
commission_value=2.5, slippage=1)
Perché conta prima di operare una strategia dal vivo
I costi decidono se molte strategie intraday guadagnano. Un tick su ES vale 0.25 punti, cioè 12,50 USD, quindi una strategia che guadagna in media pochi tick per operazione può passare da profittevole a perdente una volta inserite commissione e slippage reali. Se un backtest funziona solo con costi zero o negativi, dal vivo non reggerà. Le FAQ di Pine Script su backtest e alert coprono gli altri motivi per cui backtest e risultati reali divergono, e come riconoscere i sistemi di trading sovraottimizzati copre il resto della checklist.
Testare una strategia sui livelli giornalieri
Little Bird Trading pubblica i livelli di supporto, resistenza e pivot della sessione successiva per 20 mercati, 23 simboli in tutto, tra cui ES, NQ, SPY e QQQ. Con MyLinedChart i livelli si caricano sul tuo grafico o si scaricano come dati, così puoi testare ingressi a quei prezzi con costi realistici. Il piano di trading di esempio mostra com'è il piano di una giornata.
FAQ
commission_value può essere negativo in Pine Script?
Sì. Lo Strategy Tester tratta un valore negativo come un accredito a ogni esecuzione. Usalo solo per rappresentare un vero rimborso che ricevi.
TradingView applica la commissione per lato o per operazione completa?
Per esecuzione. L'importo viene addebitato all'ingresso e di nuovo all'uscita, quindi inserisci il tuo costo per lato.
Perché la mia strategia mostra risultati diversi sul grafico di un'altra persona?
Le impostazioni della scheda Proprietà, comprese commissione e slippage, possono differire dai valori nel codice. Confronta prima quelle.
È consulenza finanziaria?
No. Questa pagina è formazione su come si configurano i backtest. Le tue operazioni le decidi e le gestisci tu.
Solo contenuti educativi. Non è consulenza finanziaria.