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
Donc seule cette ligne iCustom est modifiée ? Nous devons alors examiner cet indicateur en détail.
Vous avez le mauvais sujet. Vous vous concentrez sur l'optimisation, alors que le problème vient manifestement de l'EA(transferts de paramètres, etc.). Oubliez l'optimisation pendant un moment, mettez des commentaires et des imprimantes dans l'EA, exécutez avec différents paramètres dans le visuel, contrôlez les données intermédiaires, trouvez toutes les erreurs, puis revenez à l'optimisation.
Les mêmes résultats indiquent que les paramètres optimisés n'affectent pas la formation du signal de trading, ce qui est le problème de l'EA, et non du testeur.
Si je règle les paramètres comme ceci : (iCustom(NULL, 0, "ART", MA_Period, KFK, 0, 1), Digits) ; - tous les zéros apparaissent, comme j'ai donné un exemple ci-dessus.
Si je mets iCustom(NULL, 0, "ART", 0, 1), Digits) ; - alors les valeurs calculées apparaissent,
mais ils sont tous identiques, bien que dans le testeur, lorsqu'ils sont exécutés avec différents paramètres, les résultats des transactions soient très différents.
Angela, pour que l'optimisation fonctionne, vous devez utiliser les valeurs modifiées par l'optimiseur dans l'algorithme d'une manière ou d'une autre, en particulier vous devez les transmettre à l'indicateur. Il est nécessaire de passer des paramètres à l'indicateur, si vous voulez l'optimiser. Lorsque vous appelez l'indicateur sans paramètres (c'est-à-dire le deuxième cas iCustom(NULL, 0, "ART", 0, 1)), vous omettez en fait les paramètres et il fonctionne avec ceux par défaut, qui sont enregistrés dans ART (bien sûr, ils ne sont pas optimisés). L'appel complet avec paramètres - la première option - est ce dont vous avez besoin pour l'optimisation. Le plus souvent, le problème est que vous ne passez pas les paramètres correctement. Par exemple, si leur nombre dans l'indicateur est inférieur, et que vous passez une meilleure valeur, ou vice versa, si vous ne leur donnez pas tous les paramètres. Si l'indicateur est un secret, donnez au moins la liste de ses paramètres.
Merci à tous, la raison était triviale, l'ordre dans lequel les paramètres envoyés de l'indicateur à l'EA ne correspondaient pas :
dans le conseiller expert était
extern int MA_Period=151 ; // 101 10 201
extern double KFK=0.9 ; // 0.7 0.005 1.
dans l'indicateur au contraire
extern double KFK=0.9 ; // 0.7 0.005 1.
extern int MA_Period=151 ; // 101 10 201
cela a fonctionné dans le mode de visualisation, mais pas dans le mode d'optimisation.
Félicitations. Je me souviens aussi avoir eu du mal à passer des paramètres, jusqu'à ce que je m'habitue à être scrupuleux. Maintenant je copie un morceau de code d'indicateur avec tous les externes dans Expert Advisor et j'écris iCustom, en regardant l'exemple. C'est un peu obtus, mais depuis, il n'y a plus d'erreurs.
Et encore une chose. Je me suis renseigné sur le style illustratif de komposter pour écrire iCustom. Tout est dans la paume de ma main.
Je suis en train de déboguer la deuxième version de mon TS, par rapport à la première, le nombre de transactions a augmenté et le nombre de paramètres optimisables a considérablement diminué, bien que le drawdown ait doublé.
Cependant j'ai quelques doutes, le système n'est pas très stable d'un mois à l'autre. Je ne l'ai pas encore optimisé mais le résultat avec GA sera disponible dans 48 heures. 800+ runs ne sont pas encourageants et les résultats de l'optimisation en juin sont pires que ceux des tests avec les paramètres initiaux pour la même période. J'apporte trois statistiques, pour juin, juillet et août, jusqu'à présent je n'ai débogué que Buy. Puis-je retirer un tel système pour cause d'optimisation avec des résultats stables ou dois-je commencer à en développer un nouveau tout de suite ?
Si seul le code mql est impliqué dans l'Expert Advisor, quelque chose doit être mal codé à cet endroit car les 800 exécutions ne devraient pas ralentir aux prix d'ouverture. Ou est-ce que je comprends mal quelque chose. Habituellement, les experts qui utilisent des liaisons externes, telles que des bibliothèques de réseaux neuronaux, etc. sont très lents. Bien sûr, on peut aussi supposer que mql a beaucoup de boucles imbriquées (ou des appels de certains indicateurs "voraces") - alors il peut être complètement ralenti. Par conséquent, je ne peux que répéter l'idée du besoin supposé de refactoring ;-) - Revérifiez et retransformez certains fragments de code ou l'ensemble du code.
Au moment de la rédaction de ce billet, 800 des plus de 8000 passages avaient été effectués, avec 5 heures d'optimisation, et il restait encore 2 jours. Mais je n'ai pas attendu la fin, j'ai réduit la plage d'énumération de certains paramètres, j'ai redémarré et en 8 heures, toute l'optimisation s'est déroulée.
Meilleur résultat :
Le nombre de trades rentables est supérieur au nombre de trades perdants, la moyenne des trades rentables supérieure à celle des trades perdants est un très bon signe. À mon avis, vous ne devez pas abandonner ce système, vous devez étudier son comportement sur une plus longue période. Vous pouvez aussi le mettre sur une autre croix.