[ARCHIVE !] Toute question de débutant, pour ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 4. - page 318
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
il y a une fonction "double MathRound( double value)", mais j'ai besoin de l'arrondi à une fraction décimale plus grande, et si le nombre est entier ou déjà décimal, alors laissez-le tranquille.
Par exemple : 1) 0,744 arrondi à 0,8 ; 1,233 arrondi à 1,3
2) 0,9 ou 3 ou 1,5 ne touchent pas.
Je ne l'ai pas vérifié, mais en quelque sorte.
Geste totalement inutile assez double res=NormalizeDouble(res,1) pour gérer mathématiquement encore double res = 3 ; ou double res = 3.0 ;
La différence ne sera visible qu'à l'impression (graphique), mais cela ne figure pas dans la description du problème par l'auteur.
Geste totalement inutile assez double res=NormalizeDouble(res,1) pour gérer mathématiquement encore double res = 3 ; ou double res = 3.0 ;
La différence ne sera visible que sur l'impression (graphique), mais cela ne figure pas dans la description du problème par l'auteur.
Eh bien, vous pouvez le faire de cette façon :
Je pense que la première variante est meilleure. Il fonctionnera plus rapidement.Eh bien, vous pourriez faire comme ça :
Je pense que la première option est la meilleure. Il fonctionnera plus rapidement.Cette option.
devrait être le plus rapide
La version de Vadim est 20-25% plus rapide, mais l'effet commence à se manifester régulièrement lorsque le nombre d'itérations dépasse un million. (vérifié)
Montrez-moi le code, comment l'avez-vous vérifié ?
La version de Vadim est 20-25% plus rapide, mais l'effet commence à se manifester régulièrement lorsque le nombre d'itérations dépasse un million. (testé)
la façon correcte de l'écrire : if (OrderSelect (OrdersHistoryTotal()-1, SELECT_BY_POS, MODE_HISTORY) == OrderTakeProfit() == OrderClosePrice()) Stop=false // c'est-à-dire que si le dernier ordre de la fin a clôturé au niveau du Take Profit (prise de bénéfice lorsqu'un certain niveau est atteint), le Stop=false ? (Arrêt dans les variables globales)
cette question s'est posée car l'ordre s'ouvre par une condition if((iClose(NULL,0,1)<ma) && Stop==True)....
Ne jamais comparer, prises non normalisées, inutile. Et d'ailleurs, le prix de clôture d'un ordre d'achat peut être différent du prix d'achat (réel/démo (en ligne)).
Il serait donc plus correct de mesurer le module de différence de prix, en le comparant à la valeur test.