Discussione sull’articolo "Come Esportare Quotazioni da МetaTrader 5 ad Applicazioni .NET Utilizzando i Servizi WCF" - pagina 3
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
1) Se avete un terminale x64, molto probabilmente dovrete ricompilare il vostro progetto C++ in x64. Per essere sicuri, dovreste farlo in questo modo: Visual Studio -> Proprietà (del progetto C++) -> Configuration Manager -> e cambiarlo in x64 tramite l'elenco a discesa o <New...>. Compilare. Fatto. Se non compila, controllare i riferimenti del progetto, esaminare gli errori del compilatore.
2) Ho avuto problemi con l'EA, non si è nemmeno inizializzato. Me ne sono accorto solo quando ho disconnesso l'EA dal grafico, quando l'errore init è fallito (strano...). L'EA è caduto in uno Sleep infinito nella fase di inizializzazione ed era tutto in queste righe (in QService.mqh):
QService::EnterCriticalSection()
{
while (GlobalVariableCheck("QService_CriticalSection") > 0)
Sleep(1);
GlobalVariableTemp("QService_CriticalSection");
}
Dopo il debug e i vani tentativi di capire questo "Sleep(1)", ho sostituito il codice con:
QService::EnterCriticalSection()
{
if(!GlobalVariableCheck("QService_CriticalSection"))
GlobalVariableTemp("QService_CriticalSection");
}
P.S.: Grazie all'autore dell'articolo! Tutto va bene!
Molto interessante... Grazie... Ma forse oggi ci sono opzioni più semplici*????
Certo che c'è: utilizzare la connessione tramite la capacità intrinseca del terminale. Si tratta di un canale PIPE.
https://www.mql5.com/ru/docs/files/fileopen
Ho appena inviato un nuovo lavoro basato su questo articolo: https: //www.mql5.com/en/job/34392.
Non funziona nel mio ambiente MT5 64 bit...
Ottimo articolo!
Grazie
Solo per conoscenza, ho scoperto cosa è successo nella mia macchina a 64 bit.
Dopo ore e ore di ricerche e debug, ho scoperto che un assembly di riferimento non veniva caricato, generando l'eccezione "System.IO.FileNotFoundException: Unable to load file or assembly 'QExport.Service, Version=1.0.5771.13857, Culture=neutral, PublicKeyToken=56996a45dd1e337b'".
Forse perché la dll non ha un file di configurazione, non lo so ancora, MT 5 non sapeva dove trovare l'assembly. Quindi cercava di trovarlo nel percorso di base (percorso in cui si trova metaeditor64.exe). Dopo aver cambiato la directory di output dei progetti di riferimento in quel percorso, ha funzionato alla perfezione.
Ciao Joe,
C'è qualche trucco speciale per farlo funzionare su x64? L'ho appena compilato per x64, ma la dll si blocca con strani errori all'avvio.
Sabe, vedi la mia risposta qui sotto.
[]'s
Salve,
Ho testato il vostro file finito, tutto sembra buono in MT5. Ma non ci sono dati nel WinClient.
Mi chiedo se esista un progetto simile con il precaricamento delle barre storiche. Vorrei aggiungere il tutto a Lightweight-Chart e utilizzare comodamente il grafico.