原文地址:MQL4内置函数--总结汇总 作者:交易之外
MQL4内置函数
Abs –返回这个数值的绝对值(模块)
语法:Abs函数 (n个表达式) 参数:数值 AccountName – 返回包含用户名的文本串 (同义词:AccName )
Alert –产生包含用户定义数据的对话屏
语法: Alert(...) 参数的任何非零数都可能。
Ceil – 返回代表最小接近整数的一个数字,它等于或大于特定的数值。
语法:Ceil( n个表达式 )参数:数值
CloseOrder –收盘头寸(部位)
语法:收盘头寸(订单、单位、价格、滑动量、色彩) Parameters: 参数: order -开仓部位的订单数 lots – 单位数 price –优先收盘价 slippage –最大价格滑动值 color – 图表上交叉点的色彩
Comment –在图表的左上角产生的用户定义数据
语法: Comment(...)参数的任何非零数都可能。
Cos –计算和返回数值的余弦值,代表用弧度表示的角度。
语法: Cos( n分表达式 ) 参数:数值
CurTime –返回从1970年元月1日起所经过的秒数。 Day – 返回当月当前日序列号
DayOfWeek –返回当周当前日序列号。1 – 星期日, 2 – 星期一, ... , 7 – 星期六
DeleteOrder –删除前期提交的延迟订单
语法:DeleteOrder( 订单 ) 参数:订单-延迟部位的订单数
Exp – 返回代表特定数值指数的一个数目
语法: Exp( n个表达式) 参数:数值
Floor –返回代表最大接近整数的一个数字,它等于或小于特定的数值。
语法: Floor( n个表达式) 参数:数值
Highest – 返回期间特定数间的 Open, Low, High, Close or Volume (取决于“类型”参数)的最大值。
语法: Highest( 类型、beginbar、期间 ) Parameters: 参数: Type 类型 – 一个返回变量,可能去下列数值: MODE_OPEN, MODE_LOW, MODE_HIGH, MODE_CLOSE, MODE_VOLUMEbeginbar –表示条形的转换,与当前条形有关,并从中取值。 periods期间 – 计算执行依据的期间数
Hour –返回在24小时期间内当前小时的序列数。
iADX -平均指导动作目录
语法:iADX( 期间、模式、转换) 参数: period – 计算的期间数; mode – 数据类型,可以取下列数值:MODE_MAIN(主要指标)、MODE_PLUSDI(line +DI), MODE_MINUSDI(line -DI). shift – 与当前条形有关的转换(后退期间数),为数据待取值的依据。
iATR - 平均间距的指标
语法:iATR( 期间、转换) 参数: period – 计算期间数; shift – 与当前条形(后退期间数)相关的转换,为数据待取值的依据。
iBANDS平均移动收敛/发散指标–– 布林带指数
语法: iBANDS(期间,误差,模式,转换) 参数: period – 计算的期间数; deviation -误差; mode – 可以取下列值: MODE_MAIN(主线、滑移)、 MODE_LOW(下边线), MODE_HIGH(上边线). shift – 与当前条形(后退期间数)相关的转换,为数据待取值的依据。
iCCI – 交易通道指标
语法: iCCI(期间、转换) 参数: period – 计算的期间数shift – 与当前条形(后退期间数)相关的转换,为数据待取值的依据。
iMA – 移动平均指标 语法: iMA( 期间、模式、转换) 参数: period – 计算的期间数mode – 计算模式,可以取下列值: MODE_SMA, MODE_EMA, MODE_WMA. shift – 与当前条形(后退期间数)相关的转换,为数据待取值的依据。
iMACD -平均移动收敛/发散指标
语法: iMACD( fast_ema_period, slow_ema_period, signal_period, mode, shift ) 参数: fast_ema_period -计算'快' 平均移动期间(通常12); slow_ema_period - number of periods for calculation of the 'slow' moving average (usually 26); signal_period计算'慢' 平均移动期间(通常12); mode 数据源,可以取下列值:MODE_MAIN (主要指标)、MODE_SIGNAL (信号列); shift -与当前条形(后退期间数)相关的转换,为数据待取值的依据。
iMFI – 现金流量指标
语法: iMFI( 期间、转换) 参数: period – 计算期间数; shift – 与当前条形(后退期间数)相关的转换,为数据待取值的依据。
iMOM – 动量指标
语法:iMOM( 期间、转换) 参数: period – 计算期间数; shift – 与当前条形(后退期间数)相关的转换,为数据待取值的依据。
iRSI – 相对强弱指标
语法:iRSI(期间、转换) 参数: 期间 – 计算期间数;
iSAR -抛物线
语法: iSAR(步骤,最大值,转换) 参数:步骤-增量,通常是0.02;最大值 – 最大值, 通常是0.02;
iSTO - "随机振荡"指标
语法: iSTO( %K期间、 %D期间、慢、方法、模式、转换) 参数: %Kperiod - %K线期间; %Dperiod - %D线期间; slowing – 慢值; method – 计算方法,取下列值: MODE_SMA (简单平均)、MODE_EMA (指数值)、 MODE_WMA (权重值); mode – 数据源,可以取下列值: MODE_MAIN (主指标线), MODE_SIGNAL (信号指标线); shift -与当前条形(后退期间数)相关的转换,为数据待取值的依据。
iWPR -威廉氏百分数范围指标
语法:iWPR( 期间、转换) 参数: 期间 – 计算期间数; shift – 与当前条形(后退期间数)相关的转换,为数据待取值的依据。
IsDemo – 如果智能交易系统系统在试用帐户运行,返回逻辑值,否则会返回错误值.
IsIndirect –如果使用反向方式对特定工具进行计算,会返回正确的逻辑值,否则会返回错误值。
LastTradeTime –返回代表最近交易执行时间的一个数字(SetOrder, DelOrder, CloseOrder, ModifyOrder),计算从1970年元月1日0点经过的秒钟数。
Log (-特定正数值的对数
语法:日志( n个表达式) 参数: 正数值 Lowest - 特定期间返回开仓,低,高,收盘或交易量最小值(依据"类型"参数而定) ...returns 语法:最低点(类型、beginbar、 期间) 参数: type – 可以取下列值: MODE_OPEN, MODE_LOW, MODE_HIGH, MODE_CLOSE, MODE_VOLUME
beginbar –表示条形的转换,与当前条形有关,并从中取值。
periods期间 – 计算执行依据的期间数
Minute –返回当前小时的分钟序列数。
Mod -返回代表着一个接着一个的数值的整数语法:Mod( n个表达式1, n个表达式2)参数: 数值1、数值2
ModifyOrder –前期开仓部位或延迟订单修改的特征
语法:ModifyOrder( 订单、价格、止损、获利、色彩) 参数: order – 开仓或延迟部位的数目或订单; price – 新的价格 (仅适用于延迟部位!); stoploss – 新的止损水平线; takeprofit – 新的获利水平线; color – 图表上象形图 的色彩
Month –返回当前月的续列号
MoveObject –移动或建立命名对象
语法:MoveObject( 名称、类型、时间、价格、时间2、时间2) 参数: name – 文本串形式的名称; type – 对象类型,可以取下列值:OBJ_HLINE (水平线)、 OBJ_VLINE (垂直线), OBJ_TRENDLINE (趋势线)、 OBJ_SYMBOL (设定象形图)、 OBJ_TEXT (文本串); time – 参照图表第一时间; price -参照图表第一价格; time2 -参照图表第二时间; price2 -参照图表第二时间
NumberToStr – 返回特定数值转换成特定准确格式的文本串。通过在十进位点数之后的其他4个数产生的数值的函数。
语法: NumberToStr(数字、准确性) 参数: number – 特定数值; precision – 准确格式、十进位点数的数字
OrderValue – 返回订单特定价值的之一
语法:OrderValue(部位、模式) 参数: position – 交易终端列表的订单头寸部位,从1开始; mode – 返回数据类型,可以取下列值:VAL_TICKET (订单数), VAL_OPENTIME (定定开仓时间), VAL_TYPE (订单类型), VAL_LOTS (要求单位数目), VAL_SYMBOL (工具名称,以文本串的形式), VAL_OPENPRICE (开盘价), VAL_STOPLOSS (止损水平线), VAL_TAKEPROFIT (获利水平线), VAL_CLOSEPRICE (收盘价), VAL_COMISSION (委托交易量), VAL_SWAP (部位展期的展期费用数额), VAL_PROFIT (交易利润数), VAL_COMMENT (以文本串形式对特殊部位的注解), VAL_CLOSETIME (订单收盘时间)。
Ord –和OrderValue完全相同。
Period –返回界定的已用期间分钟数
Pow – 返回由nBaseExpression数值提高到nExponentExpression 倍数而产生的数值,参见参数。
语法:Pow( nBaseExpression, nExponentExpression ) 参数:数值1、数值2。
Print – 打印由用户在系统日志里界定的数据。
语法: Print(...)参数的任何非零数均可能。
PrintTrade – 存储日志中特殊部位的细节 语法: PrintTrade( 部位 ) 参数:部位 – 在交易终端里已开仓部位数字
Rand –返回一个产生的伪随机数字。在使用此函数之前,伪随机数字发生器应用Srand函数调整到初始状态。如果伪随机数字发生器不用,就在启动程序时一次调整到初始状态。
Round – 返回代表最接近整数的特定数值
语法: Round( n个表达式) 参数: 一个数值
ServerAddress –以文本串的形式返回服务器IP地址
SetArrow –设定图表绘图标志
语法: SetArrow( 时间、价格、标志和色彩) 参数: time -参照图表第一时间; price -参照图表第一价格; symbol -从Wingdings字体设定标志 的数值; color -图表颜色
SetObjectText -指定文本串到特定的对象
语法: SetObjectText(称,文本,字体, 尺寸,颜色) 参数: name – 对象名称; text – 特定文本; font – 字体命; size – 字体大小; color – 文本色彩.
SetOrder –用于开仓或设定延迟订单的主函数。
语法:SetOrder( 操作、单位、价格、滑动、止损、获利、色彩) 参数: operation – 操作类型,可以取下列值:OP_BUY (开始购买部位), OP_SELL (开始出售部位), OP_BUYLIMIT, OP_SELLLIMIT, OP_BUYSTOP, OP_SELLSTOP (提交延迟订单); lots – 单位数; price – 交易优先收盘价; slippage - OP_BUY 和OP_SELL操作的最大价格滑动; stoploss – 止损水平线; takeprofit – 获利水平线; color – 当提取函数时,图表上箭头的色彩 SetText –把图表种的文本创放到特定的位置 语法:SetText( 时间、价格、字符串、色彩 ) 参数: time -参照图表第一时间; price -参照图表第一价格; string – 文本串; color – 文本色彩
Sin -计算并返回代表弧度角度的数值
语法:Sin( n个表达式) 参数:数值
Sqrt -计算和返回特定正数值的平方根语法: Sqrt( n个表达式 ) 参数: 正数值
Srand – 设定伪随机数字发生器到初始状态。如果使用发生器,将其在启动程序时一次性设置到初始状态。初始设置所用的最佳值就是时间函数回归的数字-在此情况下,产生顺序的随机性就增大。
语法:Srand( 时间) 参数: 正数值 Symbol –返回智能交易系统运行的金融工具名称的文本串。
Tan -计算并返回代表角度弧度的正切数值。
语法: Tan( n个表达式) 参数: 数值
TimeToStr – 返回带有"yyyy.mm.dd hh:mi" 类型的文本串,由代表经过1970元月1日起的秒钟数的特定数值。
语法: TimeToStr( 时间) 参数: 正数值 Year – 返回当年数