Questions des débutants MQL4 MT4 MetaTrader 4 - page 220
![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
//
Personnellement, j'ai l'idée suivante :
1. Fiya remplit le tableau des ordres perdants avec leurs valeurs de clôture ( Mass[i] = OrderCloseTime() ;). Autrement dit, le tableau ne stocke que les dates et heures de clôture des ordres perdants
2. Nous commençons à comparer l'élément à la position i et à la position i-1 (2 adjacents)
2.1 nous les comparons en convertissant les données de la cellule en jour de l'année ( TimeDayOfYear(Mass[i]) et TimeDayOfYear(Mass[i-1])
2.(Supposons que le premier jour perdant = 178, et le précédent = 176 --> pas de série, car ils ne sont pas consécutifs, par contre si le premier = 178, et le second 177 --> on a une série)
2.3 Avec la boucle for on regarde toutes les cellules du tableau et on compare ses voisins. S'il y a une série de pertes sur desélémentsvoisinsdu tableau--> on commence à compresser jusqu'à ce que 1.on n'ait pas encore atteint lenombreminimum requis de jours perdants pour la considérer comme une série. 2. (si le point 1 est rempli) AVANT que la série ne s'arrête.
2.4 L'ARRÊT DE LA SÉRIE --> mémoriser l'indice de l'élément du tableau où elle s'est terminée et mémoriser le nombre d'éléments de la série (la série peut être == OU supérieure à la valeur entrée au clavier)
3. ---- c'est ici que commence le problème de la réalisation---
3.1 Nous devrions "reculer" d'une manière ou d'une autre dans une série de jours perdus, en connaissant la date de chaque élément, traduire la date de datetime --> chaîne de caractères,
3.11 remplir la chaîne de caractères ( je ne sais pas, peut-être par StringAdd() ?), et la sortir dans le fichier LOG (pas des millions de fois, juste une)
L'algorithme de l'Expert Advisor n'est pas important, l'important c'est la fonction de l'utilisateur elle-même
Pour l'amour de Dieu, aidez-nous !))
Bonjour. Je me suis inscrit pour le signal. Mais après quelques jours, le pourcentage d'augmentation totale de quelques centaines de personnes n'était que de 58%. Les pourcentages des mois précédents ont perdu leur couleur bleue et sont devenus gris. Pourquoi cela se produit-il ? Quelle pourrait être la raison ?
Vous avez signé pour un énième diviseur de dépôt. Vous voyez la ligne verticale sur le graphique à gauche de la 76e transaction ? Cette ligne indique le moment où vous vous êtes connecté au monitoring. Avant la connexion à la surveillance, ce compte a été "retiré" de plusieurs dizaines d'autres comptes qui n'ont pas une si belle image (ils ont été vidés en toute sécurité). Le dépôt avec de beaux indicateurs est connecté au suivi et reçoit de l'argent des nouveaux arrivants qui aiment les belles images. Ne croyez donc pas les indicateurs qui ont été obtenus avant de rejoindre le suivi.
Une copie d'une instance de la classe.
Si je fais cette mission :
puis lorsque je change ensuite Cl1, Cl2 change aussi.
Donc, évidemment, l'affectation est juste une référence.
Mais j'ai besoin d'enregistrer une instance d'une classe qui stockerait toutes les propriétés qui lui ont été données au moment de l'affectation.
Comment faire ?
Une copie d'une instance de la classe.
Si je fais cette mission :
puis lorsque je change ensuite Cl1, Cl2 change aussi.
Donc, évidemment, l'affectation est juste une référence.
Mais j'ai besoin de conserver une instance d'une classe qui stocke toutes les propriétés qui lui ont été attribuées au moment de l'affectation.
Comment faire ?
Vous le faites probablement :
CClass* cl1=new CClass; CClass* cl2=cl1;
et tu as besoin de ça.
Vous avez besoin d'un constructeur de copie :
Vous avez besoin d'un constructeur de copie :
Merci !
Je vais essayer, mais le fonctionnement n'est pas clair.
S'il passe la référence de la copie à la classe copiée, quelle différence cela fait-il ?
Les deux feront-ils à nouveau référence l'un à l'autre ?
Merci !
Je vais essayer, mais le fonctionnement n'est pas clair.
S'il transmet à la copie une référence à la classe copiée, quelle différence cela fait-il ?
Se référeront-ils à nouveau l'un à l'autre ?
Non, ils ne le feront pas. Il s'agit d'un nouvel objet. Et dans le constructeur, il suffit de remplir les champs. Il n'y a rien à ce sujet dans l'aide locale (bien que je puisse me tromper), alors lisez comment tout est fait en C++ et faites des corrections pour les réalités locales. Bonne chance)
Ils ne le feront pas. Il s'agit d'un nouvel objet. Et dans le constructeur, il suffit de remplir les champs. Il n'y a rien à ce sujet dans l'aide locale (bien que je puisse me tromper), donc lisez comment c++ fait tout cela et faites des ajustements pour les réalités locales. Bonne chance)
Oui, c'est comme ça que ça marche.
Merci !
Il serait intéressant que les auteurs nous expliquent comment cela fonctionne :
{this=mOther;}
Pourquoi y a-t-il un transfert par valeur alors que l'on s'attendrait à ce qu'une référence soit transférée ?
Heureusement, une telle construction de copie est possible !
Bonjour !
Pouvez-vous me dire pourquoi, dans mon MT4, je ne peux pas définir le take et le stop loss avec ma souris à partir du point d'entrée de la position ?
Je dois peut-être ajuster quelque chose, mais je ne comprends pas ce que c'est, aidez-moi s'il vous plaît.
Bonjour !
Pouvez-vous me dire pourquoi, dans mon MT4, je ne peux pas définir le take et le stop loss avec ma souris à partir du point d'entrée de la position ?
Je dois peut-être configurer quelque chose, mais je ne comprends pas ce que c'est, aidez-moi s'il vous plaît.
Essayez de maintenir la touche "Alt" de votre clavier et de faire glisser