Errori, bug, domande - pagina 2744
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
Errore:
Grazie per il suo messaggio.
Corretto.
Domanda di ottimizzazione. Nel tester, su ogni segno di spunta ho bisogno di ottenere un segno di spunta per un ulteriore lavoro. Io lo faccio in questo modo.
È chiaro che questa variante sarà più lenta:
Ma SymbolInfoTick è anche più lento perché il suo parametro stringa non è passato per riferimento.
È possibile avere sovraccarichi regolari di SymbolInfo* in cui la stringa è passata per riferimento?
È meglio avere
In Optimizer, queste funzioni sono chiamate decine di miliardi di volte.
Stai suggerendo di aggiungere la funzione GetNextEvent?
Non proprio, preferirei chiamare questa funzione come HandleNextEvent, una firma possibile:
bool HandleNextEvent (ENUM_EVENT_TYPE);
Quando viene chiamato, simile a GetNextEvent, controlla se l'ENUM_EVENT_TYPE specificato è presente nella coda,
e se questo evento è presente, passa automaticamente il controllo al codice utente del gestore corrispondente (OnChartEvent, OnTrade, OnTradeTransaction, ... (graziea fxsaber per l'aggiunta)).
Restituisce true se c'era un evento nella coda, altrimenti restituisce false.
Possibile caso d'uso:
Domanda di ottimizzazione. Nel Tester, su ogni segno di spunta ho bisogno di ottenere un segno di spunta per un ulteriore lavoro. Io lo faccio in questo modo.
È chiaro che questa variante sarà più lenta.
Avete verificato questa affermazione nella pratica? Può sembrare il contrario.
MqlTick consiste di tipi di dati primitivi che non sono inizializzati.
Corrispondentemente, non si perde affatto tempo nella selezione perché è la stessa operazione "sub esp", solo di dimensioni diverse.
Come risultato, il collo di bottiglia può essere dalla parte della cache del processore per leggere un valore dalla memoria.
In generale, dovremmo testarlo ))
quando questo evento si verifica, trasferisce automaticamente il controllo al codice utente del gestore appropriato
Possibile caso d'uso:
Una soluzione molto bella e utile!
Avete testato questa affermazione nella pratica? Potrebbe rivelarsi il contrario.
Teorizzare qui. Non ho controllato. Ma il trasferimento sul link della stringa sembra appropriato.
Un possibile caso d'uso:
non ha alcun senso.
Secondo la firma e la vostra descrizione, il terminale dovrebbe chiamare una funzione per elaborare il prossimo evento e poi restituire il controllo al programma nel punto in cui viene chiamato l'handlenextevent?
Cosa succede se l'handlenextevent viene chiamato di nuovo durante l'elaborazione?
Cosa succede agli eventi che non passano il filtro nei parametri? vengono saltati? cambiano la coda?
Gli script non hanno affatto una coda di eventi, perché aggiungerla con le stampelle quando ci sono Expert Advisors e indicatori?
1) Lei sta suggerendo delle sciocchezze.
2) secondo la firma e la vostra descrizione, il terminale dovrebbe chiamare l'elaborazione dell'evento successivo per funzione e poi restituire il controllo al programma al punto di chiamata handlenextevent?
3) cosa succede se l'handlenextevent viene chiamato di nuovo durante l'elaborazione?
4) e cosa succede agli eventi che non rientrano nel filtro nei parametri? vengono saltati? cambiano l'ordine?
1) Il mio lavoro è quello di offrire, ma se è qualcosa di folle o no - spetta agli sviluppatori, non a te, loro sanno un po' meglio...
2) Va bene. Se mi interessa elaborare un evento specifico, e non tutti gli eventi del sistema, sarebbe bello poter elaborare solo questo tipo di evento, lasciando l'elaborazione degli altri eventi come normale.
3) Se HandleNextEvent viene chiamato di nuovo durante l'elaborazione - chiama e processa. L'unica cosa che può succedere è lo stack overflow, ma questo è un problema dell'utente e del codice, non dello sviluppatore.
4) Gli eventi che non rientrano nel filtro rimangono nella stessa sequenza e saranno chiamati quando l'utente restituisce il controllo al sistema come al solito.
Gli script non hanno affatto una coda di eventi, perché aggiungerla con le stampelle quando ci sono EAs e indicatori?
Ecco un esempio di uno script che apre e chiude le sue posizioni/ordini in modo asincrono.
1) È il mio lavoro suggerire, e se è un dilemma o no non sta a te decidere, ma agli sviluppatori, loro lo sanno un po' meglio...
Se suggerisci qualcosa che è più facile da implementare, c'è una migliore possibilità di implementazione. rimosso la tua opzione perché non dà quasi nulla.