外汇智能交易MQL4语言教程(五)
4.4. 内置函数 metaQuotes 4语言提供许多功能,可用于多种多样的场合。这些包括技术指标、交易功能、时间功能、数学和三角函数功能、数据转换和输出函数,等。 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 – 返回当年数。 |
打赏
最新创建圈子
- 新闻EA运行效果图圈 2019-05-05
圈主:admin 帖子:1