Oggi voglio parlarti di una versione modificata di un indicatore molto popolare, il FFCal, originariamente pubblicato da DerkWehler sul forum di Forex Factory. Ho apportato alcune modifiche al codice per adattarlo meglio alle mie esigenze, ma ho pensato che potesse essere utile anche per altri, quindi ho deciso di condividerlo con la community. Puoi considerarlo quasi come un nuovo indicatore, pur mantenendo le stesse tecniche e lo stile originale.
Questo indicatore posiziona un pannello sul tuo grafico che mostra i 5 eventi economici più rilevanti del Calendario Forex Factory. Puoi filtrare gli eventi in base all'impatto (Alto, Medio o Basso), agli interventi, alle festività o tramite un filtro per parole chiave specifiche. Qui sotto trovi tutte le modifiche apportate elencate.
Inoltre, l'indicatore può essere richiamato all'interno di un EA utilizzando la funzione iCustom() accedendo a 2 buffer:
- Buffer (0): contiene minuti fino all'evento più recente.
- Buffer (1): contiene il valore di impatto per l'evento più recente (Basso = 1, Medio = 2, Alto = 3).
Puoi richiamare i buffer in due modi:
Chiamata semplice:(verranno applicati i valori di default)
int EventMinute = (int)iCustom(NULL,0,"FFC",0,0); if(EventMinute == 30) { .. IL TUO CODICE .. } // 30 minuti prima dell'evento int EventImpact = (int)iCustom(NULL,0,"FFC",1,0); if(EventImpact == 3) { .. IL TUO CODICE .. } // Evento ad alto impatto
Chiamata avanzata:
iCustom( string NULL, // simbolo int 0, // intervallo di tempo string "FFC", // percorso/nome dell'indicatore personalizzato bool true, // true/false: solo grafico attivo bool true, // true/false: includi alto impatto bool true, // true/false: includi medio impatto bool true, // true/false: includi basso impatto bool true, // true/false: includi interventi bool false, // true/false: includi festività string "", // Trova parola chiave (case-sensitive) string "", // Ignora parola chiave (case-sensitive) bool true, // true/false: consenti aggiornamenti int 4, // Aggiorna ogni (in ore) int 0, // Buffers: (0) Minuti, (1) Impatto int 0 // offset );
*Nota: l'indicatore non ha (in questa fase) capacità di back-testing.
Stile suggerito:
- Colore Alto Impatto = C'217,83,79'
- Colore Medio Impatto = C'255,185,83'
- Colore Basso Impatto = C'91,192,222'
- Colore Festività = clrOrchid
- Colore Note = clrDimGray
Legenda del calendario:
- m/m: Mese su Mese
- q/q: Trimestre su Trimestre
- y/y: Anno su Anno
- K Mille
- M Milione
- B Miliardo
- T Trilione



Modifiche:
- Aggiunto: #property strict per compatibilità con MetaTrader 4 Build 600+ e migliore qualità del codice.
- Aggiunto: Mostra l'impatto precedente/previsione degli eventi (impatto colorato).
- Aggiunto: Opzione per mostrare solo eventi relativi al grafico attivo (sovrascrive altri parametri)
- Aggiunto: Filtro per parole chiave. Trova o Ignora una parola specifica, ad esempio "NFP", filtrerà tutti gli eventi con/senza quella parola. (case-sensitive)
- Aggiunto: Opzione per mostrare la forza della valuta / tempo rimanente / valore spread.
- Aggiunto: Opzione per controllare il tempo di visualizzazione degli eventi passati (in minuti).
- Aggiunto: Opzione per impostare la posizione del pannello in 4 angoli del grafico.
- Aggiunto: Tool-tip al passaggio del mouse che mostra il titolo dell'evento, impatto e tempo rimanente per l'evento.
- Aggiunto: Titolo del pannello. Puoi usarlo come promemoria :)
- Modificato: Mostra l'evento in "Formato Data/Ora" anziché in minuti rimanenti (puoi mostrare i minuti rimanenti tramite Tool-tip)
- Modificato: Linee verticali per gli eventi futuri. (Potresti dovere modificare l'input "offset temporale" a seconda dell'orario del tuo broker).
- Modificato: Buffers che contengono i minuti e l'impatto dell'evento imminente (vedi gli esempi sopra)
- Modificato: Ordinato gli Input Esterni.
- Migliorato: Sostituito la funzione DownLoadWebPageToFile() con la funzione nativa di Windows URLDownloadToFileW().
- Migliorato: Posizionato (scarica/leggi file XML) e codici correlati in funzioni in modo da poterli richiamare quando necessario.
- Migliorato: Sostituito "GlobalVariables" usato per aggiornare il file XML con FILE_MODIFY_DATE - OnTimer() impostato con gli input "AllowUpdates", "UpdateHour".
- Migliorato: Offset temporale GMT, ora gli eventi si mostreranno automaticamente nel tuo orario locale.
- Migliorato: Giustificato il pannello/testo quando impostato a destra/sinistra.
- Migliorato: Funzione di avviso, ora invierà oltre all'Avviso Popup: avviso sonoro, notifica Push sul tuo telefono e Email. (due avvisi separati)
- Migliorato: Qualità del codice, ora l'indicatore è più leggero e veloce che mai.
- Corretto: Vari bug, alcuni codici o variabili non necessari/rimossi, posizionate alcune variabili all'interno delle loro funzioni correlate.
Autori reali:
Credit:
- JimDandy
- WHRoeder
- RaptorUK
* Per utilizzare questo indicatore, devi attivare le DLL Imports nelle opzioni della tua piattaforma MetaTrader 4.
* Fai attenzione che il codice possa avere dei bug o altre imperfezioni, quindi se trovi qualche problema o hai suggerimenti, fammelo sapere.
* Secondo il sito di Forex Factory, tutti gli orari degli eventi sono approssimativi e soggetti a variazione.
Post correlati
- Indicatori ZigZag Potenziati: Scopri le Nuove Funzionalità per MetaTrader 4
- Indice di Volatilità Chaikin: Scegli il Giusto Algoritmo di Smussamento per MetaTrader 5
- Volatilità Stocastica: Indicatore per MetaTrader 5 da Utilizzare sul Grafico
- Notis: L'Indicatore per Misurare la Volatilità su MetaTrader 5
- Indicatore di Equità e Bilancio per MetaTrader 5: Monitoraggio della Tua Performance di Trading