Questions des débutants MQL4 MT4 MetaTrader 4 - page 199

 
Artyom Trishkin:
F11
Merci. Ça a aidé. Mon collègue ne change pas de période sur une paire. Que faire ?
 
hmil:
Merci. Ça a aidé. Mon collègue ne change pas d'horizon temporel sur une paire. Que faire ?
Il n'y a pas de miracles. Recherchez un indicateur ou un EA qui permute le délai de retour.
 
Bonjour, pouvez-vous me donner quelques conseils. Je suis en train d'écrire mon propre EA. Je fais probablement cela tout le temps, je le teste et je regarde ce qui fonctionne et ce qui ne fonctionne pas. Le problème est le suivant. J'ai fini d'écrire le code, je l'ai testé, tout fonctionne comme il le devrait, puis quelque temps plus tard, je recommence à le tester, il commence à avoir des problèmes (pas d'ouverture de position ou n'exécute pas certaines fonctions), pourquoi ?
 
OLEG BEZBORODOV:
Bonjour, pouvez-vous me donner quelques conseils. Je suis en train d'écrire mon propre EA. Je fais probablement cela tout le temps, je le teste et je regarde ce qui fonctionne et ce qui ne fonctionne pas. Le problème est le suivant. J'ai fini d'écrire le code, je l'ai testé, tout fonctionne comme il faut, puis quelque temps plus tard, je recommence à le tester, il commence à avoir des problèmes (pas d'ouverture de position ou n'exécute pas certaines fonctions), pourquoi ?

Avez-vous déjà envoyé des informations de débogage au journal ? Non ? Vous ne devriez pas. Vous auriez déjà vu la raison.

 
Artyom Trishkin:

Est-ce que vous affichez des informations de débogage dans le journal ? Non ? Tu n'aurais pas dû. Vous devriez avoir vu la cause vous-même maintenant.

Je ne sais pas encore comment afficher ces informations, où puis-je trouver comment le faire ?

 
OLEG BEZBORODOV:

Je ne sais pas encore comment imprimer ces informations, où puis-je voir comment le faire ?

Imprimer()

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

Imprimer()

Je connais cette fonction, que dois-je y écrire ?)

 
OLEG BEZBORODOV:

Je connais cette fonction, que dois-je y écrire ?)

Le problème est que j'ai fini d'écrire le code et de le tester, tout fonctionne, puis il commence à avoir des ratés (après un certain temps, je recommence à le tester et il échoue). J'ai déjà copié le code, je l'ai testé et il fonctionne comme il se doit. Quelques temps plus tard, je recommence à le tester et il commence à fonctionner de manière incorrecte (pas d'ouverture de position ou pas d'exécution de fonction), pourquoi ?

Bien évidemment, pour comprendre la raison pour laquelle quelque chose ne fonctionne pas, vous devez vérifier les conditions de ce "quelque chose" avant de l'exécuter.

Dans le débogueur, vous pouvez parcourir scrupuleusement les lignes de code en contrôlant les valeurs de toutes les variables dans l'espoir qu'à un moment donné, la raison de la non-exécution apparaisse.

Ou vous pouvez, avant d'appeler une fonction qui, à votre avis, n'est pas exécutée à un moment obscur où elle devrait l'être, écrire les valeurs de toutes les variables qui provoquent l'appel de la fonction. Et attendez tranquillement que ces entrées apparaissent dans le journal. Grâce à ces enregistrements, nous pouvons comprendre pourquoi la fonction n'a pas été appelée. De la même manière, lors de l'ouverture de positions - assurez-vous d'abord que le terminal y inscrit des erreurs, et s'il n'y a pas d'erreurs, cherchez alors des erreurs de logique dans le programme. Comment - voir ci-dessus.

 
Artyom Trishkin:

Évidemment, pour comprendre la raison pour laquelle quelque chose n'est pas exécuté, il faut vérifier les conditions d'exécution de ce "quelque chose" avant d'exécuter ce "quelque chose".

Vous pouvez parcourir scrupuleusement les lignes de code dans le débogueur, en vérifiant les valeurs de toutes les variables dans l'espoir qu'à un moment donné, une raison de non-exécution apparaîtra.

Et avant d'appeler une fonction, qui à un moment obscur de votre opinion n'est pas exécutée quand elle est censée l'être, vous pouvez écrire dans le journal toutes les variables qui provoquent l'appel de la fonction. Et attendez tranquillement que ces entrées apparaissent dans le journal. Grâce à ces enregistrements, nous pouvons comprendre pourquoi la fonction n'a pas été appelée. De la même manière, lors de l'ouverture de positions - assurez-vous d'abord que le terminal y inscrit des erreurs, et s'il n'y a pas d'erreurs, cherchez alors des erreurs de logique dans le programme. Comment - voir ci-dessus.

Merci pour l'idée))))

 
comment obtenir une lettre de mon courtier ?