Credo che un esempio come questo sia illustrativo.
Se non si fa Sleep, spesso si ottiene una situazione in cui la storia non ha avuto il tempo di aggiornarsi dopo OrderClose e OrderCommission restituisce un valore come se OrderClose non fosse stato fatto.
Si noti che questo è uno script e non ci può essere alcun Event-Over. L'unica via d'uscita è uno stupido Sonno.
Se riscrivete questo script con SB, non cambierà nulla.
// 13.11.2016: // Add: Полная синхронизация OrderSend, OrderModify, OrderClose, OrderDelete с торговым окружением (реал-тайм и история) - как в MT4. // Максимальное время синхронизации можно задать через MT4ORDERS::OrderSend_MaxPause в мкс. Среднее время синхронизации в MT5 ~1 мс.
La pratica dimostra che Sleep(1) è sufficiente nella grande maggioranza dei casi.
In generale, è abbastanza strano ricevere una risposta da OrderSend su un ambiente di trading cambiato, quando questo stesso ambiente cambiato non può ancora essere letto.
Consenti l'uso dei cookie per accedere al sito MQL5.com.
Abilita le impostazioni necessarie nel browser, altrimenti non sarà possibile accedere.
Hai effettuato l'accesso. L'autenticazione a due fattori è stata disattivata. Configurala di nuovo e scansiona un nuovo codice QR, oppure continua con l'autenticazione a due fattori disattivata.
Credo che un esempio come questo sia illustrativo.
Se non si fa Sleep, spesso si ottiene una situazione in cui la storia non ha avuto il tempo di aggiornarsi dopo OrderClose e OrderCommission restituisce un valore come se OrderClose non fosse stato fatto.
Si noti che questo è uno script e non ci può essere alcun Event-Over. L'unica via d'uscita è uno stupido Sonno.
Se riscrivete questo script con SB, non cambierà nulla.
Non confondere MT4 con MT5
Questo e MT5
Questo e MT5
Non esiste una cosa del genere in MT5.
Funzionano in modo completamente diverso.
Non esiste una cosa del genere in MT5.
Funzionano in modo completamente diverso.
Forum sul trading, sistemi di trading automatico e test di strategia
Biblioteche: MT4Orders
fxsaber, 2016.11.14 13:33
// Add: Полная синхронизация OrderSend, OrderModify, OrderClose, OrderDelete с торговым окружением (реал-тайм и история) - как в MT4.
// Максимальное время синхронизации можно задать через MT4ORDERS::OrderSend_MaxPause в мкс. Среднее время синхронизации в MT5 ~1 мс.
Sulla base di quanto sopra, Sleep(1) deve essere impostato dopo ogni trade?
No, il tempo di sincronizzazione è fluttuante. Vedere
La pratica dimostra che Sleep(1) è sufficiente nella grande maggioranza dei casi.
In generale, è abbastanza strano ricevere una risposta da OrderSend su un ambiente di trading cambiato, quando questo stesso ambiente cambiato non può ancora essere letto.
La pratica dimostra che Sleep(1) è sufficiente nella grande maggioranza dei casi.
A volte anche Sleep(0) è sufficiente. Ma ci deve essere una soluzione funzionante per tutti i casi e per un tempo di attesa minimo.
Perché gli sviluppatori dovrebbero risolvere il bug di "Mr. Balloon"?
e inoltre, c'è OrderSendAsync().