Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 493
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
Potresti per favore consigliarmi se la funzione di chiusura di tutti gli ordini aperti dall'EA in base al simbolo è implementata correttamente?
L'architettura stessa è corretta. Gli errori sono nella mancanza di controlli e nell'uso di alcune funzioni:
L'architettura stessa è corretta. Gli errori sono nella mancanza di controlli e nell'uso di alcune funzioni:
Grazie, il problema principale era probabilmente solo usare lo stesso prezzo
Dall'aiuto di OrderSelect " Quando gli ordini sono selezionati in modo sequenziale usando il parametro SELECT_BY_POS, le informazioni sono date nell'ordine in cui sono arrivate dal server commerciale. Non è garantito l'ordinamento della lista d'ordine ottenuta".
Se pensiamo che questa frase è stata inserita nell'aiuto per niente, siamo a posto. Se pensiamo che era lì per una ragione, non dovremmo cambiare questa lista durante l'esecuzione del ciclo attraverso l'elenco degli ordini. Come saranno ordinati gli ordini dopo la cancellazione di uno di essi sul server e l'arrivo di una nuova lista attuale con un OrdersTotal più piccolo, è sconosciuto. E' più affidabile, senza cancellare, eseguire la stessa copia invariata della lista e raccogliere (in un array) tutti i numeri dei biglietti delle compravendite da cancellare. Poi dimentica quella lista e cancella le compravendite, selezionandole per biglietto.
Si vorrebbe credere, naturalmente, che l'ordine nella lista modificabile sia conservato, anche solo per questo caso di rimozione di diversi ordini dalla fine di una lista non ordinata, ma gli sviluppatori sono contrari... Ora funziona, e se esce una nuova build - "abbiamo avvertito".
Dall'aiuto di OrderSelect " Quando gli ordini sono selezionati in modo sequenziale usando il parametro SELECT_BY_POS, le informazioni sono date nell'ordine in cui sono arrivate dal server commerciale. Non è garantito l'ordinamento della lista d'ordine ottenuta".
Se pensiamo che questa frase è stata inserita nell'aiuto per niente, siamo a posto. Se pensiamo che era lì per una ragione, non dovremmo cambiare questa lista durante l'esecuzione del ciclo attraverso l'elenco degli ordini. Come saranno ordinati gli ordini dopo la cancellazione di uno di essi sul server e l'arrivo di una nuova lista attuale con un OrdersTotal più piccolo, è sconosciuto. È più affidabile, senza cancellare, eseguire la stessa copia invariata della lista e raccogliere (in un array) tutti i numeri dei biglietti delle compravendite da cancellare. Poi dimentica quella lista e cancella le compravendite, selezionandole per biglietto.
Si vorrebbe credere, naturalmente, che l'ordine nella lista modificabile sia conservato, anche solo per questo caso di rimozione di diversi ordini dalla fine di una lista non ordinata, ma gli sviluppatori sono contrari... Ora funziona, e se esce una nuova build - "abbiamo avvertito".
Tale "America" è stata aperta per circa trecento anni :)
Questo tipo di "America" è stato aperto per circa trecento anni :)
Non credo che le persone che fanno domande qui per conto dei nuovi arrivati lo abbiano già scoperto loro stessi. Ecco perché lo sto scrivendo. Non per i moderatori, ma per chi fa domande. Guarda il nome del thread.
P.S. Ho cercato la provenienza di questo interesse. Si scopre che è dal ramo https://www.mql5.com/ru/forum/215783/page8"Organizzare il ciclo dell'ordine". A quanto pare, nell'ottobre 2017, quei trecento anni non sono ancora finiti, ci sono ancora novità.
Non credo che le persone che fanno domande qui per conto dei nuovi arrivati lo abbiano già scoperto loro stessi. Ecco perché lo sto scrivendo. Non per i moderatori, ma per chi fa domande. Guarda il nome del thread.
P.S. Ho guardato da dove viene questo interesse. Si scopre che è dal ramo https://www.mql5.com/ru/forum/215783/page8"Organizzare il ciclo dell'ordine". Come si scopre, nell'ottobre 2017 quei trecento anni non sono ancora finiti, c'è ancora novità.
Sbagliato di nuovo :) Trecento anni è iniziato su mql4.com - c'è stato un tempo in cui se ne discuteva attivamente. E ci sono stati anche quei momenti che avete descritto in "Adesso funziona, e uscirà una nuova build - "abbiamo avvertito". Solo senza avvertimenti, e così più volte - dipende, non dipende dall'ordinamento...
E, sì, c'è un thread speciale per queste risposte:
Dall'aiuto di OrderSelect " Quando gli ordini sono selezionati in modo sequenziale usando il parametro SELECT_BY_POS, le informazioni sono date nell'ordine in cui sono arrivate dal server commerciale. Non è garantito l'ordinamento della lista d'ordine ottenuta".
Se pensiamo che questa frase è stata inserita nell'aiuto per niente, siamo a posto. Se pensiamo che era lì per una ragione, non dovremmo cambiare questa lista durante l'esecuzione del ciclo attraverso l'elenco degli ordini. Come saranno ordinati gli ordini dopo la cancellazione di uno di essi sul server e l'arrivo di una nuova lista attuale con un OrdersTotal più piccolo, è sconosciuto. E' più affidabile, senza cancellare, eseguire la stessa copia invariata della lista e raccogliere (in un array) tutti i numeri dei biglietti delle compravendite da cancellare. Poi dimentica quella lista e cancella le compravendite, selezionandole per biglietto.
Mi piacerebbe, naturalmente, credere che l'ordinamento nella lista modificata sia conservato almeno per questo caso di cancellazione di diversi ordini dalla fine di una lista non ordinata, ma gli sviluppatori sono contrari... Ora funziona, e se esce una nuova build, "vi abbiamo avvertito".
Come buona idea (considerando che ci possono essere diversi Expert Advisors + trader che lavorano sul conto in parallelo), non puoi assolutamente eseguire operazioni in un ciclo. L'ordine necessario viene ricevuto, l'operazione viene eseguita, l'intero OnTick() viene eseguito nuovamente (non necessariamente con l'arrivo di un nuovo tick). E così via, fino a quando tutte le operazioni necessarie vengono eseguite.
Quindi, formare un array per cancellare gli ordini è equivalente a cancellare gli ordini nel ciclo.
C'è un pulsante "Stop", come posso cambiare il suo testo in "Start" una volta premuto?
Vedi il mio esempio di esperto
Guarda il mio esempio di Expert Advisor
Grazie, proprio quello di cui avevo bisogno.
Potrebbe essere utile sapere che c'è un errore nelle posizioni mancanti--- ToFile EURUSD,H1: zero divide in 'ToFile.mq4' (62,39)
Il testo non cambia nel tester, non c'è questa opzione?