Guarda come scaricare robot di trading gratuitamente
Ci trovi su Facebook!
Unisciti alla nostra fan page
Script interessante?
Pubblica il link!
lasciare che altri lo valutino
Ti è piaciuto lo script? Provalo nel Terminale MetaTrader 5
Librerie

Calendar-Based Backtesting: an Event-Driven Trading EA - libreria per MetaTrader 5

Visualizzazioni:
84
Valutazioni:
(4)
Pubblicato:
Freelance MQL5 Hai bisogno di un robot o indicatore basato su questo codice? Ordinalo su Freelance Vai a Freelance

Il codice è ricco di commenti per una migliore comprensione. Questa descrizione spiega l'idea principale e le modalità di utilizzo/riutilizzo del codice.

Questo framework è costituito da tre componenti chiave:

1. CalendarRetriever.mq5 (Script) - Questo script recupera gli eventi economici passati e li salva in file nella cartella "Common" del vostro terminale. Questi file verranno poi letti dal consulente esperto durante il backtesting. Lo script richiede due parametri di input:

  • Data di inizio - La data a partire dalla quale devono essere recuperate le notizie passate.
  • Data di fine - L'ultima data per la quale devono essere memorizzati gli eventi di notizie.

Dopo aver eseguito questo script, verrà generata una cartella "Calendar" nella directory "Common" del terminale e verranno creati i seguenti file di testo:

  • Countries.txt - Contiene le informazioni su ciascun Paese di MQLCalendarCountry
  • Events.txt - Memorizza i dettagli dell'evento, come il nome, l'impatto e il countryid.
  • News.bin - Contiene i valori storici degli eventi di cronaca, compresi i timestamp.

    2. CalendarFile.mq (file di inclusione) - Questo file fornisce un modo strutturato per gestire i dati delle notizie nell'expert advisor e contiene due classi principali:

    • CalendarFileWriter - utilizzata internamente dallo script per memorizzare i dati delle notizie.
    • CalendarFileReader - Utilizzato nel consulente esperto per leggere ed elaborare le notizie. Include funzioni per caricare i dati dell'evento e tenere traccia delle notizie in arrivo nella funzione OnTick.
    3. NewsBacktest.mq5 (Expert Advisor) - Questo EA utilizza i dati memorizzati per simulare condizioni di notizie in tempo reale nel tester della strategia. Legge i dati delle notizie salvati utilizzando le funzioni Load ed esegue le operazioni di conseguenza.

    Come utilizzare il Framework:

    1. Eseguire lo script CalendarRetriever: selezionare il simbolo che si desidera sottoporre a backtest ed eseguire lo script CalendarRetriever.mq5 con le date di inizio e fine specificate.

    2. Il Consulente esperto

      • L'EA utilizza la classe CalendarFileReader per caricare i dati utilizzando queste funzioni:
        • LoadEvents() - Carica i dettagli degli eventi.
        • LoadCountries() - Carica le informazioni sui Paesi.
        • LoadValues() - Carica i valori storici delle notizie.
      • Quindi elabora gli eventi di notizie nella funzione OnTick per determinare quando si verifica un evento di notizie. Utilizzare Propagate() per prevedere, Track() per reagire.
      • La funzione CalendarFileReader.Propagate() imposta l'indice successivo al prossimo evento in arrivo.
      • La funzione CalendarFileReader.Track() restituisce true quando è passato un evento di notizie e imposta l'ultimo indice su quel particolare evento. Viene richiamata anche nella funzione OnTick(), ma il risultato deve essere controllato.
    3. Eseguireil backtest della strategia Aprire il Tester della strategia in MetaTrader 5, selezionare NewsBacktest.mq5 ed eseguire il backtest in modalità visiva.

    Come adattarla alle proprie strategie basate sulle notizie:

    Questo framework è stato progettato per essere flessibile, consentendo ai trader di sviluppare le proprie strategie in base alle notizie economiche. Ecco alcuni modi per modificarlo:

    • Adattare la logica di filtraggio degli eventi in OnTick() per reagire a specifici tipi di notizie (ad esempio, operare solo dopo il rilascio di NFP o CPI).
    • Modificare la logica di esecuzione degli ordini per implementare strategie diverse, come la dissolvenza del movimento iniziale invece del breakout trading.
    • Utilizzare indicatori aggiuntivi insieme alle notizie per affinare i segnali di entrata.
    • Modificare il tempo di scadenza degli ordini pendenti in base al livello di impatto dell'evento.

    Questa soluzione rende il backtesting delle strategie basate sulle notizie il più realistico possibile all'interno dei limiti di MetaTrader 5. Recuperando prima i dati storici delle notizie e poi simulandone l'impatto sul mercato, i trader possono ottenere preziose indicazioni su come le loro strategie si comporterebbero in condizioni reali.

    Per una più facile e migliore comprensione, assicuratevi di dare un'occhiata al mio video sull'argomento:




    Tradotto dall’inglese da MetaQuotes Ltd.
    Codice originale https://www.mql5.com/en/code/55630

    Indicatore di equilibrio di tendenza TrendEQ Indicatore di equilibrio di tendenza TrendEQ

    Trend Equilibrium Indicator TrendEQ analizza dinamicamente le tendenze del mercato combinando momentum e volatilità. Misurando il momentum rispetto alle tendenze del mercato, TrendEQ fornisce una misura affidabile della forza e della direzione del trend.

    Pannello di controllo della modalità multicurrency "Pannello di controllo MCM". Pannello di controllo della modalità multicurrency "Pannello di controllo MCM".

    Offriamo una variante del pannello di controllo della modalità multicurrency reale nel terminale MetaTrader 5 per gli indicatori multicurrency e gli Expert Advisor.

    PANNELLO GRASSO PANNELLO GRASSO

    Il pannello per la partecipazione al concorso "Il miglior pannello di controllo grafico in MQL5". La caratteristica distintiva del pannello è la possibilità di creare una strategia di trading in modalità visuale.

    Cruscotto competitivo Cruscotto competitivo

    Semplificazione del trading manuale e della manutenzione delle posizioni