诚信为本
量力而为
当前位置:峰汇在线 ea编程知识 正文

MQL语言的MathFloor()和MathCeil()函数的取值

Math 的中文意思是:数学。它和 mathematics 的意思相同。Floor 中文意思:地板, 地面,最低额,底价,等。Ceil 中文意思:悬挂,悬挂在墙上,天花板,装天花板,等。从字面上可以简单的理解:Floor 是下面、向下的;Ceil 是上面、向上的。

MathFloor()和MathCeil()属于MQL语言的数学函数(这两个函数适用于MQL4语言和MQL5语言)。MathFloor() 替代函数 floor()。MathCeil() 替代函数 ceil()。

MathFloor() 函数结构:

double  MathFloor( 
   double  val     // 数值 
   );

MathCeil()函数结构:

double  MathCeil( 
   double  val      // 数值 
   );

可以看出,MathFloor()和MathCeil()两个函数的结构是完全一样的。并且,它们的主要功能也是相同的,都是取数值的整数,只是取整数的方向不同:Floor 向下取整数;Ceil 向上取整数。

为了进一步熟悉,分别用MathFloor()和MathCeil()函数来取 132.44 的整数值,这里就用其替代函数floor()和ceil()写在EA程序中,然后用注释函数 Comment() 输出结果到图表,代码:

double ax = floor(132.44);
double az = ceil(132.44);

Comment("floor(132.44)取值:"+ DoubleToStr(ax,0)+"\n"
         "ceil(132.44)取值:" + DoubleToStr(az,0)
        );

输出结果如下图所示:

MathFloor()和MathCeil()函数的取值

从上图左上角输出的注释结果可以看出,MathFloor() 将 132.44 向下取整数,结果是132;MathCeil() 则将 132.44 向上取整数,结果为 133。这种取整数的方法在诸多智能交易EA编程或技术指标编程中都有用到。

版权所有转载请注明标题及链接:峰汇在线 » MQL语言的MathFloor()和MathCeil()函数的取值