Tuesday, 12 September 2017

Roboforex Esperto Mt4


Ho un EA che utilizza l'evento timer e funziona bene sui miei conti con due broker. Tuttavia, ho appena aperto un conto RoboForex, e la stessa EA non funziona perché il gestore di eventi timer non viene colpito (codice di debug aggiunto lo dimostra). Qualcun altro ha avuto questo problema o è solo a me ho difficoltà a credere che RoboForex stanno distribuendo una versione parzialmente funzionale di MQL4, ma trovo altrettanto difficile capire perché non sta lavorando su quel broker solo Ho contattato RoboForex su il soggetto, ma il convenuto chiaramente non ha ancora capito la domanda, e non poteva essere disturbati per trovare qualcuno che ha fatto - del tutto inutile OnTimer () viene inizializzato nella funzione OnInit () e dopo che la funzione Timer () viene eseguito in locale. Non sul server broker o in qualsiasi altro luogo. Deve essere qualcosa di diverso. Si prega di inviare il codice. OnTimer () viene inizializzato in OnInit function () e dopo che la funzione Timer () viene eseguito in locale. Non sul server broker o in qualsiasi altro luogo. Deve essere qualcosa di diverso. Si prega di inviare il codice. Io normalmente d'accordo con lei, ma questo non è la mia esperienza. In allegato è un file zip con un EA prova nella sua forma più semplice con i file di log risultanti da uno dei miei conti (in cui la piena EA funziona bene) e dal mio conto RoboForex. Si noti che nel primo caso ci sono log registra ogni 60 secondi, mentre nel caso RoboForex, anche se ci sono più di 7 minuti tra inizializzazione e de-init, non ci sono record timer. Wayside48: Io normalmente d'accordo con lei, ma questo non è la mia esperienza. In allegato è un file zip con un EA prova nella sua forma più semplice con i file di log risultanti da uno dei miei conti (in cui la piena EA funziona bene) e dal mio conto RoboForex. Si noti che nel primo caso ci sono log registra ogni 60 secondi, mentre nel caso RoboForex, anche se ci sono più di 7 minuti tra inizializzazione e de-init, non ci sono record timer. Si ottiene EA deinitialized che uccide il timer. Questo è anche un evento locale, proprio come gli altri 2. È EA viene deinitialized che uccide il timer. Questo è anche un evento locale, proprio come gli altri 2. Sì, esso viene deinitialised quando rimuovo dalla tabella - dovrebbe ancora aver registrato 7 eventi di un minuto tra l'essere inizializzato e deinitialised. Se si guarda il codice, sto registrando il tempo di inizializzazione, il tempo di de-inizializzazione, e il tempo di ogni evento OnTimer mezzo. Nel caso di lavoro il minuto OnTimer eventi siano correttamente registrati, sulla RoboForex di log non ci sono timer eventi registrati tra inizializzazione e de-inizializzazione 7 minuti più tardi. Sì, si ottiene deinitialised quando rimuovo dalla tabella - dovrebbe ancora aver registrato 7 eventi di un minuto tra l'essere inizializzato e deinitialised. Se si guarda il codice, sto registrando il tempo di inizializzazione, il tempo di de-inizializzazione, e il tempo di ogni evento OnTimer mezzo. Nel caso di lavoro il minuto OnTimer eventi siano correttamente registrati, sulla RoboForex di log non ci sono timer eventi registrati tra inizializzazione e de-inizializzazione 7 minuti più tardi. Funzione OnTimer () non funziona nel tester. Mi dispiace essere schietto, so che si sta cercando di fare a meno. Io non sto usando nel tester, e non ho mai detto che ero. Vi ho dato due file di log generati dal EA campione che ho inviato. Entrambi erano da EA in esecuzione su conti vivere in condizioni Live. Uno è segnalazione di eventi timer ogni minuto, l'altro (RoboForex) non è - è la stessa EA in esecuzione su due diversi conti LIVE IN TEMPO REALE. Hai iniziato col dire non è possibile, ma vorrei suggerire che ho dimostrato che il terminale RoboForex è in qualche modo non generando eventi timer - che è dove ho iniziato. Non posso spiegare ed è per questo ho cercato aiuto da parte del Forum, ma sembra che è di alcun aiuto né Grazie comunque, se trovo un male posta risposta qui. Havent provato niente perché stai usando isOptimzed in quel pezzo di codice avete controllato il mi attengo al mio primo risposte funzione timer viene eseguito in locale e non è influenzato dal broker, anche nei fine settimana quando i mercati sono chiusi i utilizzare timer per avere la corsa e bis calcoli per trovare settimana voci successive. Ho anche EAS in cui il timer genera arteficial zecche chi vive anche senza alimentazione di mercato dal vivo. se non si trova una soluzione e credo che sia un bug poi scrivere a ServiceDesk. Inoltre si dovrebbe prendere una strada più semplice per testare le cose ci sono troppe cose in tra cadere un semplice In funzione timer dovrebbe essere un approccio più diretto per controllare se le piste del timer, al posto di scrittura di file e tutti that. Hmm Interessante davvero - molte grazie per questo. Come avete visto dai miei file di log, è certamente non funziona nel mio ambiente RoboForex. Si trova su una VPS cui CPU sta lottando un po ', così ho fatto da meravigliarsi se gli eventi sono stati sempre in coda per troppo tempo, ma ho avuto in esecuzione per più di un'ora e non è stato registrato un singolo evento. Credo che la mia prossima mossa sarà quella di provare sulla mia macchina locale, piuttosto che le VPS. Ancora una volta grazie per i vostri sforzi. Hmm davvero interessante - molte grazie per questo. Come avete visto dai miei file di log, è certamente non funziona nel mio ambiente RoboForex. Si trova su una VPS cui CPU sta lottando un po ', così ho fatto da meravigliarsi se gli eventi sono stati sempre in coda per troppo tempo, ma ho avuto in esecuzione per più di un'ora e non è stato registrato un singolo evento. Credo che la mia prossima mossa sarà quella di provare sulla mia macchina locale, piuttosto che le VPS. Ancora una volta grazie per i vostri sforzi. C'è sempre quel qualcosa che la gente non dire in anticipo. Havent provato niente perché stai usando isOptimzed in quel pezzo di codice avete controllato il mi attengo al mio primo risposte funzione timer viene eseguito in locale e non è influenzato dal broker, anche nei fine settimana quando i mercati sono chiusi i utilizzare timer per avere la corsa e bis calcoli per trovare settimana voci successive. Ho anche EAS in cui il timer genera arteficial zecche chi vive anche senza alimentazione di mercato dal vivo. se non si trova una soluzione e credo che sia un bug poi scrivere a ServiceDesk. Inoltre si dovrebbe prendere una strada più semplice per testare le cose ci sono troppe cose in mezzo lasciando cadere una semplice In funzione timer dovrebbe essere un approccio più diretto per controllare se le piste del timer, al posto di scrittura di file e tutto il resto. Io ho il commercio permesso perché la EA Im utilizzando al commercio realmente sul conto sta lavorando bene. In ogni caso, il motivo per cui vorrei che pregiudica l'esistenza dell'evento timer Il metodo writeToLog () è semplicemente quello che uso in tutto il mondo ed è ben collaudato ed è dimostrato di lavorare in questa situazione con il fatto che i messaggi di inizializzazione sono scritti. Il IsOptimization () è solo lì in modo che doesnt provare a scrivere file di log durante l'ottimizzazione. Sono d'accordo - ho usato OnTimer tutto il luogo (da diversi anni) e non hanno avuto problemi con esso fino ad ora. So che la sua non è un errore perché funziona in tutti, ma mio ambiente RoboForex. In ogni caso, Nguyen Nga ha dimostrato che sul suo conto RoboForex funziona benissimo (la registrazione e tutti), quindi deve essere connessi al mio ambiente. Continui a dire che il suo locale - e sì, è una funzione del quadro MQL4, ma per quanto ne so non vi è alcun motivo per cui RoboForex potrebbe non avere la propria versione del quadro che, per qualche ragione, pretende molto sostenere l'evento timer. Per essere onesti, se così fosse mi sarei aspettato un programmatore rispettabile un'eccezione NotImplemented in risposta al metodo EventSetTime (), ma non si sa mai. Io ho il commercio permesso perché la EA Im utilizzando al commercio realmente sul conto sta lavorando bene. In ogni caso, il motivo per cui vorrei che pregiudica l'esistenza dell'evento timer Il metodo writeToLog () è semplicemente quello che uso in tutto il mondo ed è ben collaudato ed è dimostrato di lavorare in questa situazione con il fatto che i messaggi di inizializzazione sono scritti. Il IsOptimization () è solo lì in modo che doesnt provare a scrivere file di log durante l'ottimizzazione. Sono d'accordo - ho usato OnTimer tutto il luogo (da diversi anni) e non hanno avuto problemi con esso fino ad ora. So che la sua non è un errore perché funziona in tutti, ma mio ambiente RoboForex. In ogni caso, Nguyen Nga ha dimostrato che sul suo conto RoboForex funziona benissimo (la registrazione e tutti), quindi deve essere connessi al mio ambiente. Continui a dire che il suo locale - e sì, è una funzione del quadro MQL4, ma per quanto ne so non vi è alcun motivo per cui RoboForex potrebbe non avere la propria versione del quadro che, per qualche ragione, pretende molto sostenere l'evento timer. Per essere onesti, se così fosse mi sarei aspettato un programmatore rispettabile un'eccezione NotImplemented in risposta al metodo EventSetTime (), ma non si sa mai. Non ho idea di quale quadro si sta parlando. La funzione OnTimer corre sull'orologio processore locale, non c'è modo per RoboForex o qualsiasi broker per quella materia di manomettere tale. Il suo abbastanza semplice, e che il motivo per cui mi attengo a: Bene, Im paura quello che ho detto è possibile. Mi stringeva sugli specchi piuttosto con il suggerimento CPU più caricato, ma si scopre essere il problema. Sembra RoboForex stanno fornendo un servizio VPS veramente poveri. Ho due istanze di terminale MT4 in esecuzione su di esso e l'utilizzo della CPU è stato seduto a 100 più o meno permanente. Come ho detto, ho lasciato il mio test EA correre per più di un'ora e non un singolo evento timer ottenuto attraverso ad esso, anche se gli eventi onTick fatto passare, anche se non ho idea di quanto tardi però, ho appena provato anche oggi, e la eventi onTick sono sempre attraverso - con la differenza che la CPU è solo in esecuzione circa 70 occupati a causa della mancanza di traffico commerciale (eventi onTick). Anche 70 è completamente ridicolo nelle circostanze - Ho un altro specd simile VPS (single-core Intel Xeon a 2GHz con 1G di RAM), che con la stessa singola istanza MT4 esecuzione sta consumando appena 1 CPU in questo momento, e durante la settimana picchi a circa il 20. Così, non so se l'evento onTick ha priorità maggiore rispetto OnTimer, ma la sua qualcosa da guardare se si basano su timer e la vostra CPU è occupata Bene, Im quello che paura ho detto è possibile. Mi stringeva sugli specchi piuttosto con il suggerimento CPU più caricato, ma si scopre essere il problema. Sembra RoboForex stanno fornendo un servizio VPS veramente poveri. Ho due istanze di terminale MT4 in esecuzione su di esso e l'utilizzo della CPU è stato seduto a 100 più o meno permanente. Come ho detto, ho lasciato il mio test EA correre per più di un'ora e non un singolo evento timer ottenuto attraverso ad esso, anche se gli eventi onTick fatto passare, anche se non ho idea di quanto tardi però, ho appena provato anche oggi, e la eventi onTick sono sempre attraverso - con la differenza che la CPU è solo in esecuzione circa 70 occupati a causa della mancanza di traffico commerciale (eventi onTick). Anche 70 è completamente ridicolo nelle circostanze - Ho un altro specd simile VPS (single-core Intel Xeon a 2GHz con 1G di RAM), che con la stessa singola istanza MT4 esecuzione sta consumando appena 1 CPU in questo momento, e durante la settimana picchi a circa il 20. Così, non so se l'evento onTick ha priorità maggiore rispetto OnTimer, ma la sua qualcosa da guardare se si basano su timer e la tua CPU è occupata Perché non si cerca di benchtest che server per vedere se funziona correttamente. Nel pezzo di codice che hai fornito. Questo non può mai portare a un carico di 70 CPU, a meno che non si sono bloccati in un ciclo infinito. Per esempio ho eseguito i miei robot, senza problemi. Scarica MetaTrader 5 Copyright 2000-2017, MQL5 Ltd.

No comments:

Post a Comment