Je ne sais pas vraiment ce que vous voulez dire avec cette présélection. À mon avis, vous voulez obtenir un ensemble de fonctions qui calculeront le profit et marqueront les points d'entrée/stop sur le graphique en même temps ? Et le moteur de décision sera différent pour chacun d'eux ?
Et quelques conseils :
extern int BeginYear=2002
mieux vaut être remplacé par
extern string BeginDate="2002.01.01 18:00"
- il est possible de travailler immédiatement avec une construction du type
Time[i] > StrToTime(BeginDate)
Oui et probablement des choses comme
double myOrderOpenPrice=0.0; double myOrderLots=0.0;
serait également plus pratique à stocker en tant que
#define LOTS 0; #define OPEN_PRICE 1; double MyOrder[2] = {0.0, 0.0}; ..................... MyOrder[OPEN_PRICE] = Open[i]; .....................
mais ce ne sont que des petites choses...
?
#define LOTS 0;
Il s'agit de la variable d'entrée pour le testeur.
D'où cela vient-il ?
#define OPEN_PRICE 1;
Avez-vous remarqué que toutes ces variables (qui pourraient être mieux définies par des fonctions)
double myOrderOpenPrice=0.0; double myOrderLots=0.0;
Sont des jumeaux de la mql-4 intégrée. J'ai écrit que l'objectif est que notre testeur et le testeur embarqué comprennent l'EA
avec un minimum de retouches.
Le moteur de décision est le code EA. Et il sera facilement intégré dans cette EA. Le moteur du testeur est constitué de fonctions que je suggère à
de "remplacer", c'est-à-dire que nous prenons la fonction standard intégrée, par exemple OrderSend(), et l'utilisons pour écrire une fonction similaire complète - myOrderSend() . Et ainsi de suite.
Je vais écrire cette fonction ce soir pour la rendre plus claire.
Vous devez être plus minutieux, plus minutieux... :)
Ceci est apparu il n'y a pas longtemps. Lors du transfert de texte depuis MQL, les lettres russes apparaissent de cette manière. La même chose que FronPage fait avec les lettres russes.
et je posterai le lien.
Vous ne pouvez pas effacer les déchets ?
C'est impossible à regarder.
Il doit s'agir d'un problème de forum, d'hébergement ou de MT lors de la copie de scripts avec du texte russe.
J'ai passé quelques semaines sur de tels tests. À première vue, cela semble simple. Vous obtenez un ensemble de fonctions standard et c'est parti.
Mais cet ensemble n'est rien d'autre qu'une graine : ouverture/fermeture, calcul des profits/pertes, dessin de flèches/tiges.
Le principal et le plus important est l'algorithme d'ouverture/fermeture, qui, disons-le, a déjà été décrit dans certains Expert Advisor. Vous ne pouvez pas glisser et déposer cet algorithme
dans son intégralité. Vous ne pouvez le faire qu'en partie. Et ensuite le suivi "sans erreur" du code résultant... De plus, toutes sortes de rebondissements sont associés à ce processus...
toutes sortes de bricolages... En bref, nous finissons par écrire un programme distinct sur le même sujet en partant de zéro pour la deuxième fois. Après tout ça, en une seconde, vous obtenez
soit un résultat insatisfaisant, soit les flèches sont au mauvais endroit, soit elles se referment aux mauvais endroits. Ensuite, vous revenez au texte du programme et réessayez...
Votre cerveau fonctionne au lieu d'un débogueur, vous vous transformez en moniteur pendant un moment... Finalement, au troisième jour, le test fonctionne
semble bien, mais vous êtes convaincu que la stratégie n'est "pas bonne". Et à ce stade, c'est à peu près tout ! Parce que tester la stratégie suivante de cette façon
il n'y a aucune envie de tester la prochaine stratégie. Pourquoi ai-je écrit tout cela ? L'idée est séduisante. Et en principe, cela fonctionne. Mais, croyez-moi, ce n'est pas quelque chose
ça ne va pas marcher. Si nous parlons d'un modèle, il doit s'agir d'un modèle très fondamental, c'est-à-dire d'une conception très décente et bien pensée. En général,
le programme n'est pas le plus facile. Et si quelqu'un après avoir lu cet opus ne cassera pas une lance dans le cadre du décrit, c'est à dire utiliser ce mon...
Si quelqu'un utilise ma petite, mais néanmoins pratique, expérience et avance sans perdre de temps, quelque chose peut fonctionner. Alors tous ceux qui souffrent
(moi y compris) se cotiseront pour construire un monument à l'auteur. :)
pour utiliser des conseillers experts natifs avec quelques modifications cosmétiques. La première "victime" est MACD_sample.mq4 .
C'est impossible à regarder.
Il doit s'agir d'un problème de forum, d'hébergement ou de MT lors de la copie de scripts avec du texte russe.
"Poubelle" a été supprimé. Les programmeurs savent probablement combien il est ennuyeux d'écrire (des commentaires) :).
Quelqu'un sait-il - j'ai correctement défini ces constantes sur la base de la norme ?
int myOP_BUY=0; int myOP_SELL=1; int myOP_BUYLIMIT=2; int myOP_BUYSTOP=3; int myOP_SELLLIMIT=4; int myOP_SELLSTOP=5;
Signification des valeurs spécifiques.
int myOP_BUY=OP_BUY; int myOP_SELL=OP_SELL; int myOP_BUYLIMIT=OP_BUYLIMIT; int myOP_BUYSTOP=OP_BUYSTOP; int myOP_SELLLIMIT=OP_SELLLIMIT; int myOP_SELLSTOP=OP_SELLSTOP;
Cependant, je ne connais pas la réaction du compilateur à l'avance, laissera-t-il passer les constantes commerciales dans le corps de l'indicateur ou non ?
Il est fort probable que ce soit le cas.
![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Vous acceptez la politique du site Web et les conditions d'utilisation
Le modèle est écrit, il est nécessaire d'implémenter les fonctions de trading en écrivant vos propres fonctions.
Qui est bon dans ce domaine - rejoignez-nous. Fonctions de négociation par la manipulation de tableaux. Nous avons également besoin d'un expert en dessin d'objets sur le graphique - utilisez des flèches/dessins pour représenter les niveaux d'ouverture, de stop et de prise de bénéfices.
Nous avons également besoin d'organiser la sortie de l'historique des commandes et des séries numériques dans un fichier pour ouvrir des graphiques dans Excel. En général, tout est très sérieux :)
J'ai pensé à tout en principe, mais je ne suis pas un universaliste.
Je peux suggérer des idées, si quelqu'un le souhaite. En outre, il est possible que la variante créée par soi-même, dans certains cas d'optimisation par les performances, soit capable de surpasser la variante construite.