MQL4语言编程培训12:MQL4内置函数概览
' H: \" I& W, [% b8 j/ r ^& Q* `8 G- I
MQL4语言编程培训12:MQL4内置函数概览& I2 Q- z. I0 i& v2 z1 ?5 ?6 e4 [7 U2 [
% y: K' C6 c3 d+ P) OMQL4内置函数
& K/ V" P6 W# m9 W" A% b# @Abs –返回这个数值的绝对值(模块)# m L$ S) y+ F7 \( I- e# ~) q9 M
语法:Abs函数 (n个表达式) 参数:数值 AccountName – 返回包含用户名的文本串 (同义词:AccName )4 G" s% @/ H1 N2 ]- X
Alert –产生包含用户定义数据的对话屏 \6 K7 m6 X2 T1 G8 _6 p
语法: Alert(...) 参数的任何非零数都可能。
. t- v0 A5 k; q/ W, m7 pCeil – 返回代表最小接近整数的一个数字,它等于或大于特定的数值。9 [2 f& @$ j8 x6 h0 R. |5 Y
语法:Ceil( n个表达式 )参数:数值% p9 `6 Z! f" \5 f; U( k
CloseOrder –收盘头寸(部位)
" ]+ `( u; \( w5 E D. z7 _! x语法:收盘头寸(订单、单位、价格、滑动量、色彩) Parameters: 参数: order -开仓部位的订单数 lots – 单位数 price –优先收盘价 slippage –最大价格滑动值 color – 图表上交叉点的色彩# F: P1 O. p% M* g' E. C' N* c) S
Comment –在图表的左上角产生的用户定义数据
8 \! v+ D" t7 h, d0 n语法: Comment(...)参数的任何非零数都可能。
" F7 o0 V% o, m6 \/ |Cos –计算和返回数值的余弦值,代表用弧度表示的角度。: _3 Z: {7 ^" |0 A- ]
语法: Cos( n分表达式 ) 参数:数值3 I q" Q4 L+ d ^
CurTime –返回从1970年元月1日起所经过的秒数。 Day – 返回当月当前日序列号
5 T+ v8 o) t8 NDayOfWeek –返回当周当前日序列号。1 – 星期日, 2 – 星期一, ... , 7 – 星期六
5 _7 T) k) g6 VDeleteOrder –删除前期提交的延迟订单
' f/ ~4 q/ `( {- z' ]" v! C语法:DeleteOrder( 订单 ) 参数:订单-延迟部位的订单数( c* B s w. t; H9 R% h4 v
Exp – 返回代表特定数值指数的一个数目" O; N+ w3 t" e9 Z( d. I
语法: Exp( n个表达式) 参数:数值
( @& m" @, F9 O3 ^, HFloor –返回代表最大接近整数的一个数字,它等于或小于特定的数值。
1 m( R' F8 l$ ~0 ~/ l语法: Floor( n个表达式) 参数:数值; ?. J6 q+ Z5 \- W: `
Highest – 返回期间特定数间的 Open, Low, High, Close or Volume (取决于“类型”参数)的最大值。
0 I, g* h5 K( x5 \- ?8 B! [语法: Highest( 类型、beginbar、期间 ) Parameters: 参数: Type 类型 – 一个返回变量,可能去下列数值: MODE_OPEN, MODE_LOW, MODE_HIGH, MODE_CLOSE, MODE_VOLUMEbeginbar –表示条形的转换,与当前条形有关,并从中取值。 periods期间 – 计算执行依据的期间数
: h) u9 J- f' `& hHour –返回在24小时期间内当前小时的序列数。
0 B n* S4 s" U' }' `, b6 \iADX -平均指导动作目录
6 l. J$ i) P ^' m语法:iADX( 期间、模式、转换) 参数: period – 计算的期间数; mode – 数据类型,可以取下列数值:MODE_MAIN(主要指标)、MODE_PLUSDI(line +DI), MODE_MINUSDI(line -DI). shift – 与当前条形有关的转换(后退期间数),为数据待取值的依据。
1 T* N7 ]2 ]' B- k2 F4 viATR - 平均间距的指标! \, N: B3 a8 I+ w( B6 z
语法:iATR( 期间、转换) 参数: period – 计算期间数; shift – 与当前条形(后退期间数)相关的转换,为数据待取值的依据。
. V) _! @5 h1 R" c, p( S9 N/ c( R' Z2 b7 j. c! `8 j
iBANDS平均移动收敛/发散指标–– 布林带指数# O" O W8 H) }6 K, a
语法: iBANDS(期间,误差,模式,转换) 参数: period – 计算的期间数; deviation -误差; mode – 可以取下列值: MODE_MAIN(主线、滑移)、 MODE_LOW(下边线), MODE_HIGH(上边线). shift – 与当前条形(后退期间数)相关的转换,为数据待取值的依据。* \4 c X3 X+ _# h
* ^. \2 J2 O# E5 R# ~+ H, S0 i0 S
iCCI – 交易通道指标
5 q: ], u. d1 G& ^7 H: g语法: iCCI(期间、转换) 参数: period – 计算的期间数shift – 与当前条形(后退期间数)相关的转换,为数据待取值的依据。
" d% H8 J0 o9 m" c [ n* c1 ~ liMA – 移动平均指标 语法: iMA( 期间、模式、转换) 参数: period – 计算的期间数mode – 计算模式,可以取下列值: MODE_SMA, MODE_EMA, MODE_WMA. shift – 与当前条形(后退期间数)相关的转换,为数据待取值的依据。* I0 P" e% ]. f& @% I0 K9 I9 A( u" o
& E- {5 x& ^$ N8 K" g! x QiMACD -平均移动收敛/发散指标
, V8 D+ w- D5 ?' u) [语法: 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 -与当前条形(后退期间数)相关的转换,为数据待取值的依据。/ T! l. u) h4 g# u4 ~: I8 P8 ~
1 q% i! }. z I0 q1 v
iMFI – 现金流量指标
* M' [1 K- [/ ]6 ?8 {0 H语法: iMFI( 期间、转换) 参数: period – 计算期间数; shift – 与当前条形(后退期间数)相关的转换,为数据待取值的依据。
4 M6 u2 l0 r" V
; h6 A! w, Y' u( F9 V5 `$ B& UiMOM – 动量指标% ~3 ]7 \* K: g8 D
语法:iMOM( 期间、转换) 参数: period – 计算期间数; shift – 与当前条形(后退期间数)相关的转换,为数据待取值的依据。, R; R3 |9 G2 |+ H4 H
- l' K! |9 |0 X) O
iRSI – 相对强弱指标
+ p1 J3 X4 C* C4 z语法:iRSI(期间、转换) 参数: 期间 – 计算期间数;8 O2 k. `0 t3 p5 E* Y% y. _: t
7 ]& x# ]% _: u7 {0 w
iSAR -抛物线
7 }" n' ~2 @) s/ V4 j3 y& M1 C语法: iSAR(步骤,最大值,转换) 参数:步骤-增量,通常是0.02;最大值 – 最大值, 通常是0.02;) b; a3 m5 n) E8 R- J* L/ Y
' u2 K3 F1 M3 O6 W: U$ e7 M
iSTO - "随机振荡"指标
* Q; J% |% t4 J语法: iSTO( %K期间、 %D期间、慢、方法、模式、转换) 参数: %Kperiod - %K线期间; %Dperiod - %D线期间; slowing – 慢值; method – 计算方法,取下列值: MODE_SMA (简单平均)、MODE_EMA (指数值)、 MODE_WMA (权重值); mode – 数据源,可以取下列值: MODE_MAIN (主指标线), MODE_SIGNAL (信号指标线); shift -与当前条形(后退期间数)相关的转换,为数据待取值的依据。
9 y- E/ q! v. J" j* c( V# SiWPR -威廉氏百分数范围指标7 s# g% ?% d! K& T! v7 C* y: I. \
语法:iWPR( 期间、转换) 参数: 期间 – 计算期间数; shift – 与当前条形(后退期间数)相关的转换,为数据待取值的依据。& i4 l, [/ H$ K
IsDemo – 如果智能交易系统系统在试用帐户运行,返回逻辑值,否则会返回错误值.
2 g% q+ g1 D/ A* I+ h$ C+ |IsIndirect –如果使用反向方式对特定工具进行计算,会返回正确的逻辑值,否则会返回错误值。
Z6 m1 m9 U$ `! _3 zLastTradeTime –返回代表最近交易执行时间的一个数字(SetOrder, DelOrder, CloseOrder, ModifyOrder),计算从1970年元月1日0点经过的秒钟数。/ ] _0 j# Z" K# w0 ?2 z; \& t4 v
Log (-特定正数值的对数
2 U" v9 ?/ q C* {/ l语法:日志( n个表达式) 参数: 正数值 Lowest - 特定期间返回开仓,低,高,收盘或交易量最小值(依据"类型"参数而定) ...returns 语法:最低点(类型、beginbar、 期间) 参数: type – 可以取下列值: MODE_OPEN, MODE_LOW, MODE_HIGH, MODE_CLOSE, MODE_VOLUME
" T y L: K& E% h! O' @beginbar –表示条形的转换,与当前条形有关,并从中取值。# n* { ? I2 S: l' ]; s
periods期间 – 计算执行依据的期间数7 X' V! M, e" l1 `" e% {" z# Z. ]" ^/ l
Minute –返回当前小时的分钟序列数。' S6 `/ g R F9 @% ~3 `- _
Mod -返回代表着一个接着一个的数值的整数语法:Mod( n个表达式1, n个表达式2)参数: 数值1、数值2: ^/ C# N1 z+ v( b/ _
ModifyOrder –前期开仓部位或延迟订单修改的特征
) M! r0 s9 J* C( C' b* r5 s" j语法:ModifyOrder( 订单、价格、止损、获利、色彩) 参数: order – 开仓或延迟部位的数目或订单; price – 新的价格 (仅适用于延迟部位!); stoploss – 新的止损水平线; takeprofit – 新的获利水平线; color – 图表上象形图 的色彩1 k' e' g- c( S% r: G
Month –返回当前月的续列号( @0 G' Y, ~% b9 H: p
MoveObject –移动或建立命名对象
* o0 N9 Z. {. A# V9 }语法:MoveObject( 名称、类型、时间、价格、时间2、时间2) 参数: name – 文本串形式的名称; type – 对象类型,可以取下列值:OBJ_HLINE (水平线)、 OBJ_VLINE (垂直线), OBJ_TRENDLINE (趋势线)、 OBJ_SYMBOL (设定象形图)、 OBJ_TEXT (文本串); time – 参照图表第一时间; price -参照图表第一价格; time2 -参照图表第二时间; price2 -参照图表第二时间3 B: Y: s0 C4 ]9 `% W* t4 v
NumberToStr – 返回特定数值转换成特定准确格式的文本串。通过在十进位点数之后的其他4个数产生的数值的函数。! C% N( ]# W* {3 P" b+ Y' m
语法: NumberToStr(数字、准确性) 参数: number – 特定数值; precision – 准确格式、十进位点数的数字3 @, \6 p) G" p* Q3 [5 }
OrderValue – 返回订单特定价值的之一, _- t& S/ c* O3 U6 Y+ j
语法: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 (订单收盘时间)。
: p3 S6 E$ E( FOrd –和OrderValue完全相同。
6 {& y7 @# y$ c% _0 IPeriod –返回界定的已用期间分钟数# j5 c$ J8 i6 y) H; w
Pow – 返回由nBaseExpression数值提高到nExponentExpression 倍数而产生的数值,参见参数。
" O) o- {& ]/ B: ~语法:Pow( nBaseExpression, nExponentExpression ) 参数:数值1、数值2。: ], t( P4 S: W; h. _
Print – 打印由用户在系统日志里界定的数据。
. \$ W1 L) @5 c: I语法: Print(...)参数的任何非零数均可能。
/ E/ a1 p+ h6 iPrintTrade – 存储日志中特殊部位的细节 语法: PrintTrade( 部位 ) 参数:部位 – 在交易终端里已开仓部位数字' E% R( T- S2 d/ V
Rand –返回一个产生的伪随机数字。在使用此函数之前,伪随机数字发生器应用Srand函数调整到初始状态。如果伪随机数字发生器不用,就在启动程序时一次调整到初始状态。
! v( s6 p. T# \' N$ h; o6 I) s @& BRound – 返回代表最接近整数的特定数值
, x* }, C O, u- |3 g语法: Round( n个表达式) 参数: 一个数值
' ~5 u" n6 c" ]0 `$ \1 TServerAddress –以文本串的形式返回服务器IP地址9 c2 \1 _5 Q7 f. x! z
SetArrow –设定图表绘图标志
5 u" ^* |( A7 G; |语法: SetArrow( 时间、价格、标志和色彩) 参数: time -参照图表第一时间; price -参照图表第一价格; symbol -从Wingdings字体设定标志 的数值; color -图表颜色! c! {$ ]# N7 G5 }; S
SetObjectText -指定文本串到特定的对象
. N5 B1 b% w4 R3 w9 S语法: SetObjectText(称,文本,字体, 尺寸,颜色) 参数: name – 对象名称; text – 特定文本; font – 字体命; size – 字体大小; color – 文本色彩.
9 B" F- y0 h" u4 ASetOrder –用于开仓或设定延迟订单的主函数。& E: `3 S* _8 E0 j5 O3 C
语法: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 – 文本色彩
. m( W2 {- F& C3 K; ~Sin -计算并返回代表弧度角度的数值0 G! N' f) l; p
语法:Sin( n个表达式) 参数:数值
2 X: x4 X! u# E4 m cSqrt -计算和返回特定正数值的平方根语法: Sqrt( n个表达式 ) 参数: 正数值0 M' K/ M/ `( p* Y
Srand – 设定伪随机数字发生器到初始状态。如果使用发生器,将其在启动程序时一次性设置到初始状态。初始设置所用的最佳值就是时间函数回归的数字-在此情况下,产生顺序的随机性就增大。
, M, p" Z: j6 b. c$ u: o语法:Srand( 时间) 参数: 正数值 Symbol –返回智能交易系统运行的金融工具名称的文本串。
' Q' y9 I* C2 G8 I! MTan -计算并返回代表角度弧度的正切数值。9 A+ X/ G/ f9 s$ k3 [
语法: Tan( n个表达式) 参数: 数值6 w$ p, [) H# @. P9 ~. p. S0 y
TimeToStr – 返回带有"yyyy.mm.dd hh:mi" 类型的文本串,由代表经过1970元月1日起的秒钟数的特定数值。0 X5 U, ]! z, N; j L
语法: TimeToStr( 时间) 参数: 正数值 Year – 返回当年数' E6 a( i' v0 _4 l" Z* H0 g% h: O
& s, A1 u8 E) n6 T+ z518外汇网--是一家专门提供外汇交易免费学习的专业化外汇交易论坛、外汇开户、如何炒外汇,外汇培训,外汇学习,提供外汇交易教程,外汇视频教程,外汇基础知识,外汇交易策略.炒外汇工具,外汇技术指标分析,外汇赠金活动,十大外汇平台,外汇投资高手,外汇技术面分析技巧,外汇基本面分析技巧,黄金分析软件,主要是以公平公正的角度传达做外汇需要的心态 技巧,免费共享各种外汇交易投资策略,提供新鲜的外汇交易资讯和公平,透明的外汇交易平台。MQL4语言编程培训12:MQL4内置函数概览.8 N0 z9 I' r+ x
" @+ s1 r" \" F( z% E6 _
|