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
Salutations !
MT5 Optimizer - est-ce que CustomMax calcule correctement ?
J'exécute l'optimiseur (optimisation génétique) dans MT5 5.00 build 722 et j'ai accidentellement remarqué que les résultats de l'optimisation sont calculés d'une manière inattendue.
Le conseiller expert renvoie OnTester() :
Profit * Trades * (1/(MaxEquityDDPercent+1)) * RecoveryFactor
Où :
double Profit = TesterStatistics(STAT_PROFIT);
double Trades = TesterStatistics(STAT_TRADES);
double MaxEquityDDPercent = TesterStatistics(STAT_EQUITY_DDREL_PERCENT);
double RecoveryFactor = MathAbs(TesterStatistics(STAT_RECOVERY_FACTOR));
On s'attendait à ce qu'avec un facteur de profit et de récupération plus faible, le résultat soit plus petit, mais ce n'est pas le cas - voir la capture d'écran.
Est-ce quelque chose que je ne comprends pas correctement ?
Eh bien, allons-y :
Mais j'ai peur que vous ne l'aimiez pas. Moi, par exemple, je ne l'aime pas - le graphique bouge et se dédouble. Et je voulais faire mieux - le déplacer en douceur au bon endroit...
// Ce qui est intéressant, c'est qu'il fonctionne deux fois plus vite avec ChartRedraw() que sans. En même temps, il se secoue davantage.
Il y a toujours un problème avec ChartNavigate(). Est-ce que ça sera réparé un jour ? Ou n'est-ce pas considéré comme un bogue ?
Y a-t-il déjà un article sur ce sujet dans Service Desk ? Ou pour en ajouter d'autres ? ))
Erreur d'exécution : dépassement de pile
Si nous remplaçons OrderSend par n'importe quel autre nom, tout va bien.
la présence de statique n'affecte pas l'erreur
en appelant A::OrderSend()- l'erreur n'est pas affectée
Erreur d'exécution par dépassement de pile
Si vous remplacez OrderSend par n'importe quel autre nom, c'est bon.
car le contexte doit être résolu
::OrderSend
Je pense que je n'appelle pas ::OrderSend, mais A::OrderSend()
devrait fonctionner
Je pense que je n'appelle pas ::OrderSend, mais A::OrderSend()
A quelle ligne pensez-vous ?
que vous venez de
Si vous voulez appeler le terminal, faites : : avant OrdersendMerci, j'ai trouvé la raison - je retire la question - je l'ai bouclée moi-même.
Je comprends que vous vous êtes appelé dans vos Ordres sans : :
Je m'y suis pris tout de suite, quand j'ai redéfini Print et Comment dans la classe. maintenant je le fais tout le temps :)
J'ai cru comprendre que vous vous êtes appelé dans vos ordres sans : :