Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 349
![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Tout est remis à zéro pendant l'initialisation, sauf les variables globales.
Et ici, nous devrions préciser que les GV sont des variables terminales, et non des variables EA.
J'ai commencé à lire et à étudier. Je sais maintenant que les Variables Globales et les Variables Globales sont des choses différentes.
Au fait, à propos de l'erreur 129, sur laquelle je vous ai si souvent interrogé. Le problème, c'est que j'ai un DC à 5 chiffres,
Mon conseiller expert est un slipage 2, c'est probablement la raison pour laquelle il n'a pas pu suivre le cours. Maintenant, je l'ai réglé sur 15 pips.
Et il convient ici de préciser que les GV sont des variables terminales, et non des variables EA.
Je veux dire que l'EA peut travailler avec eux, juste pour sauvegarder les valeurs pendant l'initialisation (entre autres choses).
Que se passe-t-il si j'éteins mon ordinateur ou si le serveur sur lequel tourne l'EA tombe en panne ?
C'est là que ça devient intéressant. Les variables globales sont stockées dans le cache et, dans certaines circonstances, sont écrites dans le fichier. Il semble qu'après un certain temps ou pendant la désinitialisation. Parfois, j'avais l'habitude de perdre gvariables.dat (Global Variables values) lors du redémarrage. Il faut en tenir compte. Ou ils n'ont tout simplement pas eu le temps de le copier sur le disque à partir du cache. Cela signifie que nous n'avons aucune garantie qu'ils sont déjà sur le disque et non dans le cache. Corrigez-moi si je me trompe.
J'ai commencé à lire et à étudier. Je sais maintenant que les variables globales et les Variables Globales sont des choses différentes.
Au fait, à propos de l'erreur 129 sur laquelle on m'a si souvent interrogé. Le truc, c'est que j'ai un DC à cinq chiffres,
Mon conseiller expert est un slipage 2, c'est probablement la raison pour laquelle il n'a pas pu suivre le cours. Je le fixerais à 15 pips.
Je ne pense pas que ce soit la raison. J'ai un 3 sur mes cinq chiffres. Tout s'ouvre normalement. Autant que je m'en souvienne, les courtiers ont convenu qu'un point est toujours un point de base, universellement accepté (le 4ème chiffre après zéro) et qu'un point fractionnaire est un point fractionnaire. Ainsi, lorsque vous saisissez 6, 7 et 8 chiffres, vous ne devez pas changer la signification de "point" à chaque fois.
C'est là que ça devient intéressant. Les variables globales sont stockées dans un cache et, dans certaines circonstances, sont écrites dans un fichier. C'est un peu comme après une certaine période de temps. Il est arrivé qu'en fonctionnement réel, le fichier gvariables.dat (fichier dans lequel les valeurs des variables globales sont stockées) soit tout simplement perdu lors d'un redémarrage brutal de l'ordinateur. Il faut en tenir compte. Ou ils n'ont tout simplement pas eu le temps de le copier sur le disque depuis le cache. Cela signifie que nous n'avons aucune garantie qu'ils sont déjà sur le disque et non dans le cache. Corrigez-moi si je me trompe.
Vous pourriez peut-être essayer de l'enregistrer, puis éteindre l'ordinateur. Et quand vous l'allumez, essayez d'appeler Alerte pour voir s'il est là. Bien que je ne mentirai pas, je n'utilise pour l'instant que des variables statiques et des drapeaux et je ne peux rien dire avec certitude au sujet des variables globales.
Vous pouvez simplement regarder dans le menu -> Outils -> Variables globales. Il y a une liste là. Ou utilisez GlobalVariableCheck. Mon expérience montre qu'il est préférable de tout sauvegarder dans un fichier physique, cependant.
Veuillez trouver des erreurs dans mon raisonnement.
C'est le deuxième jour que je me débats avec la création de l'indicateur, à savoir l'affichage de la ligne sur la fenêtre supplémentaire qui est attachée à la fenêtre principale. A mon avis, il est nécessaire de faire des calculs sur les barres non calculées et de donner les valeurs des résultats des calculs au tampon. Cette fois, j'utilise un code plus complexe pour l'exemple (j'aime travailler avec des codes relativement énormes). Voici la "clairière de la créativité" :
.
Vous pouvez clairement voir que la valeur du tampon "dans cette compensation" est "0", c'est-à-dire que cet indicateur ne tracera la ligne qu'à partir du moment où la plateforme commerciale démarre. Et j'ai besoin de données historiques en plus des données réelles.
J'ai utilisé les informations décrites dans ce code (tiré du tutoriel MQ4) :
Je choisirai ce dont j'ai besoin et je l'obtiendrai...Ensuite, en le ramenant à une "vue de parade" en enlevant les commentaires et en divisant logiquement, j'obtiens :
Ici, je me retrouve avec des objets qui doivent être synthétisés avec le code "principal". Après avoir effectué la fusion, j'obtiens le code suivant :
Pendant la programmation, j'ai modifié de manière décorative le code "principal" et supprimé certaines valeurs du code "appendice". Après avoir exécuté le code, j'ai remarqué la ligne horizontale, qui indiquait une erreur dans mon raisonnement, car les indicateurs techniques utilisés dans l'indicateur personnalisé ne peuvent pas donner, sur une longue période de temps, les valeurs qui construisent le graphique de la fonction " y = x ".Synopsis.
Je m'appelle John (Eugène, mais à l'américaine).
J'ai 15 ans, je fais du trading depuis 5 jours et je sens un énorme progrès dans l'apprentissage des domaines du trading de devises, à savoir l'analyse des indicateurs et l'analyse graphique (en bref, t.a. :) ).
J'ai l'impression que le "trading manuel" est de moins en moins prometteur, j'ai donc décidé de passer directement au "trading automatisé".
"REPRENDRE" TOUS LES JUGEMENTS INADÉQUATS ! Je veux en savoir plus et vos commentaires m'aideront.
Bonjour !
Veuillez trouver des erreurs dans mon raisonnement.
Ici se termine le deuxième jour où je me débats avec la création de l'indicateur, à savoir l'affichage de la ligne sur une fenêtre supplémentaire attachée à la fenêtre principale. A mon avis, il faut faire des calculs sur les barres non calculées et donner les résultats des calculs au tampon. Cette fois, j'utilise un code plus complexe pour l'exemple (j'aime travailler avec des codes relativement énormes). Voici la "clairière de la créativité" :
.
Vous pouvez clairement voir que "dans cette fenêtre" la valeur de la mémoire tampon est "0", c'est-à-dire que cet indicateur ne tracera une ligne qu'à partir du moment où la plateforme de trading est lancée. Et j'ai besoin de données historiques en plus des données réelles.
J'ai utilisé les informations décrites dans ce code (tiré du tutoriel MQ4) :
Je vais isoler ce dont j'ai besoin et je vais...Ensuite, en le ramenant à une "vue de parade" en enlevant les commentaires et en divisant logiquement, j'obtiens :
Ici, je me retrouve avec des objets qui doivent être synthétisés avec le code "principal". Après avoir effectué la fusion, j'obtiens ce code :
Au cours de la programmation, j'ai modifié de manière décorative le code "principal" et supprimé certaines valeurs du code "appendice". Après avoir lancé le code, j'ai remarqué la ligne horizontale, qui indiquait une erreur dans mon raisonnement, car les indicateurs techniques utilisés dans l'indicateur personnalisé ne peuvent pas donner, pendant une longue période, les valeurs qui construisent le graphique de la fonction " y = x ".Synopsis.
Je m'appelle John (Eugène, mais à l'américaine).
J'ai 15 ans, je m'occupe de trading depuis 5 jours et je sens que je fais de grands progrès dans l'étude des domaines du trading de devises, à savoir l'analyse des indicateurs et l'analyse des graphiques (en bref, t.a. :) ).
J'ai l'impression que le "trading manuel" devient de moins en moins prometteur, j'ai donc décidé de passer directement au "trading automatisé".
"S'EN PRENDRE" À TOUS LES JUGEMENTS INADÉQUATS ! Je veux en savoir plus et vos commentaires m'aideront.
Le début est bon.
Faites attention à la variable Historique, essayez de substituer une valeur différente.
Bonjour !
Veuillez trouver des erreurs dans mon raisonnement.
Le deuxième jour de développement de l'indicateur touche à sa fin, j'ai du mal à afficher la ligne sur la fenêtre supplémentaire attachée à la fenêtre principale. A mon avis, il est nécessaire de faire des calculs sur les barres non calculées et de donner des valeurs aux résultats des calculs au tampon. Cette fois, j'utilise un code plus complexe pour l'exemple (j'aime travailler avec des codes relativement énormes). Voici la "clairière de la créativité" :
.
Vous pouvez clairement voir que "dans cette fenêtre" la valeur de la mémoire tampon est "0", c'est-à-dire que cet indicateur ne tracera une ligne qu'à partir du moment où la plateforme de trading est lancée. Et j'ai besoin de données historiques en plus des données réelles.
J'ai utilisé les informations décrites dans ce code (tiré du tutoriel MQ4) :
Je vais isoler ce dont j'ai besoin et je vais...Ensuite, en le ramenant à une "vue de parade" en enlevant les commentaires et en divisant logiquement, j'obtiens :
Ici, je me retrouve avec des objets qui doivent être synthétisés avec le code "principal". Après avoir effectué la fusion, j'obtiens ce code :
Au cours de la programmation, j'ai modifié de manière décorative le code "principal" et supprimé certaines valeurs du code "appendice". Après avoir lancé le code, j'ai remarqué la ligne horizontale, qui indiquait une erreur dans mon raisonnement, car les indicateurs techniques utilisés dans l'indicateur personnalisé ne peuvent pas donner, pendant une longue période, les valeurs qui construisent le graphique de la fonction " y = x ".Synopsis.
Je m'appelle John (Eugène, mais à l'américaine).
J'ai 15 ans, je m'occupe de trading depuis 5 jours et je sens que je fais de grands progrès dans l'étude des domaines du trading de devises, à savoir l'analyse des indicateurs et l'analyse des graphiques (en bref, t.a. :) ).
J'ai l'impression que le "trading manuel" devient de moins en moins prometteur, j'ai donc décidé de passer directement au "trading automatisé".
"S'EN PRENDRE" À TOUS LES JUGEMENTS INADÉQUATS ! Je veux en savoir plus et vos commentaires m'aideront.
Commencez à creuser du côté des boucles (for, wile, while do) pour savoir pourquoi vous en avez besoin ;)))
Si vous avez besoin de valeurs sur des données historiques - vous ne pouvez pas le faire sans énumérer ces mêmes données dans une boucle ;)
Plus haut, vous avez donné un exemple avec l'historique, qui définit le nombre de barres de l'historique, qui seront traitées par l'indicateur, et c'est ainsi que vous devez procéder.
Sur l'image, j'ai marqué d'une flèche l'endroit où la sortie doit se trouver. Je ne comprends pas quel est le problème. On entre, on se rappelle l'heure,
Ensuite, sortez lorsque le temps est plus long que l'entrée avec un décalage d'une période et que le prix est inférieur à la MA min de 3 jours.
Le code est le suivant :
Qu'en pensez-vous ?