MQL4 MathRound : Guide complet pour débutants – Du basique à l’avancé

※記事内に広告を含む場合があります。

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

FunctionBehaviorPrimary Use
MathRoundRounds to the nearest integerGeneral numeric processing
MathCeilAlways rounds upWhen you want to ensure the result stays at the upper bound
MathFloorAlways rounds downWhen 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

  1. 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.
  1. 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.

EXPO blog 投資の翼

四捨五入の方法 四捨五入は、小数点以下の値を最も近い整数に丸める操作です。MQL4では、四捨五入を行うためにMathRo…

MathRound - Math Functions - MQL4 Reference…

FXで勝ち組を目指す!メタトレーダーを使ったEA開発マスターガイド
5

『FXで勝ち組を目指す!』は、FX自動売買システムの開発と運用をわかりやすく解説。初心者でも安心して学べるMetaTraderプログラミング方法や、東京仲値を活用した実践的なEA戦略を紹介しています。さらに、生成AIを活用した最新技術もカバー!特典として「無人サーバ接続監視用EA」のプロンプト例も付属。EA開発に興味がある方におすすめの一冊です。
※記事内に広告を含む場合があります。
佐川 直弘: MetaTraderを活用したFX自動売買の開発で15年以上の経験を持つ日本のパイオニア🔧

トレーデンシー大会'15世界1位🥇、EA-1グランプリ準優勝🥈の実績を誇り、ラジオ日経出演経験もあり!
現在は、株式会社トリロジーの役員として活動中。
【財務省近畿財務局長(金商)第372号】に登録
され、厳しい審査を経た信頼性の高い投資助言者です。


【主な活動内容】
・高性能エキスパートアドバイザー(EA)の開発と提供
・最新トレーディング技術と市場分析の共有
・FX取引の効率化と利益最大化を目指すプロの戦略紹介

トレーダー向けに役立つ情報やヒントを発信中!

This website uses cookies.