Domande dai principianti MQL4 MT4 MetaTrader 4 - pagina 199

 
Artyom Trishkin:
F11
Grazie. Mi ha aiutato. Il mio collega non sta cambiando i timeframe su una coppia. Cosa fare?
 
hmil:
Grazie. Mi ha aiutato. Il mio collega non sta cambiando i timeframe su una coppia. Cosa fare?
Non ci sono miracoli. Cercate un indicatore o un EA che cambi il timeframe indietro.
 
Ciao, puoi dare qualche consiglio. sto scrivendo il mio EA. probabilmente lo sto facendo tutto il tempo, lo sto testando e guardando cosa funziona e cosa no. il problema è questo. ho finito di scrivere il codice, l'ho testato, tutto funziona come dovrebbe, poi qualche tempo dopo, inizio a testarlo di nuovo, inizia a fare glitch (nessuna apertura di posizione o non esegue alcune funzioni), perché è questo?
 
OLEG BEZBORODOV:
Ciao, puoi dare qualche consiglio. sto scrivendo il mio EA. probabilmente lo sto facendo tutto il tempo, lo sto testando e guardando cosa funziona e cosa no. il problema è questo. ho finito di scrivere il codice, l'ho testato, tutto funziona come dovrebbe, poi qualche tempo dopo, inizio a testarlo di nuovo, inizia a fare glitch (nessuna apertura di posizione o non esegue alcune funzioni), perché è questo?

Avete mai inviato informazioni di debug al diario? No? Non si dovrebbe. Avresti già visto il motivo.

 
Artyom Trishkin:

Emette qualche informazione di debug nel log? No? Non avresti dovuto. Ormai dovresti averne capito la causa da solo.

Non so ancora come visualizzare queste informazioni, dove posso trovare come farlo?

 
OLEG BEZBORODOV:

Non so ancora come stampare queste informazioni, dove posso vedere come fare?

Stampa()

Документация по MQL5: Общие функции / Print
Документация по MQL5: Общие функции / Print
  • www.mql5.com
Данные типа double выводятся с точностью до 16 десятичных цифр после точки, при этом данные могут выводиться либо в традиционном либо в научном формате – в зависимости от того, как запись будет наиболее компактна. Данные типа float выводятся с 5 десятичными цифрами после точки. Для вывода вещественных чисел с другой точностью либо в явно...
 
Artyom Trishkin:

Stampa()

Conosco questa funzione, cosa dovrei scrivere lì?)

 
OLEG BEZBORODOV:

Conosco questa funzione, cosa dovrei scrivere lì?)

Il problema è che ho finito di scrivere il codice e l'ho testato, funziona tutto e poi inizia a fare il glitch (dopo un po' di tempo, inizio a testarlo di nuovo e poi fallisce). Ho già copiato il codice, l'ho testato e funziona come dovrei. Qualche tempo dopo, inizio a testarlo di nuovo e inizia a funzionare in modo errato (nessuna apertura di posizione o nessuna esecuzione di funzione), perché?

Beh, ovviamente, per capire il motivo per cui qualcosa non funziona è necessario controllare le condizioni di questo "qualcosa" prima di eseguirlo.

Nel debugger ci si può muovere scrupolosamente tra le linee di codice controllando i valori di tutte le variabili nella speranza che in qualche momento appaia la ragione della mancata esecuzione.

Oppure potete, prima di chiamare una funzione che, secondo voi, non viene eseguita in qualche oscuro momento in cui dovrebbe esserlo, scrivere i valori di tutte le variabili che causano la chiamata della funzione. E aspetta in silenzio che queste voci appaiano nel diario. Usando questi record possiamo capire perché la funzione non è stata chiamata. Allo stesso modo quando si aprono le posizioni - prima assicuratevi che il terminale scriva gli errori, e se non ci sono errori, allora cercate gli errori logici nel programma. Come - vedi sopra.

 
Artyom Trishkin:

Ovviamente, per capire il motivo per cui qualcosa non viene eseguito, bisogna controllare le condizioni di esecuzione di questo "qualcosa" prima di eseguire questo "qualcosa".

Si può passare scrupolosamente attraverso le linee di codice nel debugger, controllando i valori di tutte le variabili nella speranza che ad un certo punto appaia una causa di non esecuzione.

E prima di chiamare una funzione, che in qualche oscuro momento secondo voi non viene eseguita quando dovrebbe, potete scrivere nel log tutti i valori di tutte le variabili che causano la chiamata della funzione. E aspetta in silenzio che queste voci appaiano nel diario. Usando questi record possiamo capire perché la funzione non è stata chiamata. Allo stesso modo quando si aprono le posizioni - prima assicuratevi che il terminale scriva gli errori, e se non ci sono errori, allora cercate gli errori logici nel programma. Come - vedi sopra.

Grazie per l'idea)))

 
come posso ottenere una lettera dal mio broker?
Motivazione: