Discussione sull’articolo "Come accedere al database MySQL da MQL5 (MQL4)" - pagina 4

 
ingvar_e:

L'installazione di M5 a 32 bit ha funzionato bene e la compilazione ha funzionato bene, ma non sono riuscito a ottenere il valore di tick da

SymbolInfoDouble(pair,SYMBOL_TRADE_TICK_VALUE)

restituisce 0;

Forse non è una buona idea eseguire una MT5 a 32 bit su una macchina Windows a 64 bit. Ci sono anche altre indicazioni di malfunzionamento. Il prossimo tentativo è quello di installare un Windows 32 sul mio computer a 64 bit.

Sempre queste lunghe deviazioni ti portano lontano dal tuo percorso principale :-(

Sembra che debba rinunciare a questo strumento e passare alle basi con MySQL. È troppo complicato installare un nuovo Windows XP e non ho la chiave W7.

Sto lavorando su questo problema con il service desk, spero di ricevere presto buone notizie.

Per quanto riguarda TICK_VALUE, ho avuto gli stessi problemi anche in MT4. Ecco il workaround che sto usando:

tick_value = 0;
while (tick_value<=0) { tick_value = SymbolInfoDouble(symbol, SYMBOL_TRADE_TICK_VALUE);}

oppure

tick_value = SymbolInfoDouble(symbol, SYMBOL_TRADE_TICK_VALUE);
while (!MathIsValidNumber(tick_value))
      {
       Sleep(50);
       tick_value = SymbolInfoDouble(symbol, SYMBOL_TRADE_TICK_VALUE); 
      }
 
elugovoy:

Sto lavorando su questo problema con il service desk, spero di ricevere presto buone notizie.

Per quanto riguarda TICK_VALUE, ho avuto gli stessi problemi anche in MT4. Ecco il workaround che sto utilizzando:

oppure

Lo proverò :-)

Non ha funzionato. Si blocca in un ciclo.

 

Ho un'idea sul problema del valore di tick. Sto gestendo un EA multicurrency e inizio a ricevere molte informazioni per ogni coppia. Quindi diventa un po' come "martellare". Modificherò il sistema in modo che

che il valore di tick venga richiesto solo quando necessario. (e salvato)

- Aggiornato --

Non completamente in regola. Ho apportato la modifica di cui sopra. L'ottimizzazione funziona ancora. Nessun messaggio di errore all'avvio dell'EA. L'OK arriva quando l'EA ha effettuato un'operazione di trading. Bisogna aspettare.

Questa è la versione a 32 bit dell'EA in un ambiente Windows 7 a 64 bit. Se funziona, risolverà almeno temporaneamente il problema.

Recupero il Tickvalue solo quando il primo ordine è in arrivo e lo salvo.

 

OK, l'esecuzione di un'installazione della versione 32 aggiungendo "/32" al programma di installazione di MT5 funziona bene su un computer Windows 7 a 64 bit e anche lo strumento mysql funziona bene.

Torniamo ai problemi di progettazione di base e ai test con l'EA,

 
mat.twg:

Grazie per l'articolo! Quante soluzioni non hanno provato ovunque la stessa cosa, se non si disturba si prega di guardare il log, non riesco a capire nulla....

Server MySQL:

  • Server: localhost via TCP/IP
  • Versione del server: 5.6.10
  • Versione del protocollo: 10
  • Utente: root@localhost
  • Codifica MySQL: UTF-8 Unicode (utf8 )
  • Database InnoDB, UTF8-General-Ci

MT5 build 1035

Sistema operativo: Win8.1 x64

Si tratta di un errore di MT5 build 1035, x64. Il Service Desk è stato informato e garantisce una correzione nella prossima build.

Il problema risiede nel programma MQL che accetta valori stringa da una libreria dinamica.

Nella MT5 build 1035 x32 funziona senza questo errore.

 
ingvar_e:

OK, l'esecuzione di un'installazione della versione 32 aggiungendo "/32" al programma di installazione di MT5 funziona bene su un computer Windows 7 a 64 bit e anche lo strumento mysql funziona bene.

Torniamo ai problemi di progettazione di base e ai test con l'EA,

Ciao Ingvar,

Il service desk di MetaQuotes ha promesso di risolvere il problema nella prossima versione di MT5.

Quindi, non ci resta che attendere il rilascio della prossima build di MT5.

Grazie

 
elugovoy:

Ciao Ingvar,

Il service desk di MetaQuotes ha promesso di risolvere il problema nella prossima versione di MT5.

Quindi, non ci resta che attendere il rilascio della prossima versione di MT5.

Grazie

Grazie per le informazioni elugovoy. Nel frattempo ho eseguito una versione a 32 bit. L'installazione con l'opzione /32 funziona bene.

Bel pezzo di SW. Memorizzare i parametri di trading con uno script da file e recuperarli nell'EA. MySQL gira sul mio server, quindi posso

quindi posso recuperare i parametri sia sull'EA in esecuzione su un altro server che sui computer locali in via di sviluppo.

 

Ciao di nuovo.

È uscita la nuova build 1060. Hai provato se hanno risolto il problema?

 
ingvar_e:

Ciao di nuovo.

È uscita la nuova build 1060. Hai provato se hanno risolto il problema?

Sì, ora funziona bene (ho provato la build 1062).
 

OK, ora ho testato il 1060 e funziona bene.

Bene, semplifica i miei test. Sbarazzarsi dei 32 bit