7评论

1收藏

MQL4数学和三角函数(一)

avatar 编程逆袭仔 | 3680 人阅读 | 7 人评论 | 2013-08-13

  • MathAbs() – 求绝对值
  • MathArccos() – 求反余弦
  • MathArcsin() – 求反正弦
  • MathArctan() – 求反正切
  • MathCeil() – 取最小整数
  • MathCos() – 求余弦
  • MathExp() – 求e的幂
  • MathFloor() – 取最大整数
  • MathLog() – 求自然对数
  • MathMax() – 求最大值
  • MathMin() – 求最小值
  • MathMod() – 求模
  • MathPow() – 求幂
  • MathRand() – 获取随机整数
  • MathRound() – 求四舍五入值
  • MathSin() – 求正弦
  • MathSqrt() – 求平方根
  • MathSrand() – 随机数设置
  • MathTan() – 求正切

MathAbs() – 求绝对值[size=1em]
1

double MathAbs(double value)




返回指定数值的绝对值(模数)。
参数:
value - 数值。
示例:
[size=1em]
1

2

3

4

5

double dx=-3.141593, dy;

// calc MathAbs

dy=MathAbs(dx);

Print("The absolute value of ",dx," is ",dy);

// 输入数据:  -3.141593的绝对值为3.141593




Back to Top

MathArccos() – 求反余弦[size=1em]
1

double MathArccos(double x)




MathArccos函数返回x在0~兀(用弧度)范围内的反余弦。如果x小于-1或超出1,  MathArccos返回NaN(值不确定)。
参数:
x - 计算的数值在-1 到 1 之间。
示例:
[size=1em]
1

2

3

4

5

6

7

double x=0.32696, y;

y=MathArcsin(x);

Print("正弦",x," = ",y);

y=MathArccos(x);

Print("余弦 ",x," = ",y);

//输出: 反正弦 0.326960=0.333085

//输出: 反余弦 0.326960=1.237711




Back to Top

MathArcsin() – 求反正弦[size=1em]
1

double MathArccos(double x)




返回x在-兀/2到兀/2范围内反正弦。如果x小于一1或超出1,返回NaN (值不确定)。
参数:
x - 计算的数值。
示例:
[size=1em]
1

2

3

4

5

6

7

double x=0.32696, y;

y=MathArcsin(x);

Print("正弦",x," = ",y);

y=MathArccos(x);

Print("余弦 ",x," = ",y);

//输出: 反正弦 0.326960=0.333085

//输出: 反余弦 0.326960=1.237711




Back to Top

MathArctan() – 求反正切[size=1em]
1

double MathArctan(double x)




本函数返回x的反正切值。如果x为0,返回0。返回值必须在 -兀/2 到 兀/20。
参数:
x - 计算的数值。
示例:
[size=1em]
1

2

3

4

double x=-862.42, y;

y=MathArctan(x);

Print("反正切 ",x," is ",y);

//输出数据:反正切 -862.42 是 -1.5696




Back to Top

MathCeil() – 取最小整数[size=1em]
1

double MathCeil(double x)




MathCeil函数返回一个大于或等于x的最小整数。
参数:
x - 计算的数值。
示例:
[size=1em]
1

2

3

4

5

6

7

8

double y;

y=MathCeil(2.8);

Print("上限 2.8 is ",y);

y=MathCeil(-2.8);

Print("上限 -2.8 is ",y);

/*输出数据:

2.8  的最小整数 3

-2.8 的最小整数 -2*/




Back to Top

MathCos() – 求余弦[size=1em]
1

double MathCos(double x)




返回指定角度的余弦。
参数:
x - 用弧度表示的角度值。
示例:
[size=1em]
1

2

3

4

5

6

7

8

9

double pi=3.1415926535;

double x, y;

x=pi/2;

y=MathSin(x);

Print("正弦(",x,") = ",y);

y=MathCos(x);

Print("余弦(",x,") = ",y);

//输出数据: 正弦(1.5708)=1

//         余弦(1.5708)=0




Back to Top

MathExp() – 求e的幂[size=1em]
1

double MathExp(double d)




返回e的d次幂。在溢出情况下,函数返回工INF(无穷大),下溢时返回0。
参数:
d - 指定乘方的数值。
示例:
[size=1em]
1

2

3

4

double x=2.302585093,y;

y=MathExp(x);

Print("MathExp(",x,") = ",y);

//输出: MathExp(2.3026)=10




Back to Top

MathFloor() – 取最大整数[size=1em]
1

double MathFloor(double x)




MathFloor函数返回一个小于或等于x的最大整数。
参数:
x - 计算的数值。
示例:
[size=1em]
1

2

3

4

5

6

7

8

double y;

y=MathFloor(2.8);

Print("下限 2.8 is ",y);

y=MathFloor(-2.8);

Print("下限 -2.8 is ",y);

/*输出数据:

下限2.8  为 2

下限 -2.8 为-3*/




Back to Top

MathLog() – 求自然对数[size=1em]
1

double MathLog(double x)




如果成功,MathLog函数返回x的自然对数。如果x是负值,返回NaN(值不确定)。如果x是0,他们返回INF(无穷大)。
参数:
x - 计算的数值。
示例:
[size=1em]
1

2

3

4

double x=9000.0,y;

y=MathLog(x);

Print("MathLog(",x,") = ", y);

//输出数据: MathLog(9000)=9.10498





""
还没有人打赏,支持一下

评论|共 7 个

mcmsgped

发表于 2015-1-29 09:32:07 | 显示全部楼层

nice!!!!!!!!!!!!

oeprihhc

发表于 2015-1-29 18:39:33 | 显示全部楼层

[s:142]

sunguogui

发表于 2015-2-21 02:36:04 | 显示全部楼层

想学EA,拜师,谁收了我吧

fsdjv

发表于 2015-2-21 07:11:09 | 显示全部楼层

赚钱,赚积分。顶....

散落一地忧伤

发表于 2018-9-14 13:41:27 | 显示全部楼层

路过,学习下

有多少爱

发表于 2018-9-20 20:28:24 | 显示全部楼层

找到好贴不容易,我顶你了,谢了

zjn1688

发表于 2018-9-24 17:22:34 | 显示全部楼层

点赞

您需要登录后才可以回帖 登录 | 注册 微信登录

EA之家评论守则