数学函数
所有现代编程语言都支持常用的算术函数,MQL5 也不例外。在本章中,我们将了解若干组现成可用的函数。这些函数包括舍入函数、三角函数、指数函数、对数函数、幂函数以及一些特殊函数,诸如生成随机数字以及检查实数正常性的函数。
大多数函数有两个名称:全名(带前缀 "Math" 并大写)和缩写(没有前缀,小写)。两种形式我们都会提供:它们的功能相同。可基于源代码的格式设置样式进行选择。
由于数学函数执行某些计算并返回实数结果,潜在错误可能导致结果未定义的情况。例如,不能取负数的平方根或取零的对数。在此类情况,函数会返回表示非数字特殊值(NaN,非数字)。我们已在以下章节接触过: 实数、 算术运算以及 数字与字符串的相互转换。数字是否正确以及是否存在错误可使用 MathIsValidNumber 和 MathClassify 函数分析(参见 检查实数正常性)。
只要有一个操作数的值为 NaN,就会导致隐含该操作数的任何后续计算(包括函数调用)都产生 NaN。
如需自学和获取直观学习材料,你可将 MathPlot.mq5 脚本用作附件,该脚本可根据上述函数的单一自变量来显示数学函数图形。该脚本使用 MetaTrader 5 中提供的标准图库 Graphic.mqh(不在本书范围)。下面是双曲正弦曲线在 MetaTrader 5 窗口中可能的显示样例。
MetaTrader 5 窗口中的双曲正弦图