Caractéristiques du langage mql5, subtilités et techniques - page 147
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
IsInf() et IsNaN() fonctionnent,
IsEqual() et IsZerro() sont discutables, ils ont été googlés à partir de certaines sources comme "truc pour le double".
IsNan() fonctionne, mais pas IsInf()
Depuis quand les nombres dénormalisés deviennent-ils l'infini ?
Et toutes ces comparaisons avec epsilon - epsilon doit être augmenté proportionnellement aux opérandes. En général, il n'y a pas de recette universelle, j'utilise Point comme un epsilon (avec des opérandes arrondis) et je ne veux pas (et n'ai pas besoin) de comparer la différence avec DBL_EPSILON.
Et toutes ces comparaisons avec epsilon - epsilon doit être augmenté proportionnellement aux opérandes. En général, il n'y a pas de recette universelle, j'utilise Point comme epsilon (avec des opérandes arrondis), je ne veux pas comparer la différence avec DBL_EPSILON(et je n'en ai pas besoin).
J'ai trouvé un article que j'ai lu hier sur TVhttps://randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-edition/.
Oui, vous devez utiliser un autre exemple où vous devez spécifier la précision de la comparaison.
IsNan() fonctionne, mais pas IsInf()
Depuis quand les nombres dénormalisés deviennent-ils l'infini ?
MQL semble normaliser au 8ème chiffre, c'est-à-dire que si NormalizeDouble() est ajouté à IsInf(), le résultat ne sera toujours pas meilleur.
la normalisation dans MQL semble aller jusqu'au 8ème chiffre, c'est-à-dire que si NormalizeDouble() est ajouté à IsInf(), le résultat n'est toujours pas meilleur.
La normalisation dans MQL n'est pas du tout la même, je ne sais pas pourquoi ils ont nommé la fonction de cette façon. https://ru.wikipedia.org/wiki/%D0%94%D0%B5%D0%BD%D0%BE%D1%80%D0%BC%D0%B0%D0%BB%D0%B8%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B0
Indique le nombre total d'ordres commerciaux synchrones (OrderSend) et asynchrones réussis générés dans le terminal (depuis le début).
Je l'utilise dans le testeur (à la fin) pour voir combien de fois les commandes ont été modifiées.
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie
OnTick() ne fonctionne pas dans une instance de classe ?
fxsaber, 2019.10.31 23:45
Héritez de BASE, alors les méthodes OnTick des classes seront appelées automatiquement.
Un exemple d'utilisation de la Macro X (ne faites pas attention aux types obscurs, je les ai arrachés à un code de travail. Vector est un tableau dynamique) :
Par exemple :
1. Nous voulons définir des vecteurs derrière une boucle pour éviter les allocations constantes.
2. Chacun des tests peut être désactivé (en fait, il y en a plusieurs).
3. restore_image() et restore_subimages(), une fonction lourde et très gourmande en temps (lecture des objets du graphe).
4. Si aucun des tests n'utilise seg2, par exemple, je voudrais supprimer à la fois la définition et la restore...() correspondante en une seule action, pour éviter une situation où le vecteur est défini mais vide à cause de la restore...() commentée, ce qui donnerait des résultats erronés.
Que faire ?
Il suffit de commenter les segx inutiles dans DEFSEG_LIST. Cela produira les mêmes résultats que dans le premier code. En fait, c'est dommage que le compilateur ne soit pas capable de montrer la sortie du processeur (l'analogue gcc -E).
Parfois, dans l'optimisation génétique, les quelques milliers de premiers passages suffisent pour comprendre plus ou moins le résultat.
Lorsque vous exécutez automatiquement un grand nombre d'optimisations, vous voulez que tout soit plus rapide. C'est pourquoi nous aurons besoin d'un mécanisme pour interrompre l'optimisation.
Utilisation.
Instructions pour ouvrir un graphique avec un caractère Null.
Si une classe avec des champs statiques est immédiatement créée lors de la définition d'une classe, il y aura une erreur de compilation.