
用于获取货币对/时段内价格报告的一组函数。
假使请求报告(货币对名称/时段不同于目前图表)来自其余图表,该种情形或许是相应的图表没有在客户端内打开,而且需要从服务器端下载报告。该种情形下,错误信息ERR_HISTORY_WILL_UPDATED(4066-请求的历史报告正在更新中)将被放置到last_error变量中,而且必须从新请求更新(参看ArrayCopySeries()范例)。
在试探中,同货币对价格报告或不同期段的单价报告被精确地模拟(除成交量外)。其余时段的成交量不模拟,其它货币对的单价报告同样也不模拟。无论何种情形,一个时段内柱子总数会被精确地模拟。
- iBars() – 获取柱体数
- iBarShift() – 搜索指定柱体
- iClose() – 获取柱体收盘价
- iHigh() – 获取柱体最高价
- iHighest() – 柱体最高值偏移量
- iLow() – 获取柱体最低价
- iLowest() – 柱体最低值偏移量
- iOpen() – 获取柱体开盘价
- iTime() – 获取柱体开盘时间
- iVolume() – 获取柱体成交量
int iBars(string symbol, int timeframe)
返回指定的图表中柱体(K线)的数量。
对于目前图表,柱子数量的信息保存在预定义的变量Bars中。
参数:
symbol - 要计算指标报告的货币对名称。 NULL表明目前货币对。timeframe - 时间周期。 可以 时间周期列举 任意值。 0表明目前图表的时间周期。
示例:
Print("'欧元兑美元'在PERIOD_H1时段的柱数:",iBars("EUROUSD",PERIOD_H1));
int iBarShift(string symbol, int timeframe, datetime time, void exact)
依据开盘时间搜索柱体(K线)。本函数返回带指定开盘时间的柱体。假使带指定开盘时间的柱体丢失,函数将返回-1或近期的柱体,这取决护exact参数设置。
参数:
symbol - 要计算指标报告的货币对名称。 NULL表明目前货币对。timeframe - 时间周期。 可以 时间周期列举 任意值。 0表明目前图表的时间周期。time - 柱体(K线)的开盘时间。exact - 未发现柱子的返回模式。false-返回近期的柱子,true-返回-1。
示例:
datetime some_time=D'2004.03.21 12:00'; int shift=iBarShift("EUROUSD",PERIOD_M1,some_time);Print("带有打开时间的柱体 ",TimeToStr(some_time)," 是 ",shift);
double iClose(string symbol, int timeframe, int shift)
返回带有时段和偏移量的指定货币对柱体(K线)的收盘价。假使本地历史表为空(历史报告未加载),函数返回0。
对于目前图表,收盘价的信息保存在 预定义数组Close[] 中。
参数:
symbol - 要计算指标报告的货币对名称。 NULL表明目前货币对。timeframe - 时间周期。 可以 时间周期列举 任意值。 0表明目前图表的时间周期。shift - 从指标缓冲区中获取值的索引(相对目前柱子向前移动一定数量周期的偏移量)。
示例:
Print("对于 美元兑瑞郎 H1目前柱: ",iTime("美元兑瑞郎",PERIOD_H1,i),", ", iOpen("美元兑瑞郎",PERIOD_H1,i),", ", iHigh("美元兑瑞郎",PERIOD_H1,i),", ", iLow("美元兑瑞郎",PERIOD_H1,i),", ", iClose("美元兑瑞郎",PERIOD_H1,i),", ", iVolume("美元兑瑞郎",PERIOD_H1,i));
double iHigh(string symbol, int timeframe, int shift)
返回带有时段和偏移量的指定货币对柱体(K线)的最高价。假使本地历史表为空(历史报告未加载),函数返回0。
对于目前图表,最盘价的信息保存在 预定义数组High[] 中。
参数:
symbol - 要计算指标报告的货币对名称。 NULL表明目前货币对。timeframe - 时间周期。 可以 时间周期列举 任意值。 0表明目前图表的时间周期。shift - 从指标缓冲区中获取值的索引(相对目前柱子向前移动一定数量周期的偏移量)。
示例:
Print("对于 美元兑瑞郎 H1目前柱: ",iTime("美元兑瑞郎",PERIOD_H1,i),", ", iOpen("美元兑瑞郎",PERIOD_H1,i),", ", iHigh("美元兑瑞郎",PERIOD_H1,i),", ", iLow("美元兑瑞郎",PERIOD_H1,i),", ", iClose("美元兑瑞郎",PERIOD_H1,i),", ", iVolume("美元兑瑞郎",PERIOD_H1,i));
int iHighest(string symbol, int timeframe, int type, void count, void start)
依据类型返回在一个指定时间周期内最大值的偏移量。
参数:
symbol - 要计算指标报告的货币对名称。 NULL表明目前货币对。timeframe - 时间周期。 可以 时间周期列举 任意值。 0表明目前图表的时间周期。type - 序列数组的识别符。它可以是 序列报告识别符枚举 的任意值。count - 要计算出的周期数(沿着开头柱子到后而柱子的方向)。start - 开始柱子,相对于目前柱子,开始采集报告的柱子。
示例:
double val; // 在20个接连柱子规模内计算最大值 // 在目前图表上从第4个至第23个的索引 val=High[iHighest(NULL,0,MODE_HIGH,20,4)];
double iLow(string symbol, int timeframe, int shift)
返回带有时段和偏移量的指定货币对柱体(K线)的最低价。假使本地历史表为空(历史报告未加载),函数返回0。
对于目前图表,最盘价的信息保存在 预定义数组Low[] 中。
参数:
symbol - 要计算指标报告的货币对名称。 NULL表明目前货币对。timeframe - 时间周期。 可以 时间周期列举 任意值。 0表明目前图表的时间周期。shift - 从指标缓冲区中获取值的索引(相对目前柱子向前移动一定数量周期的偏移量)。
示例:
Print("对于 美元兑瑞郎 H1目前柱: ",iTime("美元兑瑞郎",PERIOD_H1,i),", ", iOpen("美元兑瑞郎",PERIOD_H1,i),", ", iHigh("美元兑瑞郎",PERIOD_H1,i),", ", iLow("美元兑瑞郎",PERIOD_H1,i),", ", iClose("美元兑瑞郎",PERIOD_H1,i),", ", iVolume("美元兑瑞郎",PERIOD_H1,i));
int iLowest(string symbol, int timeframe, int type, void count, void start)
依据类型返回在一个指定时间周期内最低值的偏移量。
参数:
symbol - 要计算指标报告的货币对名称。 NULL表明目前货币对。timeframe - 时间周期。 可以 时间周期列举 任意值。 0表明目前图表的时间周期。type - 序列数组的识别符。它可以是 序列报告识别符枚举 的任意值。count - 要计算出的周期数(沿着开头柱子到后而柱子的方向)。start - 开始柱子,相对于目前柱子,开始采集报告的柱子。
示例:
double val; // 在20个接连柱子规模内计算最小值 // 在目前图表上从第4个至第23个的索引 val=Low[iLowest(NULL,0,MODE_LOW,20,4)];
double iOpen(string symbol, int timeframe, int shift)
返回带有时段和偏移量的指定货币对柱体(K线)的开盘价。假使本地历史表为空(历史报告未加载),函数返回0。
对于目前图表,最盘价的信息保存在 预定义数组Open[] 中。
参数:
symbol - 要计算指标报告的货币对名称。 NULL表明目前货币对。timeframe - 时间周期。 可以 时间周期列举 任意值。 0表明目前图表的时间周期。shift - 从指标缓冲区中获取值的索引(相对目前柱子向前移动一定数量周期的偏移量)。
示例:
Print("对于 美元兑瑞郎 H1目前柱: ",iTime("美元兑瑞郎",PERIOD_H1,i),", ", iOpen("美元兑瑞郎",PERIOD_H1,i),", ", iHigh("美元兑瑞郎",PERIOD_H1,i),", ", iLow("美元兑瑞郎",PERIOD_H1,i),", ", iClose("美元兑瑞郎",PERIOD_H1,i),", ", iVolume("美元兑瑞郎",PERIOD_H1,i));
datetime iTime(string symbol, int timeframe, int shift)
返回带有时段和偏移量的指定货币对柱体(K线)的开盘时间。假使本地历史表为空(历史报告未加载),函数返回0。
对于目前图表,最盘价的信息保存在 预定义数组Time[] 中。
参数:
symbol - 要计算指标报告的货币对名称。 NULL表明目前货币对。timeframe - 时间周期。 可以 时间周期列举 任意值。 0表明目前图表的时间周期。shift - 从指标缓冲区中获取值的索引(相对目前柱子向前移动一定数量周期的偏移量)。
示例:
Print("对于 美元兑瑞郎 H1目前柱: ",iTime("美元兑瑞郎",PERIOD_H1,i),", ", iOpen("美元兑瑞郎",PERIOD_H1,i),", ", iHigh("美元兑瑞郎",PERIOD_H1,i),", ", iLow("美元兑瑞郎",PERIOD_H1,i),", ", iClose("美元兑瑞郎",PERIOD_H1,i),", ", iVolume("美元兑瑞郎",PERIOD_H1,i));
datetime iVolume(string symbol, int timeframe, int shift)
返回带有时段和偏移量的指定货币对柱体(K线)的成交量。假使本地历史表为空(历史报告未加载),函数返回0。
对于目前图表,最盘价的信息保存在 预定义数组Volume[] 中。
注:该成交量并不是真正意义上的成交量,这是一个预期值,其值为该K线下tick价格变动的数量,其后面的意义为假使tick价格变动迅速,表明成交量越大;tick价格变动越慢,表明成交量越小。
参数:
symbol - 要计算指标报告的货币对名称。 NULL表明目前货币对。timeframe - 时间周期。 可以 时间周期列举 任意值。 0表明目前图表的时间周期。shift - 从指标缓冲区中获取值的索引(相对目前柱子向前移动一定数量周期的偏移量)。
示例:
Print("对于 美元兑瑞郎 H1目前柱: ",iTime("美元兑瑞郎",PERIOD_H1,i),", ", iOpen("美元兑瑞郎",PERIOD_H1,i),", ", iHigh("美元兑瑞郎",PERIOD_H1,i),", ", iLow("美元兑瑞郎",PERIOD_H1,i),", ", iClose("美元兑瑞郎",PERIOD_H1,i),", ", iVolume("美元兑瑞郎",PERIOD_H1,i));