- 1 1. Introduction
- 2 2. Qu’est-ce que la fonction MathRound ?
- 3 3. Utilisation de base de la fonction MathRound
- 4 4. Comparaison avec d’autres fonctions d’arrondi
- 5 5. Exemples d’application pratique
- 6 6. Dépannage et précautions
- 7 7. Résumé
- 8 FAQ : Questions fréquentes sur la fonction MathRound
- 8.1 Q1 : Que dois‑je faire si la valeur arrondie après l’utilisation de MathRound n’est pas comme prévu ?
- 8.2 Q2 : En quoi la fonction MathRound diffère‑t‑elle des autres fonctions d’arrondi ?
- 8.3 Q3 : MathRound se comporte‑t‑il de la même manière dans d’autres langages de programmation ?
- 8.4 Q4 : Quelles précautions dois‑je prendre lors de l’utilisation de MathRound dans un système de trading ?
1. Introduction
MQL4 (MetaQuotes Language 4) est largement utilisé comme langage de programmation pour MetaTrader 4. C’est particulièrement un outil utile lors de la création de systèmes de trading automatisés (Expert Advisors) ou d’indicateurs personnalisés. Parmi ceux-ci, la fonction MathRound, qui arrondit les nombres, est l’une des fonctions de base essentielles pour les calculs de trading et le backtesting.
Cet article fournit une explication détaillée de la fonction MathRound, couvrant son utilisation de base, des exemples d’application pratique et des considérations importantes. Nous l’explorerons avec des exemples concrets afin que même les débutants puissent comprendre—veuillez vous y référer.
2. Qu’est-ce que la fonction MathRound ?
Informations de base sur la fonction MathRound
La fonction MathRound est une fonction intégrée MQL4 qui arrondit un nombre spécifié à l’entier le plus proche. Par exemple, si la partie fractionnaire est 0,5 ou plus, elle arrondit vers le haut ; si elle est inférieure à 0,5, elle arrondit vers le bas. L’utilisation de cette fonction vous permet de traiter les nombres de manière simple et précise.
Syntaxe :
double MathRound(double value);
- Argument (value) : Spécifiez le nombre que vous souhaitez arrondir.
- Valeur de retour : Le nombre arrondi est renvoyé.
Raisons de choisir la fonction MathRound
La fonction MathRound est un outil pratique pour la manipulation des nombres dans MQL4. Les raisons suivantes expliquent pourquoi.
- Vous pouvez gérer facilement la précision des calculs.
- La lisibilité du code s’améliore.
- Des fonctions similaires existent sur d’autres plateformes (Python, C++), vous permettant de tirer parti de votre expérience de programmation.
3. Utilisation de base de la fonction MathRound
Exemples de la fonction MathRound
Ici, nous illustrons l’utilisation de base de la fonction MathRound avec des exemples de code concrets.
Exemple :
double value = 1.7;
double roundedValue = MathRound(value);
Print("Rounded Value: ", roundedValue); // 出力: 2
Dans ce code, la variable value est assignée à 1,7, et la fonction MathRound l’arrondit à l’entier le plus proche (2).
Détails des règles d’arrondi
- 0,5 et plus : arrondir vers le haut
- Exemple : 1,5 → 2, 2,5 → 3
- En dessous de 0,5 : arrondir vers le bas
- Exemple : 1,4 → 1, 2,3 → 2
4. Comparaison avec d’autres fonctions d’arrondi
Différence avec MathCeil (Plafond)
MathCeil est une fonction qui arrondit toujours vers le haut le nombre spécifié.
Exemple :
double value = 1.3;
double ceilValue = MathCeil(value);
Print("Ceil Value: ", ceilValue); // 出力: 2
Différence avec MathFloor (Plancher)
MathFloor est une fonction qui arrondit toujours vers le bas le nombre spécifié.
Exemple :
double value = 1.7;
double floorValue = MathFloor(value);
Print("Floor Value: ", floorValue); // 出力: 1
Choix entre MathRound
| Function | Behavior | Primary Use |
|---|---|---|
| MathRound | Rounds to the nearest integer | General numeric processing |
| MathCeil | Always rounds up | When you want to ensure the result stays at the upper bound |
| MathFloor | Always rounds down | When you want to ensure the result stays at the lower bound |
5. Exemples d’application pratique
Utilisation de MathRound dans les systèmes de trading
MathRound est utile pour les calculs de prix et les ajustements de taille de lot dans les systèmes de trading.
Exemple : Arrondi de la taille de lot
double lotSize = 0.12345;
double roundedLotSize = MathRound(lotSize * 100) / 100;
Print("Rounded Lot Size: ", roundedLotSize); // 出力: 0.12
Utilisation dans le backtesting
Dans le backtesting utilisant des données historiques, l’arrondi est essentiel. Par exemple, standardiser les prix à deux décimales améliore la précision des calculs.
Exemple :
double price = 1.23456;
double roundedPrice = MathRound(price * 100) / 100;
Print("Rounded Price: ", roundedPrice); // 出力: 1.23
6. Dépannage et précautions
Erreurs courantes lors de l’utilisation de MathRound
- Arrondi inexact :
- Si vous n’ajustez pas le nombre de décimales, des résultats inattendus peuvent survenir.
- Solution : Multipliez la valeur avant l’arrondi, puis divisez-la à nouveau.
- Insuffisante prise en compte de l’unité minimale de la paire de devises :
- Ignorer les pips ou les tailles de tick peut rendre le système de trading inexact.
7. Résumé
Dans cet article, nous avons fourni une explication détaillée de la fonction MathRound de MQL4, couvrant l’utilisation de base, des exemples d’application et des considérations importantes. La fonction MathRound est un outil pratique qui simplifie l’arrondi des valeurs numériques. Elle est particulièrement utile pour les calculs de trading et le backtesting.
En tant qu’étape suivante, apprenez à combiner MathCeil et MathFloor, et essayez de construire une logique de trading encore plus précise !
FAQ : Questions fréquentes sur la fonction MathRound
Q1 : Que dois‑je faire si la valeur arrondie après l’utilisation de MathRound n’est pas comme prévu ?
A : Essayez d’augmenter la valeur avant l’arrondi (par exemple, multiplier par 10 ou 100 selon le nombre de décimales), puis arrondir, et enfin réduire. Cela améliorera la précision.
Exemple :
double value = 1.234;
double roundedValue = MathRound(value * 100) / 100;
Print("Rounded Value: ", roundedValue); // 出力: 1.23
Q2 : En quoi la fonction MathRound diffère‑t‑elle des autres fonctions d’arrondi ?
A : MathRound arrondit à l’entier le plus proche, alors que MathCeil arrondit toujours vers le haut, et MathFloor arrondit toujours vers le bas. Choisissez en fonction de vos besoins spécifiques.
Q3 : MathRound se comporte‑t‑il de la même manière dans d’autres langages de programmation ?
A : De nombreux langages de programmation (Python, JavaScript, C++, etc.) disposent de fonctions similaires à MathRound, et elles se comportent généralement de la même façon, mais il peut y avoir des différences subtiles dans la façon dont elles gèrent les décimales, alors soyez conscient.
Q4 : Quelles précautions dois‑je prendre lors de l’utilisation de MathRound dans un système de trading ?
A : Assurez‑vous d’arrondir en fonction de l’unité minimale de la paire de devises (pips ou taille de tick). Cela aide à éviter les erreurs de tarification et de commande.
四捨五入の方法 四捨五入は、小数点以下の値を最も近い整数に丸める操作です。MQL4では、四捨五入を行うためにMathRo…
MathRound - Math Functions - MQL4 Reference…