(‘both’, ‘MQL4 / MQL5 両対応’)数学
目次
NormalizeDouble小数の桁数を丸めて誤差を防ぐ
計算の途中で出てくる、コンピューター特有の細かい誤差(0.1+0.2が0.30000000004になる、など)を取り除く。注文の価格・ロット数を送る前に必ず通す関数。
1書式
double NormalizeDouble(
double value,
int digits // 残したい小数点以下の桁数
);
書式はMQL4・MQL5で同じ。
2引数
| 引数 | 内容 |
|---|---|
| value | 丸めたい値 |
| digits | 残す小数点以下の桁数(価格ならDigitsを渡すのが定石) |
3戻り値
指定した桁数に丸めた値。
4使用例
double price = Ask + 20 * Point; price = NormalizeDouble(price, Digits); Print(price);
MetaEditorでコンパイル0エラー・0警告を確認済み。
6よくある罠
⚠ 実務で踏んだもの
- 注文の価格・損切り・利確を送る前は、必ずこれを通す。通さずに送ると、見た目は同じ数字でも内部の誤差のせいで「不正な価格」としてエラーになることがある。
7関連する関数
MORNING BRIEF平日 毎朝7時までに更新
今日はどこを見ればいいか。
ドル円とユーロドルの主要ライン・予想高値安値を、平日の朝に図1枚にまとめています。
朝刊を見る→9/25 8:27 時点ドル円158.78▼-7 pipsドル円 予想レンジ158.41 〜 159.23ドル円 上の節目158.90▲ドル円 下の節目157.80▼ユーロドル1.1378▼-2 pipsユーロドル 予想レンジ1.1351 〜 1.1408ユーロドル 上の節目1.1403▲ユーロドル 下の節目1.1359▼きょうの指標重要指標なし