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
Print e Alert non sono asincroni?
Volevo rendere queste funzioni asincrone. Provato un'implementazione attraverso ChartEvent - funziona. Ma è molto lento. Avevo tirato fuori questo.
Ha rinunciato a una funzione così costosa in luoghi critici.
A proposito di Alert.
Finora possiamo dire con certezza che Alert in luoghi critici non è possibile. L'asincronia è necessaria.
Riprodotto i freni di SymbolInfoTick. E nessun test di stress. La necessità pratica ti fa scrivere così.
Seguite queste istruzioni per un replay veloce.
Forum sul trading, sistemi di trading automatico e test di strategie di trading
L'OrderSend sincrono riporta un'esecuzione riuscita più velocemente del ping al server commerciale
fxsaber, 2020.09.30 20:36
Su una macchina veloce il risultato con 30 caratteri in Market Watch.
Spero di non essere l'unico che si sta riproducendo. Naturalmente, il ritardo non è così grande come mostrato in precedenza. Ma qui sarà possibile andare a fondo delle cause molto più rapidamente.
ZZY TimeCurrentMsc non viene inserito in MQL5 per qualche motivo, nonostante le ripetute richieste.
Ha rinunciato a una funzione così costosa in luoghi critici.
Questo è uno svantaggio significativo. Perché il modello di eventi MQL è incompleto - non c'è un evento zero, cioè l'evento che viene chiamato quando non ci sono altri eventi nella coda. Può essere emulato attraverso un evento personalizzato. Ma con questo inconveniente in mente, il modello basato sugli eventi non ha senso per coloro che sono interessati alla velocità
EventChartCustom è costoso.
E senzaChartFirst()?
E senza ChartFirst()?
È più costoso inviare alla cartella di qualcun altro che alla propria.
Questo è un difetto significativo. Perché il modello di eventi MQL è incompleto - non c'è un evento nullo, cioè un evento che viene chiamato quando non ci sono altri eventi nella coda. Può essere emulato attraverso un evento personalizzato. Ma con questo inconveniente in mente, il modello basato sugli eventi non ha senso per coloro che sono interessati alla velocità
OnTimer permette di effettuare chiamate in background con una frequenza fino a 16 ms.
Corretto, cioè perdiamo almeno16ms a zero (possiamo tornare al più presto).E non potremmo perderne nessuno se ci fosse un evento nullo gratuito o eventi personalizzati gratuiti. E ora il modello di evento nel caso qui sotto funziona in modo limitato:
Forum sul trading, sistemi di trading automatico e test di strategie di trading
MT5 e la velocità in azione
fxsaber, 2020.10.06 01:27
Sei completamente fuori dal giro. Diciamo che avete bisogno di aprire due posizioni in OnTick. Il primo OrderSend è di pochi millisecondi. Dopo di che bisogna fare un'istantanea. E poi dovrebbe essere chiamato il secondo OrderSend.
Solo OnTick può essere eseguito per centinaia di millisecondi. E voi suggerite di scattare qualche OnTimer.
A proposito di Alert.
Per ora, si può dire che Alert non può essere usato in luoghi critici. L'asincronia è necessaria.
Allarme con una stampa, si può provare a sostituirla con una scrittura veloce da qualche parte.
Mi viene in mente sql nativo in memoria
Non stavo suggerendo un'istantanea, stavo rispondendo a una domanda diretta sul timer di millisecondi.
Uso spesso il fatto che il Tester ha esattamente un timer di millisecondi, non di secondi. Prova.
Risultato.
Ci sono esattamente 29 ms tra l'apertura e la chiusura della posizione.