Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 1076
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
Come si legge un file grande in una riga?
FileReadString()
Quando si legge da un file bin, si deve specificare la lunghezza di una stringa da leggere. Quando si legge da un file txt la lunghezza della stringa non è richiesta, e la stringa sarà letta dalla posizione corrente al carattere di avanzamento di riga "\r\n". Quando si legge da un file csv, anche la lunghezza della stringa non è richiesta, la stringa sarà letta dalla posizione corrente fino al delimitatore più vicino o fino al carattere finale della stringa di testo.
Non è quello che voglio dire.
"E con un NOT logico da risolvere - invertire i bit, ma non ho un terminale - non riesco a ricordare come fare un NOT bitwise in MQL, e non voglio leggere l'aiuto online".
Voglio dire o mi dai una prova o non confondere le acque ))))
"Chiunque può commettere un errore. Solo i forti possono ammettere un errore!". Se nessuno l'ha ancora espresso, questa è la mia saggezza ))). Se qualcuno l'ha già detto - ho ripetuto la saggezza di un uomo saggio ))))
Continuo a non capire le sue affermazioni? Sta suggerendo che dovrei provarle qualcosa? - Perché? ))))
Qui ho riprodotto via NOT e controllato tutte le varianti discusse:
La variante NOT funziona con qualsiasi TF, ma si riempie secondo (~TF_ al di sotto del quale visualizziamo & TF_uno più vecchio del TF richiesto)-1;
Buona giornata a tutti! Un'altra domanda...
C'è un programma MQL5, ha un'impostazione (molto) di "parametri di ingresso". Il programma esegue calcoli e crea/cancella e gestisce oggetti grafici secondo necessità.
Dopo il cambiamento dei parametri di input dalla finestra di setup viene generato l'eventoInit, che porta all'inizializzazione del programma e agli oggetti "ricalcola" e "ridisegna", che è, in linea di principio, ciò che è necessario, mal'eventoInitviene generato anche quando viene cambiato il periodo del grafico (e altro), come risultato il processo si ripete ogni volta, anche quando non è necessario.
Domanda:Come posso escludere l'inizializzazione del programma all'eventoInit sei parametri d'ingresso non sono cambiati ma lasciare l'inizializzazione all'inizio del programma (terminale)?
Possibile variante: ricordare i valori impostati e confrontarli quando si verifica l'evento Init e se sono diversi permettere l'inizializzazione, ma ci sono molti parametri di input...
Buona giornata a tutti! Un'altra domanda...
C'è un programma MQL5, ha un'impostazione (molto) di "parametri di ingresso". Il programma esegue calcoli e crea/cancella e gestisce oggetti grafici secondo necessità.
Dopo il cambiamento dei parametri di input dalla finestra di setup viene generato l'eventoInit, che porta all'inizializzazione del programma e agli oggetti "ricalcola" e "ridisegna", che è, in linea di principio, ciò che è necessario, ma l'eventoInit viene generato anche quando viene cambiato il periodo del grafico (e altro), come risultato il processo si ripete ogni volta, anche quando non è necessario.
Domanda:Come posso escludere l'inizializzazione del programma all'eventoInit se i parametri d'ingresso non sono cambiati ma lasciare l'inizializzazione all'inizio del programma (terminale)?
Possibile variante: ricordare i valori impostati e confrontarli quando si verifica l'evento Init e se sono diversi permettere l'inizializzazione, ma ci sono molti parametri di input...
Ecco alcuni consigli per un altro problema simile
Forum sul trading, sistemi di trading automatico e test di strategia
Funziona nell'EA, ma non nell'indicatore, musica all'avvio dell'indicatore
Ihor Herasko, 2019.06.17 14:12
Sì.
Forum sul trading, sistemi di trading automatico e test di strategia
Funziona in Expert Advisor, ma non è corretto nell'indicatore, musica all'avvio dell'indicatore
Taras Slobodyanik, 2019.06.17 16:25
5. Si può anche lasciare un oggetto sul grafico e controllare il suo stato di presenza quando si inizia.Ecco alcuni consigli per un altro problema simile
Grazie per la risposta, sembra che nel nostro caso dovremo tenere traccia dello stato di un paio di dozzine di cambi di corrispondenze descrivendolo attraverso un "vuoto" sul grafico per tenere traccia dei loro cambiamenti, o sopportare un'inizializzazione inutile finché non ci sono troppi oggetti...
Ma la domanda che hai fatto era.
Buona giornata a tutti! Un'altra domanda...
C'è un programma MQL5, ha impostazioni (molto) "Parametri di ingresso". Il programma esegue calcoli e crea/cancella e gestisce oggetti grafici secondo necessità.
Dopo il cambiamento dei parametri di input dalla finestra di setup viene generato l'eventoInit, che porta all'inizializzazione del programma e agli oggetti "ricalcola" e "ridisegna", che è, in linea di principio, ciò che è necessario, ma l'eventoInit viene generato anche quando viene cambiato il periodo del grafico (e altri), come risultato il processo si ripete ogni volta, anche quando non è necessario.
Domanda:Come posso escludere l'inizializzazione del programma all'eventoInit se i parametri di input non sono cambiati ma lasciare l'inizializzazione all'inizio del programma (terminale)?
Possibile variante: ricordare i valori impostati e confrontarli quando si verifica l'evento Init e se sono diversi permettere l'inizializzazione, ma ci sono molti parametri di input...
E nella vostra situazione, uno di questi consigli eviterà questi inutili ridisegni degli oggetti. E se questi oggetti sono cancellati in OnDeinit(), dovreste proibire la cancellazione anche lì quando cambiate il grafico.
Questo è un forum per il trading, sistemi di trading automatico e test di strategia.
Come cancellare la variabile globale del terminale alla chiusura del grafico?
Alexey Viktorov, 2019.06.29 08:40
Fate attenzione a questa tabella
PROGRAMMA RAGIONEVOLE
0
Expert ha smesso di funzionare chiamando ExpertRemove()
RAGIONE_REMOVE
1
Programma rimosso dal grafico
MOTIVO_RICOMPILAZIONE
2
Programma ricompilato
MOTIVO_CAMBIAMENTO GRAFICO
3
Il simbolo del grafico o il periodo è stato cambiato
MOTIVO_CHARTCLOSE
4
Il grafico è chiuso
RAGIONE_PARAMETRI
5
I parametri di input sono stati cambiati dall'utente
CONTO REASON_ACCOUNT
6
Un altro conto è stato attivato o ricollegato al server commerciale perché le impostazioni del conto sono state cambiate
MOTIVO_TEMPLATE
7
Un altro modello di grafico è stato applicato
MOTIVO_INITFAILED
8
Il gestore OnInit() ha restituito un valore diverso da zero
RAGIONE_CHIUSA
9
Il terminale è stato chiuso
e su questa linea del tuo codice
Ma se ricordo bene l'inizio del tuo problema, è meglio mettere la condizione così
Ma nella tua domanda era
Nella vostra situazione, uno di questi suggerimenti eviterà questi inutili ritracciamenti di oggetti. E se questi oggetti sono cancellati in OnDeinit(), allora dovreste proibire la cancellazione anche lì quando cambiate il grafico.
Non ho trovato un esempio di EA in Codebase dove si possa impostare una condizione di chiusura, non solo SL/TP standard. Qualcuno può darmi un suggerimento?
Qual è la differenza tra condizione di apertura e di chiusura?
Non ho trovato in Codebase un esempio di EA dove si possa scrivere la condizione di chiusura di una posizione, e non solo lo SL/TP standard. Qualcuno può dirmelo?
Vladimir Karputov aveva tali condizioni nei suoi codici, ma dovete imparare a leggere il suo codice da soli)