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 bene i primi post di questo thread.

    Qui accenno la differenza, ma se interessa approndire, ti leggi i post.

    Non c'è alcun confronto da fare con i file .HST e .FXT, sono entrambe fondamentali per Mt4 e assolvono a ruoli diversi :

    - i dati storici vengono convertiti in file .HST relativi a tutti i timeframe generati, nella cartella history del server del broker
    C:\Metatrader4\history

    - quando fai un backtest/ottimizzazione la piattaforma crea un file temporaneo di dati storici, con estensione .FXT
    dentro C:\Metatrader4\tester\history
    Si ho capito ma si possono scaricare direttamente in formato FXT che sono appunto più pesanti ma più precisi nei tick.

    Leave a comment:


  • umbertosm
    replied
    Originally posted by Nicholas View Post
    Quindi (se ho capito bene)
    no... non hai studiato bene i primi post di questo thread.

    Qui accenno la differenza, ma se interessa approndire, ti leggi i post.

    Non c'è alcun confronto da fare con i file .HST e .FXT, sono entrambe fondamentali per Mt4 e assolvono a ruoli diversi :

    - i dati storici vengono convertiti in file .HST relativi a tutti i timeframe generati, nella cartella history del server del broker
    C:\Metatrader4\history

    - quando fai un backtest/ottimizzazione la piattaforma crea un file temporaneo di dati storici, con estensione .FXT
    dentro C:\Metatrader4\tester\history

    Leave a comment:


  • Nicholas
    replied
    Originally posted by umbertosm View Post
    Il "volume" delle candele su Metatrader4 è il numero di tick all'interno della candela; ad esempio per candele M1 ad 1 minuto, il volume è il numero di tick (= quotazioni, valore del mercato in quell'istante) che vengono inviati dal broker per 1 minuto di candela.
    Quando c'è molto movimento di mercato ci possono essere anche più di 1 tick al secondo ed una candela M1 può contenere 60 e più tick: questi tick vanno a formare il corpo della candela, quindi non solo i 4 tick di Open, Low , High e Close, ma anche tutti i tick intermedi che man mano giungono in 1 minuto formando la candela.
    (...)
    Pertanto se devo fare backtest con HST su H1 devo prima importare M1, poi crearmi H1 con lo script e stop... non mi interessa avere anche i sotto tf come M5, M15 e M30 perché tutti i tick li avrò automaticamente da M1. Solo eventualmente la strategia dovesse richiamare dal code altro tf allora dovrei importarlo...

    Leave a comment:


  • Nicholas
    replied
    Quindi (se ho capito bene) riferendomi alla fractal interpolation scritta da Umbertosm si evince che i dati HST (CSV)
    1. sono più leggeri (Gbyte) degli FXT
    2. sono "meno precisi" degli FXT in quanto hanno solo 4 prezzi (OHLC) quindi l'andamento interno dei ticks è deciso dall'algoritmo MT4 anziché rispettare la realtà accaduta
    3. in pratica daranno gli stessi risultati in backtest degli FXT tutte le volte che i targets NON saranno sulla medesima candela d'entrata (praticamente sempre)
    Ergo: scarico gli HST e alleggerisco meno il PC, velocizzo i backtest (strategie newbar), ecc...

    Leave a comment:


  • umbertosm
    replied
    Il "volume" delle candele su Metatrader4 è il numero di tick all'interno della candela; ad esempio per candele M1 ad 1 minuto, il volume è il numero di tick (= quotazioni, valore del mercato in quell'istante) che vengono inviati dal broker per 1 minuto di candela.
    Quando c'è molto movimento di mercato ci possono essere anche più di 1 tick al secondo ed una candela M1 può contenere 60 e più tick: questi tick vanno a formare il corpo della candela, quindi non solo i 4 tick di Open, Low , High e Close, ma anche tutti i tick intermedi che man mano giungono in 1 minuto formando la candela.

    Nell'immagine del primo post del thread mi pare evidente quel che scrivo...

    M1.jpg

    Leave a comment:


  • Nicholas
    replied
    A parità di intervallo di tempo di un backtest, le dimensioni del file .FXT per un backtest EveryTick dipende dal valore del VOLUME che hanno le candele M1, perciò può accadere che

    - con soli 2 anni di dati storici si ottiene un file .FXT di 4 GB, quando il volume delle candele M1 è mediamente di 20;

    - se invece il volume delle candele M1 è basso, il minor numero di tick dentro le candele M1 permette di poter fare un backtest anche di 4 o più anni, perché il file .FXT si manterrà al di sotto dei 4 GB.
    [/QUOTE]

    - Quando dici "il volume delle candele M1 è mediamente di 20" cosa intendi? Il massimo non può essere 4 (OHLC), come fa a essere in media 20 su candele M1? Forse intendevi che, anche a parità di 4 tick su ogni M1, sarà ovviamente più veloce un backtest su M15 rispetto a H1/H4,ecc...?

    - Qui intendi se per caso le candele M1 hanno, per esempio, mediamente solo 2 tick?

    Leave a comment:


  • umbertosm
    replied
    Originally posted by Nicholas View Post

    Cioè tu vuoi dire che anche se scarico il file .FXT da Quant Data Manager non serve perché la MT4 userà comunque gli .HST convertendoli momentaneamente in .FXT??? Io faccio BT con gli .FXT scaricati e non ho i dati .HST ma il BT funziona comunque...
    Metatrader4 potrebbe essere cambiato nel frattempo, il mio post è di due anni fa

    Leave a comment:


  • Nicholas
    replied
    Originally posted by umbertosm View Post

    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



    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.
    Cioè tu vuoi dire che anche se scarico il file .FXT da Quant Data Manager non serve perché la MT4 userà comunque gli .HST convertendoli momentaneamente in .FXT??? Io faccio BT con gli .FXT scaricati e non ho i dati .HST ma il BT funziona comunque...

    Leave a comment:


  • Nicholas
    replied
    Originally posted by umbertosm View Post
    si Davide :28.nerd_80_anim_gif purtroppo ho appena verificato che Metatrader4 è cambiato ancora,

    ho verificato che se alla Metatrader4 scollegata dal broker eseguo questo script

    PHP Code:
    void OnStart()
    {
    Print(
    "MODE_LOTSIZE = ",MarketInfo(Symbol(), MODE_LOTSIZE));
    Print(
    "MODE_MINLOT = ",MarketInfo(Symbol(), MODE_MINLOT));
    Print(
    "MODE_LOTSTEP = ",MarketInfo(Symbol(), MODE_LOTSTEP));
    Print(
    "MODE_MAXLOT = ",MarketInfo(Symbol(), MODE_MAXLOT));


    ottengo i dati in figura:



    Dove si osserva MODE_MINLOT = 0.0
    In pratica dentro Metatrader4 non rimangono memorizzate alcune variabili, come il MINLOT
    e quindi quando il backtest invia un ordine di trade sui dati storici, Metatrader4 non ha l'informazione di quale sia il lotto minimo... e ti dà l'errore 131

    Prima non era così, anche con i dati storici scollegati si facevano i backtest senza problemi.

    Allora per risolvere ho fatto così:
    (...)
    Per i BT non usi i file .fxt? Leggo che usi .HST che però hanno solamente 4 valori...

    Leave a comment:


  • Nicholas
    replied
    Originally posted by frengo View Post
    Mi ha risposto Claudio del Pup, autore del video che bisogna installare la MT4 direttamente in C:\. Fatto cio' il campo "Nome Server" e' andato automaticamente ok (purtroppo nel video non si faceva menzione del fatto di installare la piattaforma in C).
    Ora c'e' il problema di vedere i dati nel grafico perche', seguendo tutta la procedura del video citato sopra, io esporto i dati tick scaricati con Quant data manager in formato .fxt ma andando sulla piattaforma vedo sempre i vecchi dati del broker e non quelli che carico io con qdm.......non so proprio dove sbaglio. In realta' la procedura del video sembra valida ma e' molto diversa da quella descritta all' inizio di questo post. Ora provero' a fare un mix tra le due .....
    I file .fxt vanno in tester\history e servono solamente per i backtest mentre i dati .hst (quelli sul file CSV) sono quelli che la MT4 ti visualizza sui grafici ma non servono per i backtest (a meno che la piattaforma non trovi il file .fxt allora lo creerà automaticamente prendendo i dati dagli .hst ma quest'ultimi hanno solamente OHLC quindi non credo siano uguali e vadano bene come gli .fxt).

    Leave a comment:


  • frengo
    replied
    FANTASTICO. Grazie. Siete sempre molto velocissimi. Ora vedo quale dei tre fa al caso mio. Forse tutti e tre ...... :10.kiss_80_anim_gif:10.kiss_80_anim_gif:10.kiss_8 0_anim_gif

    Leave a comment:


  • umbertosm
    replied
    Originally posted by frengo View Post

    P.S.: OT: tempo fa trovai sul web un tutorial relativo ad una specie di animazione tipo moviola per vedere l' andamento di un vecchio trade se in un giorno remoto fosse stata lanciata una posizione in un dato momento ad un certo prezzo. Non so se mi sono spiegazzato.
    Si poteva anche regolare la velocita' ma non ricordo come si chiama questo software da applicare ovviamente su MT4.
    ne parlavamo qui

    Leave a comment:


  • frengo
    replied
    Originally posted by umbertosm View Post
    Metatrader4 lavora soltanto con i dati storici in formato file .HST,
    che si creano importando i file .CSV dentro Metatader4, come spiegato al post #3 di questo thread




    Vero. Scusatemi, ma mi sono un po' esaurito a cercare di far funzionare il tutto. Era da impostare il numero massimo delle candele in Strumenti>Opzioni>Grafici......

    Ora vedo le candele M1 per un periodo superiore ai 12 mesi ma mi occorre caricare un periodo piu' grande.

    P.S.: OT: tempo fa trovai sul web un tutorial relativo ad una specie di animazione tipo moviola per vedere l' andamento di un vecchio trade se in un giorno remoto fosse stata lanciata una posizione in un dato momento ad un certo prezzo. Non so se mi sono spiegazzato.
    Si poteva anche regolare la velocita' ma non ricordo come si chiama questo software da applicare ovviamente su MT4.

    Qualcuno qui sul forum la conosce ?

    Grazie.

    Leave a comment:


  • umbertosm
    replied
    Metatrader4 lavora soltanto con i dati storici in formato file .HST,
    che si creano importando i file .CSV dentro Metatader4, come spiegato al post #3 di questo thread





    Leave a comment:


  • frengo
    replied
    Ho fatto una ricerca completa in tutte le cartelle del mio PC con Quicksearch (https://www.glarysoft.com/quick-search/download/) e non ho trovato in nessuna cartella delle piattaforme MT4 (ne ho installate 5 o 6 di diversi broker) alcun file .csv oppure .fxt ma solo .hst. Gli unici .csv o .fxt che ho trovato nel PC erano quelli scaricati con Quant data manager ma non si caricano sulla MT4 perche' quest' ultima sembra che lavori solo con files .hst. Vorrei sbagliarmi ma se e' cosi' come si fa a scaricare con Quant data manager files in formato .hst ?
    Evidentemente e' per questo che non visualizzo alcun grafico di quelli caricati. I grafici non si caricano perche' hanno formati che le MT4 non masticano piu' ? In tal caso se le MT4 masticano solo formati .hst, come mai Qdm non me li fa esportare in .hst ma solo .csv o .fxt ?
    Mi viene il dubbio che questo thread vada aggiornato .....qualcuno mi illumini
    Last edited by frengo; 22-01-2020, 21:34.

    Leave a comment:

Working...
X