Questions des débutants MQL5 MT5 MetaTrader 5 - page 1076
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Comment lire un grand fichier en une seule ligne ?
FileReadString()
Lors de la lecture d'un fichier binaire, la longueur de la chaîne à lire doit être spécifiée. Lors de la lecture d'un fichier txt, la longueur de la chaîne n'est pas requise, et la chaîne sera lue de la position actuelle jusqu'au caractère de saut de ligne "\r\n". Lors de la lecture d'un fichier csv, la longueur de la chaîne n'est pas requise, la chaîne sera lue à partir de la position actuelle jusqu'au délimiteur le plus proche ou jusqu'au caractère de fin de la chaîne de texte.
Ce n'est pas ce que je veux dire.
"Et avec un NOT logique à résoudre - inverser les bits, mais je n'ai pas de terminal - je ne me souviens pas comment faire un NOT par bit dans MQL, et je ne veux pas lire l'aide en ligne".
Je veux dire, soit vous me donnez une preuve, soit vous ne brouillez pas les pistes. ))))
"Tout le monde peut faire une erreur. Seuls les forts peuvent admettre une erreur !". Si personne ne l'a encore exprimé, c'est ma sagesse ;))). Si quelqu'un l'a déjà dit - j'ai répété la sagesse d'un homme sage ))))
Je ne comprends toujours pas vos affirmations ? Vous suggérez que je dois vous prouver quelque chose ? - Pourquoi ? ))))
Ici, j'ai reproduit via NOT et vérifié toutes les variantes discutées :
La variante NOT fonctionne avec n'importe quel TF, mais se remplit en fonction de (~TF_ en dessous duquel on affiche & TF_un plus ancien que le TF requis)-1 ;
Bonjour à tous ! Une dernière question...
Il y a un programme MQL5, il a un réglage (beaucoup) de "paramètres d'entrée". Le programme effectue des calculs et crée/supprime et gère des objets graphiques selon les besoins.
Après la modification des paramètres d'entrée à partir de la fenêtre de configuration, l'événementInit est généré, ce qui entraîne l'initialisation du programme et les objets "recalculer" et "redessiner", ce qui est, en principe, ce dont on a besoin, maisl'événementInitest également généré lorsque la période du graphique est modifiée (et autre), ce qui fait que le processus se répète à chaque fois, même lorsque ce n'est pas nécessaire.
Question :Comment puis-je exclure l'initialisation du programme lors de l'événementInit siles paramètres d'entrée ne sont pas modifiés mais laissent l'initialisation au démarrage du programme (terminal) ?
Variante possible : mémoriser les valeurs définies et les comparer lorsque l'événement Init se produitet, si elles sont différentes, permettre l'initialisation, mais il y a beaucoup de paramètres d'entrée...
Bonjour à tous ! Une dernière question...
Il y a un programme MQL5, il a un réglage (beaucoup) de "paramètres d'entrée". Le programme effectue des calculs et crée/supprime et gère des objets graphiques selon les besoins.
Après la modification des paramètres d'entrée à partir de la fenêtre de configuration, l'événementInit est généré, ce qui entraîne l'initialisation du programme et les objets "recalculer" et "redessiner", ce qui est, en principe, ce dont on a besoin, mais l'événementInit est également généré lorsque la période du graphique est modifiée (et autre), ce qui fait que le processus se répète à chaque fois, même lorsque ce n'est pas nécessaire.
Question :Comment puis-je exclure l'initialisation du programme lors de l'événementInit si les paramètres d'entrée ne sont pas modifiés mais laisser l'initialisation au démarrage du programme (terminal) ?
Variante possible : mémoriser les valeurs définies et les comparer lorsque l'événement Init se produitet, si elles sont différentes, permettre l'initialisation, mais il y a beaucoup de paramètres d'entrée...
Voici quelques conseils pour un autre problème similaire
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie
Fonctionne dans l'EA, mais pas bien dans l'indicateur, musique quand l'indicateur démarre
Ihor Herasko, 2019.06.17 14:12
Oui.
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie
Cela fonctionne dans Expert Advisor, mais ce n'est pas correct dans l'indicateur, la musique au démarrage de l'indicateur.
Taras Slobodyanik, 2019.06.17 16:25
5. Vous pouvez également laisser un objet sur la carte et vérifier son état de présence au démarrage.Voici quelques conseils pour un autre problème similaire
Merci pour la réponse, il semble que dans notre cas nous devrons suivre l'état de quelques dizaines de changements de correspondances en le décrivant par un "blanc" sur le graphe pour suivre leurs changements, ou supporter une initialisation inutile tant qu'il n'y a pas tant d'objets...
Mais la question que vous avez posée était.
Bonjour à tous ! Une dernière question...
Il y a un programme MQL5, il a des paramètres (beaucoup) "Paramètres d'entrée". Le programme effectue des calculs et crée/supprime et gère des objets graphiques selon les besoins.
Après la modification des paramètres d'entrée à partir de la fenêtre de configuration, l'événementInit est généré, ce qui entraîne l'initialisation du programme et les objets "recalculer" et "redessiner", ce qui est, en principe, ce dont on a besoin, mais l'événementInit est également généré lorsque la période du graphique (et autre)est modifiée , ce qui fait que le processus se répète à chaque fois, même lorsque ce n'est pas nécessaire.
Question :Comment puis-je exclure l'initialisation du programme lors de l'événementInitsi les paramètres d'entrée ne sont pas modifiés mais laissent l'initialisation au démarrage du programme (terminal) ?
Variante possible : mémoriser les valeurs définies et les comparer lorsque l'événement Init se produitet, si elles sont différentes, permettre l'initialisation, mais il y a beaucoup de paramètres d'entrée...
Et dans votre situation, l'une de ces astuces permettra d'éviter ces redessinages inutiles d'objets. Et si ces objets sont supprimés dans OnDeinit(), vous devez interdire la suppression à cet endroit également lors du changement de graphique.
Il s'agit d'un forum pour le trading, les systèmes de trading automatisés et les tests de stratégies.
Comment supprimer la variable globale du terminal à la clôture du graphique ?
Alexey Viktorov, 2019.06.29 08:40
Prêtez attention à ce tableau
REASON_PROGRAMME
0
L'expert a cessé de fonctionner en appelant ExpertRemove()
REASON_REMOVE
1
Programme retiré du tableau
RAISON_RECOMPILATION
2
Programme recompilé
RAISON_CHARTCHANGE
3
Le symbole ou la période du graphique a été modifié
RAISON_CHARTCLOSE
4
La carte est fermée
PARAMÈTRES_DE_RAISON
5
Les paramètres d'entrée ont été modifiés par l'utilisateur
REASON_ACCOUNT
6
Un autre compte a été activé ou reconnecté au serveur commercial parce que les paramètres du compte ont été modifiés.
MOTIF_TEMPLATE
7
Un autre modèle de graphique a été appliqué
RAISON_INITFAITE
8
Le gestionnaire OnInit() a renvoyé une valeur non nulle.
REASON_CLOSE
9
Le terminal était fermé
et sur cette ligne de votre code
Mais si je me souviens bien du début de votre problème, il est préférable de poser la condition comme ceci
Mais dans votre question, c'était
Dans votre situation, l'une de ces astuces permettra d'éviter ces redessinages inutiles d'objets. Et si ces objets sont supprimés dans OnDeinit(), alors vous devez interdire la suppression à cet endroit également lors du changement de graphique.
Je n'ai pas trouvé d 'exemple d'EA dans Codebase où une condition de clôture peut être définie, pas seulement le SL/TP standard. Quelqu'un peut-il me donner un indice ?
Quelle est la différence entre une condition d'ouverture et une condition de fermeture ?
Je n'ai pas trouvé dans Codebase un exemple d'EA où l'on peut écrire la condition de fermeture d'une position, et pas seulement le SL/TP standard. Quelqu'un peut-il me le dire ?
Vladimir Karputov avait de telles conditions dans ses codes, mais vous devez apprendre à lire son code vous-même).