トップ  >  リファレンス  >  変換関数  >  NormalizeDouble
スポンサーリンク
検索
カスタム検索
リファレンスツリー
オススメ
NormalizeDouble


NormalizeDouble


浮動小数点数を指定した精度で丸めます

関数書式:
double  NormalizeDouble(
   double  value,      // 浮動小数点数
   int     digits      // 丸める小数点以下の桁数
   );



■引数
引数名 初期値 I/O 詳細
value - In 浮動小数点数
digits - In 丸める小数点以下の桁数。
設定範囲は0〜8まで。


■戻り値
指定された精度で丸められた浮動小数点数を返します


■備考
算出した値を用いて、ストップロス・リミット・エントリー価格・ロット数をOrderSend()関数の実引数に使用する場合、
正確に正規化する必要があります。
ストップロス・リミット・エントリー価格はDigits()を用いて正規化する桁数を取得する事が出来ます。

サンプルソース:
#property strict

void OnInit() {
    double stoploss;
    double stoploss_normalized;
    
    stoploss = Close[0];

    stoploss            = stoploss + ( stoploss * 20 * Point() * 10 );
    stoploss_normalized = NormalizeDouble( stoploss , Digits());

    Print( "算出したストップロス        :", stoploss            );
    Print( "算出したストップロス(正規化):", stoploss_normalized );
}


結果(EUR/USDの場合):
EURUSD,H1: 算出したストップロス        :1.075647
EURUSD,H1: 算出したストップロス(正規化):1.07565


結果(USD/JPYの場合):
USDJPY,H1: 算出したストップロス        :143.4528
USDJPY,H1: 算出したストップロス(正規化):143.453



スポンサーリンク



Copyright ©2015 MT4でEA自作しちゃお〜 All Rights Reserved.


Top

inserted by FC2 system