Caratteristiche del linguaggio mql5, sottigliezze e tecniche - pagina 101
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
Risultato
Sì, non ho tenuto conto del funzionamento interno di Sleep, che sul mio computer richiede circa 4ms.
Una buona alternativa a Sleep (chi si preoccupa della precisione :)) è
Non posso garantire la precisione di 0,995. L'ho preso per il mio computer. Può essere adatto a tutti.
Onestamente, non so nemmeno cosa significa e dove si può incontrare in MQL5.
Ciò significa che i picchi sono possibili in qualsiasi situazione, anche nelle funzioni sincrone. Dovete solo esserne consapevoli e non farci caso, perché non c'è niente che possiate fare.
https://en.wikipedia.org/wiki/InterruptOltre ai file e alle variabili globali, c'è un altro modo per trasferire informazioni tra i programmi
Forum sul trading, sistemi di trading automatico e test di strategia
Biblioteche: TradeTransactions
fxsaber, 2018.09.20 16:23
Oltre ai file e alle variabili globali, c'è un altro modo di trasferire informazioni tra i programmi
Stiamo parlando di programmi all'interno di un singolo terminale in esecuzione, vero?
Stiamo parlando di programmi all'interno di un singolo terminale in esecuzione, vero?
Sì, è per questo che si parla di variabili globali.
E tra i terminali ha iniziato a usare questo modo.Sì, è per questo che si parla di variabili globali.
E tra i terminali ha iniziato a usare questo modo.Sì, è davvero forte!
Una scoperta molto bella usando dischi RAM invece di SSD.
Sì, è per questo che si parla di variabili globali.
Ho iniziato a usare questo modo tra i terminali.Ho usato un metodo semi-hacker così facile usando user32.dll per molto tempo. Ma è impossibile passare array di tick in questo modo.
L'ho inventato molto tempo fa quando stavo padroneggiando MQL4. Certo, non è la soluzione più breve in termini di organizzazione ragionevole dello scambio, ma è veloce e funziona bene (forse più veloce di tutte le soluzioni esistenti), ecco perché non mi sono più scervellato.
Inoltre, questo metodo non richiede alcuna azione aggiuntiva.
Il punto è che per tutto Windows è una variabile comune di tipo stringa - nome della finestra principale di Windows. Tutti possono cambiarlo e tutti possono vederlo.
Ho usato un metodo semi-hacker così facile per molto tempo, usando user32.dll. Ma non si possono trasferire gli array di tick in questo modo.
Se tramite dll, c'è una soluzione universale per tutti i tipi di dati.
Ma è veloce (probabilmente più veloce di tutte le soluzioni esistenti)
Beh, stai andando troppo lontano ) Prima di tutto, passa attraverso la coda dei messaggi. In secondo luogo, devi fare alcune conversioni aggiuntive (avanti e indietro). Inoltre c'è una convalida in corso.
A proposito, non dovreste specificare esplicitamente la dimensione della struttura. Ecco a cosa serve la sizeof.
Se tramite dll, c'è una soluzione universale per tutti i tipi di dati.
Non sto discutendo. La tua soluzione è davvero più universale.
Ma personalmente ho solo bisogno di un ponte tra i terminali per trasferire i tick di corrente.
La mia variante è solo più facile da capire a causa della sua primitività e funziona un po' più velocemente. L'ho misurato in confronto al tuo ed è 1,5 - 2 volte più veloce. Il tempo di lettura di un tick è di 90 microsecondi contro 160 microsecondi.