Questions pour les débutants en MQL5. Les professionnels ne passent pas leur chemin. - page 2
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
Le modèle "all ticks" a seulement 14 fois plus de ticks que le modèle "open price" sur H4. Soit je suis fou, soit l'un des deux... Il n'y a donc pas de modèle de "prix ouvert" ?
Jetez un coup d'œil à "Les bases du test dans MetaTrader 5" :
Prix ouverts uniquement
Dans le mode de test "Open prices only", la génération des ticks est effectuée par le même algorithme que pour le mode "1 minute OHLC". La seule différence est que la fonction OnTick() dans ce mode s'exécute uniquement sur les prix Open de la période testée.
Par exemple, un Expert Advisor est testé sur EURUSD H1 en mode "Prix ouverts seulement". Cela signifie que le nombre total de ticks (points de contrôle) sera le même que dans le mode "OHLC 1 minute", mais que le gestionnaire OnTick() n'est appelé qu'à l'ouverture de la barre d' une heure. Sur d'autres ticks ("cachés" par un Expert Advisor), les vérifications nécessaires pour un test correct ont lieu :
S'il n'y a pas de positions ouvertes ou d'ordres en attente, il n'est pas nécessaire de procéder à ces vérifications de ticks cachés, et l'augmentation de la vitesse peut être significative. Le mode "Prix d'ouverture uniquement" est idéal pour tester les stratégies qui n'effectuent des transactions qu'à l'ouverture des barres et n'utilisent pas les ordres en attente, ainsi que les ordres StopLoss, TakeProfit. Toute la précision nécessaire des tests est conservée pour la classe de ces stratégies.
Jetez un coup d'œil à cet article Basic Testing in MetaTrader 5:
Le pourquoi est clair, le comment ne l'est pas ? Comme je l'ai dit tout de suite - triste) le testeur MT5 dans mon exemple est 70 fois plus lent que le testeur MT4. Où dans mon MT4 était un jour ici sera 10 semaines ? C'est cool, j'ai décidé d'accélérer) C'est bien que j'ai commencé petit et que je n'ai pas converti toutes les bonnes choses vers MT5 pour les tester)
Pardonnez mon sarcasme, je comprends que le testeur MT5 présente de nombreux avantages par rapport à MT4, mais la vitesse l'emporte.
Peut-être devrions-nous introduire un modèle similaire aux "prix d'ouverture" de MT4 ? Qu'il soit imprécis, qu'il apparaisse en rouge et en gras avec de nombreux avertissements, mais qu'il soit plus immédiat que dans MT4. La précision de la génération des séquences de test dans MT5, par exemple, est absolument inutile pour les Expert Advisors fonctionnant sur une ouverture de barre sans TP et SL.
Le pourquoi est clair, le comment ne l'est pas ? Comme je l'ai dit tout de suite - triste) le testeur MT5 dans mon exemple est 70 fois plus lent que le testeur MT4. Où dans mon MT4 était un jour ici sera 10 semaines ? C'est cool, j'ai décidé d'accélérer) C'est bien que j'ai commencé petit et que je n'ai pas converti toutes les bonnes choses vers MT5 pour les tester)
Pardonnez mon sarcasme, je comprends que le testeur MT5 présente de nombreux avantages par rapport à MT4, mais la vitesse l'emporte.
Peut-être devrions-nous introduire un modèle similaire aux"prix d'ouverture" de MT4 ? Qu'il soit imprécis, qu'il apparaisse en rouge et en gras avec de nombreux avertissements, mais qu'il soit plus immédiat que dans MT4. La précision de la génération des séquences de test dans MT5, par exemple, est absolument inutile pour les Expert Advisors fonctionnant sur une ouverture de barre sans TP et SL.
Si vous voulez être rapide par les prix ouverts, il suffit d'écrire un filtre dans le code pour qu'il n'y ait pas de calcul sur la condition jusqu'à ce qu'une nouvelle barre apparaisse, la génération des ticks elle-même prend un temps minimum, spécifiquement l'historique de 3 ans sur n'importe quel TF (par les prix ouverts) prend 7-15 secondes.
Quel type de filtre ?) Mon Ontick() commence par une vérification d'une nouvelle barre. Mais même avec ce filtre, l'optimisation des EA comparables dans MT5 est 70 !!! fois plus lente que dans MT4, et ce n'est pas drôle ... J'ai peut-être fait une erreur dans ce morceau de code (vérifier la présence d'une nouvelle barre), veuillez consulter la page de code précédente. Ou peut-être que c'est juste moi ? Je devrais peut-être essayer de réinstaller mt5 par exemple ?
Créer une variable à chaque tick, créer un tableau dynamique à chaque tick, appeler la fonction de copie, deux contrôles.
Pourquoi de telles complications ?
Vous déclarez une variable globale stockant le nombre de barres dans la requête précédente et vérifiez si le nombre de barres a changé, c'est tout.
Si vous avez besoin d'une vérification supplémentaire, placez cette vérification à l'intérieur de la zone protégée.
Créer une variable à chaque tick, créer un tableau dynamique à chaque tick, appeler la fonction de copie, deux contrôles.
Pourquoi de telles complications ?
Déclarez globalement une variable stockant le nombre de barres de la requête précédente, et vérifiez si le nombre de barres a changé, c'est tout.
Si vous voulez vérifier si les données sont chargées, placez ce contrôle à l'intérieur de la zone protégée.
Merci. Mais pensez-vous vraiment que cela puisse changer fondamentalement la situation ?) J'ai vérifié, donc des centimes, peut-être juste dans la marge d'erreur... Il s'agit de l'énorme différence dans le volume des ticks générés par le modèle "Par les prix d'ouverture" dans MT4 2K et MT 1200K, aucun multicore et cloud n'aidera. Je ne sais même pas si ce modèle a le "droit" d'être appelé par les prix d'ouverture, c'est comme un modèle "1 tick sur 14" à en juger par le ratio. Je ne comprends pas en quoi le modèle "Opening price" de MT4 est coupable. Il y avait une demande certaine pour ce service, pourquoi ne pas le laisser sous sa forme MT4 ?
Je ne sais pas pourquoi et pour qui cette redondance dans les tests est si évidente. Devons-nous utiliser le testeur pour tirer profit de l'histoire ? Je pense que le point principal est que la précision du testeur ne peut pas être transférée à un compte réel.
Au fait, qui sait où cacher ma case à cocher préférée "Ignorer les résultats inutiles" ? Je n'ai pas pu le trouver.... Est-il tombé en désuétude lui aussi ?)
Il était vraiment en demande
... est et restera en demande.
Attendons que les fichiers d'historique, au moins les fichiers minute, soient craqués.
... utilise et continuera d'utiliser.
Attendons que les fichiers d'historique, au moins les fichiers minute, soient craqués.
J'ajouterais le même mode "par prix d'ouverture" mais avec une option pour sélectionner une sous-trame temporelle. Disons que vous avez choisi la période de test H1, cela signifie que vous pouvez sélectionner les modes de mouvement des prix sur M1, M2, M5, M10 ...... М30. Il sera alors très souple de choisir entre "vitesse et précision" (s'il ne s'agit pas de pipsers, la plupart préféreront la "vitesse").