Qual è la prima regola di trading che a qualunque neofita viene voglia di testare? Probabilmente è l’incrocio di due medie mobili. Si tratta di una tecnica semplicissima che sta all’ABC di molti libri di analisi tecnica e quindi è una delle prime idee che anche chi approccia il trading meccanico desidera programmare e testare, anche grazie al fatto che la codifica è abbastanza semplice.
Tuttavia anche se la regola è semplice può prestarsi ad errori concettuali banali che non tutti riescono a comprendere al primo colpo.
Codificando strategie anche per clienti da numerosi anni è frequente ricevere la richiesta di codificare un trading system che compri quando la media veloce supera la lenta.
Un esperto di trading o uno sviluppatore sanno che “entrare quando si verifica l’incrocio di due medie mobili” significa che l’ordine viene generato nell’istante in cui la candela sulla quale si è verificato l’incrocio si chiude e non nell’istante in cui le due medie si incrociano a candela aperta.
Nella programmazione condizionata l’evento è un “IF (se si verifica l’evento)” THEN (allora comprerò a mercato) NEXT BAR AT OPEN (sulla candela successiva a mercato).
I software che di default ragionano così non sbagliano.
La situazione è questa almeno per due ottime ragioni:
- Quando ad esempio i prezzi salgono e le medie si incrociano a candela aperta, la veloce sale sopra la lenta, potrebbe accadere che i prezzi dopo un po’ tornino indietro. Le medie non si incrociano più. Quando si chiuderà la candela e scorreremo il grafico nei giorni a venire noi non vedremo che ci sia stato alcun incrocio, quell’acquisto non si è mai verificato. Quindi dal punto di vista del backtesting ci sarebbero grosse differenze tra quanto accaduto in tempo reale e quanto invece è visualizzabile e testabile sullo storico.
- Mentre la candela è aperta l’incrocio potrebbe verificarsi e poi tornare indietro e poi avanti anche due, tre, quattro o più volte se il mercato iniziasse ad oscillare in pochi tick. Ci sono piattaforme che consentono di aggirare l’invio dell’ordine sulla candela successiva ma così facendo, se noi attivassimo il trading automatico, potremmo avere numerose piccole perdite (oltre al costo delle commissioni). Quelle stesse perdite non risulteranno mai da backtesting.
Questo è spiegabile anche sotto un altro punto di vista leggermente più tecnico.
Come vengono calcolate le medie mobili? Solitamente sui prezzi di chiusura. Quando si ha la conferma della chiusura di una candela? Ovviamente nell’istante in cui si chiude e si apre quella successiva.
Ecco spiegato perché l’acquisto effettuato all’incrocio di due medie materialmente avviene, sulle piataforme di trading, in apertura sulla candela successiva.