诚信为本
量力而为
当前位置:ea编程网 EA知识 正文

MQL4算术运算详解:理解增量、减量及计算顺序

MQL4语言中,算术运算是编程的基础部分,包括加法和乘法等操作。正确理解和运用算术运算,对于编写高效、准确的交易脚本和策略至关重要。本文将详细介绍MQL4中的算术运算,包括增量和减量的操作,以及这些操作在表达式中的计算顺序。

1. 基础算术运算

MQL4支持基础的算术运算,包括变量求和、变量差值、改变符号、变量乘积、除法商、除法余数,以及对变量值进行增量和减量操作。例如:

amount = quantity + 2;        // 变量求和
diff = quantity - 3;          // 变量差值
sign = - sign;                // 改变符号
product = 3 * price;          // 变量乘积
quotient = quantity / 5;      // 除法商
remainder = minutes % 60;     // 除法余数
quantity++;                   // 变量值加1
++quantity;                   // 变量值加1
stock--;                      // 变量值减1
--stock;                      // 变量值减1

2. 增量和减量运算

在MQL4中,增量和减量运算只能应用于变量,不能应用于常数。前缀形式的增量(++i)和减量(–k)会在变量在表达式中使用之前应用。后缀形式的增量(i++)和减量(k–)则在变量在表达式中使用之后应用。

这种操作在移植代码时需要特别注意,因为不同的编程环境(例如,从Borland C++到MQL4)可能导致计算问题。在实践中,后缀形式的增量和减量有两种实现方式:

  1. 在计算完整个表达式后,再对变量应用后缀形式的增量或减量。
  2. 在运算时立即对变量应用后缀形式的增量或减量。

在MQL4中,实现的是第一种方式。但是,即使知道这个特性,也不建议在使用中进行尝试和实验。以下是一些例子:

int a = 3; 
a++;            // 合法表达式 
int b = (a++)*3;  // 非法表达式

在上述代码中,a++ 是一个合法的表达式,因为它在整个表达式计算结束后才对变量 a 进行增量。然而,(a++)*3 是非法的,因为它试图在计算整个表达式的同时对变量 a 进行增量。

总的来说,理解和掌握MQL4中的算术运算及其特性,可以帮助我们编写出更加高效、准确的交易脚本和策略。

未经允许不得转载:ea编程网 » MQL4算术运算详解:理解增量、减量及计算顺序