Announcement

Collapse
No announcement yet.

DATI STORICI per Metatrader4: fractal interpolation, scaricamento e importazione

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Nicholas
    replied
    Originally posted by umbertosm View Post

    No, non hai studiato a fondo la procedura descritta ai primi post di questo thread, ti consiglio di studiarla e rileggerla più volte: è collaudata e funzionante da anni.

    Per avere i dati storici di un cross caricati sulla Mt4,
    basta avere 1 solo file .CSV di quel cross che contenga le sole candele M1

    Tutte le candele M1 sono in quel file .CSV e vengono importate nel centro storia come descritto nella procedura.
    Dopo aver importato dal file .CSV le candele M1,
    vanno poi generati tutti i successivi timeframe fino a D1, e questa generazione è ben descritta e lo fai con lo script di cui sopra.

    Quando hai generato tutti i timeframe del cross, ora hai tutti i dati storici completi per quel cross caricati correttamente sulla Mt4.

    Ora, fissando le date di inizio e fine del backtest, Metatrader4 genererà il file .FXT per questo specifico intervallo di dati scelti.
    Si certo è quello che faccio, ti ho scritto che bisogna avere tutti i dati perché quello è il fine che poi li generi con lo script o li scarichi direttamente dal software comunque è bene avere tutti i timeframes. Io personalmente li genero dall'M1 come dici tu in quanto risparmio tempo nello scarico dati!

    Grz1000

    Leave a comment:


  • umbertosm
    replied
    Originally posted by Mark47 View Post
    TickDownloader (dopo aver scaricato i vari dati) estrae e crea in automatico tutti i vari file CSV per ogni TF (dal tick, M1, M5 etc...) permettendo quindi (volendo) di importare tutti i vari TF nel centro storia uno per uno.
    Dici che anche facendo cosi può andare o per una maggiore "sicurezza" meglio importare solo M1 e poi generare gli altri usando lo script. (come consigliato da te nel post 3 appunto)

    Per la cronaca mentre magari ai tempi dei primi post dava problemi buttando dentro troppi anni tutti insieme io per ora non ho riscontrato problemi buttando dentro in una sola volta 2010-2018 M1.
    Ok, SI, i file CSV di un singolo cross contenenti le candele dei timeframe da M1 in su, generati da TickDownloader, possono essere importati separatamente uno dopo l'altro in Mt4,

    come alternativa all'importare un solo file .CSV M1 e poi creare dentro Mt4 tutti gli altri timeframe con lo script PeriodConverter.mq4

    Io seguo il metodo dello script (come proposto di default nella Mt4, dalla stessa Metaquotes) perché impiego meno tempo,
    ma se ci si trova meglio nell'importare uno ad uno tutti i file .CSV dei vari timeframe va bene uguale.

    Leave a comment:


  • Mark47
    replied
    Umberto giusto una puntualizzazione (e tra l'altro grazie per l'infinita pazienza).
    TickDownloader (dopo aver scaricato i vari dati) estrae e crea in automatico tutti i vari file CSV per ogni TF (dal tick, M1, M5 etc...) permettendo quindi (volendo) di importare tutti i vari TF nel centro storia uno per uno.
    Dici che anche facendo cosi può andare o per una maggiore "sicurezza" meglio importare solo M1 e poi generare gli altri usando lo script. (come consigliato da te nel post 3 appunto)

    Per la cronaca mentre magari ai tempi dei primi post dava problemi buttando dentro troppi anni tutti insieme io per ora non ho riscontrato problemi buttando dentro in una sola volta 2010-2018 M1.

    Leave a comment:


  • umbertosm
    replied
    Originally posted by Nicholas View Post
    Ok chiaro, quindi in definitiva tu dici di avere TUTTI i files .CSV (dei vari timeframes) caricati in centro storia
    No, non hai studiato a fondo la procedura descritta ai primi post di questo thread, ti consiglio di studiarla e rileggerla più volte: è collaudata e funzionante da anni.

    Per avere i dati storici di un cross caricati sulla Mt4,
    basta avere 1 solo file .CSV di quel cross che contenga le sole candele M1

    Tutte le candele M1 sono in quel file .CSV e vengono importate nel centro storia come descritto nella procedura.
    Dopo aver importato dal file .CSV le candele M1,
    vanno poi generati tutti i successivi timeframe fino a D1, e questa generazione è ben descritta e lo fai con lo script di cui sopra.

    Quando hai generato tutti i timeframe del cross, ora hai tutti i dati storici completi per quel cross caricati correttamente sulla Mt4.

    Ora, fissando le date di inizio e fine del backtest, Metatrader4 genererà il file .FXT per questo specifico intervallo di dati scelti.

    Leave a comment:


  • Nicholas
    replied
    Ok chiaro, quindi in definitiva tu dici di avere TUTTI i files .CSV (dei vari timeframes) caricati in centro storia (anche mantenendo tester in history vuoto). A quel punto la MT4 genererà i files .FXT temporanei e farà i BT. STOP.

    Leave a comment:


  • umbertosm
    replied
    Originally posted by Nicholas View Post
    Scrivi <<tutti i dati>> cosa intendi? A rigor di logica devo avere i soli timeframes che mi servono e non tutti giusto? Se lavoro su H1 e D1 posso non avere H4 penso...
    Per fare un backtest/ottimizzazione decente devi avere tutte le candele da M1 a D1
    altrimenti se usi soltanto candele H1 e D1, quando fai il backtest l'EA ha disposizione soltanto i 4 valori di Open, High, Low e Close di ciascuna candela H1
    e non hai tutto il dettaglio delle candele M1 all'interno della candela H1: il backtest ha una bassissima valenza statistica.

    Come avevo spiegato nel post #3 di questo thread, lavorando su un grafico M1 del cross che vuoi usare, devi eseguire lo script PeriodConverter.mq4
    Questo script permette di calcolare automaticamente tutti i timeframe di una coppia di valute o CFD, partendo dalle candele M1, imputando ad ogni esecuzione dello script il moltiplicatore adatto a costruire il timeframe successivo ad M1


    Originally posted by Nicholas View Post
    in oltre se io, tramite Tickstory, scarico i files .FXT in tester vorrà dire che la MT4 non creerà nessun file temporanei .FXT in quanto li trova già giusto? Se invece tester è vuoto allora leggere in centro storia e creerà i files temporanei per il BT dopodiché li cancellerà credo...
    come già avevo postato,
    - Ad ogni nuovo backtest/ottimizzazione, ogni volta Metatrader4 ricrea da capo il file .FXT sovrascrivendo quello precedente: funziona così, non ci puoi fare nulla.

    Tickstory può anche copiare dentro Mt4 il file .FXT, ma Metatrader4 lo cancella e lo rigenera da capo, ANCHE SE LO TROVA GIA' PRESENTE!

    ...a meno che non usi Tickstory nella modalità "pirata" per fare un backtest al tick al 99% di qualità
    allora in questo caso il file .FXT di Tickstory NON viene sovrascritto/rigenerato da Metatrader4 che usa quello generato da Tickstory
    NOTA: io non uso questo metodo perciò non so aiutarti ulteriormente su questo aspetto.

    Leave a comment:


  • Nicholas
    replied
    Originally posted by umbertosm View Post
    Si è così.
    IMPORTANTE: devi avere tutti i timeframe caricati nell'History Center da M1 a D1 se vuoi che l'Expert Advisor interroghi correttamente i dati EURUSD H1 ed EURUSD D1.
    Se non hai i dati D1 di EURUSD caricati nella Mt4, quando l'EA interroga D1 Mt4 restituisce valori inventati e sbagliati.


    Esatto, NON puoi fare il backtest di una strategia su EURUSD H1 che vuole leggere anche i dati di GBPJPY D1.
    Però puoi fare funzionare correttamente un EA in Live (demo o real) su un grafico EURUSD H1 e che legge anche i dati di mercato di altri cross, come ad esempio GBPJPY D1, o JPYUSD H4, ecc.
    Scrivi <<tutti i dati>> cosa intendi? A rigor di logica devo avere i soli timeframes che mi servono e non tutti giusto? Se lavoro su H1 e D1 posso non avere H4 penso... in oltre se io, tramite Tickstory, scarico i files .FXT in tester vorrà dire che la MT4 non creerà nessun file temporanei .FXT in quanto li trova già giusto? Se invece tester è vuoto allora leggere in centro storia e creerà i files temporanei per il BT dopodiché li cancellerà credo...

    Leave a comment:


  • umbertosm
    replied
    Originally posted by Nicholas View Post
    Allora... se io ho una strategia su EURUSD H1 ma che nel frattempo deve leggere anche la MA sempre su EURUSD D1 posso farlo giusto?
    Si è così.
    IMPORTANTE: devi avere tutti i timeframe caricati nell'History Center da M1 a D1 se vuoi che l'Expert Advisor interroghi correttamente i dati EURUSD H1 ed EURUSD D1.
    Se non hai i dati D1 di EURUSD caricati nella Mt4, quando l'EA interroga D1 Mt4 restituisce valori inventati e sbagliati.



    Originally posted by Nicholas View Post
    Quello che non posso fare è una strategia su EURUSD H1 che però deve leggere anche i dati di GBPJPY D1? Ho capito bene?
    Esatto, NON puoi fare il backtest di una strategia su EURUSD H1 che vuole leggere anche i dati di GBPJPY D1.
    Però puoi fare funzionare correttamente un EA in Live (demo o real) su un grafico EURUSD H1 e che legge anche i dati di mercato di altri cross, come ad esempio GBPJPY D1, o JPYUSD H4, ecc.


    Leave a comment:


  • Nicholas
    replied
    Originally posted by umbertosm View Post
    ciao Nicholas

    1) e 3)
    Metatrader4 funziona così:
    - Mt4 può fare un backtest/ottimizzazione SOLTANTO su UNA coppia Forex o CFD (li chiamiamo entrambi "cross") e NON può fare un backtest/ottimizzazione su 2 o più cross.

    - Invece, in Live (demo o real) un EA su Metatrader4 può funzionare correttamente caricato su un grafico di 1 solo cross, ma elaborare le regole leggendo i dati di 2 o più cross.

    - Mt4 può fare un backtest/ottimizzazione su 1 solo cross ma può elaborare le regole leggendo i dati di 2 o più diversi timeframes dello stesso cross.

    - Ad ogni nuovo backtest/ottimizzazione, ogni volta Metatrader4 ricrea da capo il file .FXT sovrascrivendo quello precedente: funziona così, non ci puoi fare nulla.


    2)
    Una volta caricato il .CSV nel centro storia, puoi cancellare il file .CSV , perché Metatrader4 ha creato il suo file .HST da questo file .CSV e non ha più bisogno di questo file .CSV


    4)
    Se ti trovi male con Tick Downloader, ti consiglio questi dati M1 gratuiti: Download Free Forex Data



    Ok, solo un chiarimento perché forse non ho capito bene.

    Allora... se io ho una strategia su EURUSD H1 ma che nel frattempo deve leggere anche la MA sempre su EURUSD D1 posso farlo giusto?

    Quello che non posso fare è una strategia su EURUSD H1 che però deve leggere anche i dati di GBPJPY D1? Ho capito bene?

    Spero di si perché a me interessava un solo cross ma 2 timeframes per individuare meglio la direzione del trend...

    P.S: a questo punto è anche inutile avere i files .FXT in tester.... Tickstory li butta li...

    Leave a comment:


  • umbertosm
    replied
    ciao Nicholas

    1) e 3)
    Metatrader4 funziona così:
    - Mt4 può fare un backtest/ottimizzazione SOLTANTO su UNA coppia Forex o CFD (li chiamiamo entrambi "cross") e NON può fare un backtest/ottimizzazione su 2 o più cross.

    - Invece, in Live (demo o real) un EA su Metatrader4 può funzionare correttamente caricato su un grafico di 1 solo cross, ma elaborare le regole leggendo i dati di 2 o più cross.

    - Mt4 può fare un backtest/ottimizzazione su 1 solo cross ma può elaborare le regole leggendo i dati di 2 o più diversi timeframes dello stesso cross.

    - Ad ogni nuovo backtest/ottimizzazione, ogni volta Metatrader4 ricrea da capo il file .FXT sovrascrivendo quello precedente: funziona così, non ci puoi fare nulla.


    2)
    Una volta caricato il .CSV nel centro storia, puoi cancellare il file .CSV , perché Metatrader4 ha creato il suo file .HST da questo file .CSV e non ha più bisogno di questo file .CSV


    4)
    Se ti trovi male con Tick Downloader, ti consiglio questi dati M1 gratuiti: Download Free Forex Data




    Leave a comment:


  • Nicholas
    replied
    Originally posted by umbertosm View Post
    Procedura scaricamento dati storici

    Per scaricare i dati storici dai server di Dukascopy (uno dei broker che offre gratuitamente dati storici semi professionali) si possono usare diversi software,

    uno di questi è Tick Downloader, gratuito.
    [ATTACH=CONFIG]n1058[/ATTACH]






    Collegarsi a http://www.strategyquant.com/tickdownloader/

    Scaricare il software ed installarlo.

    ( download diretto: http://www.strategyquant.com/tickdownloader/download )

    Dopo aver aperto il programma, nella scheda Dukascopy Tick Data sono elencati i simboli che il broker Dukascopy utilizza.

    Selezionare la coppia di valute o CFD da scaricare, nell’esempio EURUSD
    [ATTACH=CONFIG]n1059[/ATTACH]

    (...)

    Bella spiegazione umbertosm!!!

    A me comunque, pur non dandomi errori come quando ho provato a scarica troppi anni insieme, Tickdownloader mi scarica dati brutti come si vede nelle due immagini... M1 AUDCAD di soli 2 mesi con un peso file di 3.141 KB.

    Ti faccio alcune domande (numerate per miglior comprensione):

    1) Tu dici che crea i file .FXT provvisori per eseguire il backtest... ma poi li cancelli quindi? Se io li avessi già in history in tester (perché scaricati con Tickstory che li butta direttamente li in formato .FXT) userebbe direttamente quelli? Mi sembra che durante i BT la piattaforma vada a leggere i file in centro storia solo se trova history in tester vuoto!

    2) Una volta caricato il .CSV in centro storia posso cancellare il relativo file (AUDCAD_M1_UTC+2_00_FXPro) in tickdata di Tickdownloader? Per recuperare spazio, difatti gli altri files e cartelle (che il software scarica) li cancello subito tenendo solo quello che va caricato...

    3) Mi pare che se prevediamo una strategia che legga nel codice sorgente 2 differenti cross, o 2 diversi timeframes, la piattaforma non prenda i dati di entrambi da history in tester ma va in centro storia quindi l'ideale è avere sia centro storia che history in tester con i medesimi dati (dato che tutti ciucciano dalla stessa fonte Dukascopy)...

    4) Se facciamo il BT offline (come io vorrei fare in quanto questa MT4 la uso solo per i BT) non va bene se il MM prevede la lettura del balance/equity o free margin giusto? Deve essere per forza online? Ma così non scarica di nuovo i dati "malati" i quali vanno poi in conflitto con quelli buoni caricati da noi? Che poi buoni non sono e non capisco perché essendo, anche in questo esempio nelle immagini, 2 mesi del 2018!!

    Grz!
    Attached Files

    Leave a comment:


  • umbertosm
    replied
    penso che tu debba mettere il valore massimo come da immagine al post 32

    ai due campi:

    Numero massimo di barre nello storico
    Numero massimo di barre nel grafico


    Al post di sopra ho inserito anche la schermata in lingua inglese, il campo fondamentale dove inserire il valore massimo è il primo dei due

    Leave a comment:


  • Mark47
    replied
    Premessa: ho scaricato e importato in MT4 le serie storiche complete M1 (e TF superiori) dal 2010 ad oggi. (da TickDownloader). Tutto bene. Poi oggi apro la Mt4 e vedo che l'M1 su EUR/USD mi parte da tardo 2017... anche nel centro storia sono scomparsi tutti i dati che avevo importato. (idem i file FXT da 150-170 mb sono tornati ad essere 12-13). Mentre su altri cambi ho ancora tutto. Alcuni me li ha persi alcuni no.
    Cosa puo aver causato ciò?
    - Potrebbe essere il fatto che la MT4 che uso è connessa con il Broker (non usato la storia del server proxy per "scollegarla") e questo in automatico pian piano ti rimette i dati come erano in origine? (magari in base ai cambi che uno guarda)
    - O senno l'altra operazione che ho fatto è stato ridurre le barre massime in "Strumenti -> Opzioni"... avevo messo 9999999999999 ma poi ho rimesso 500.000 per rendere "piu leggera" la piattaforma. (pensando che tali impostazioni riguardassero solo la visualizzazione di tali barre nel grafico e non la loro presenza nello storico).

    Grazie come sempre le risposte.

    Leave a comment:


  • Mark47
    replied
    Originally posted by umbertosm View Post
    Ad oggi il limite del file FXT non è definito, forse è 20 GB? boh...
    Per pura curiosità ho appena fatto un BackTest dal 01/01/2010 -> 31/12/2017 (8 anni) -> 35.3 Giga e la simulazione è andata liscia fino alla fine (non ha mai spesso di operare). Peccato solo che il profit factor era di 1.04 :077.WAsmile:

    Leave a comment:


  • umbertosm
    replied
    Fino al 2013 il limite massimo del file FXT era di 2 GB, poi è diventato di 4 GB, ma senza che la Metaquotes ne abbia mai fatto menzione nelle successive release (o io non sono riuscito a trovarlo).

    Ad oggi il limite del file FXT non è definito, forse è 20 GB? boh...

    Si prova a fare un backtest con qualsivoglia dimensione del file .FXT, se non si verificano più trade da un certo mese/anno in poi, probabilmente è stato superato il limite, altrimenti va tutto bene.

    Leave a comment:

Working...
X