比特币通信协议 - 币圈消息

比特币通信协议篇11、二、TURN简介。在典型的情况下,TURN客户端连接到内网中,并且通过一个或者多个NAT到 详细

MT4自动交易软件编程(20)- 技术指标调用

[复制链接]
732 0
就别对我笑 发表于 2018-8-23 17:05:56 | 只看该作者 |阅读模式 打印 上一主题 下一主题
您的域名(waterforex.com)未获得授权,部分功能受到影响!


尊敬的用户:

  您好!非常感谢您能安装和关注本产品,为了产品的可持续发展和升级,众大云采集已经开始收费。

  向用户收费是为了给用户更可靠的保障和服务,所收取的费用主要用于产品的正常运作、研发和改进,希望各位能够理解和支持。

  另外,为了答谢新老客户,众大云采集3折优惠,原价980元,现在购买仅需290元,给您节省了690元。

  官方QQ群:23530791  客服QQ:155120699

  购买域名授权请打开下面的网址:

http://www.0762home.com/zt/csdn123_news/pay_url.php?url=waterforex.com

  购买域名授权之后所有的未授权提示将自动消失,图片也正常显示,域名授权永久有效终身可用,后续的升级更新也是免费的,一次购买一辈子都能用,无后顾之忧!

提示:您目前使用的是免费试用版,可以手动删除上面的授权提示,发布这篇文章!



技术指标调用 [Technical Indicator calls]

double iAC( string symbol, int timeframe, int shift)
计算 Bill Williams' Accelerator/Decelerator oscillator 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
shift - 位移数
示例:
double result=iAC(NULL, 0, 1);
double iAD( string symbol, int timeframe, int shift)
计算 Accumulation/Distribution indicator 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
shift - 位移数
示例:
double result=iAD(NULL, 0, 1);
double iAlligator( string symbol, int timeframe, int jaw_period, int jaw_shift, int teeth_period, int teeth_shift, int lips_period, int lips_shift, int ma_method, int applied_price, int mode, int shift)
计算 Bill Williams' Alligator 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
jaw_period - 颚线周期
jaw_shift - 颚线位移
teeth_period - 齿线周期
teeth_shift - 齿线位移
lips_period - 唇线周期
lips_shift - 唇线位移
ma_method - 移动平均线种类
applied_price - 应用价格类型
mode - 来源模式,MODE_GATORJAW,MODE_GATORTEETH 或MODE_GATORLIPS
shift - 位移数
double jaw_val=iAlligator(NULl, 0, 13, 8, 8, 5, 5, 3, MODE_SMMA, PRICE_MEDIAN, MODE_GATORJAW, 1);
double iADX( string symbol, int timeframe, int period, int applied_price, int mode, int shift)
计算 Movement directional index 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
period - 周期
applied_price - 应用价格类型
mode - 来源模式,参见指标线分类枚举
shift - 位移数
if(iADX(NULL,0,14,PRICE_HIGH,MODE_MAIN,0)>iADX(NULL,0,14,PRICE_HIGH,MODE_PLUSDI,0)) return(0);
double iATR( string symbol, int timeframe, int period, int shift)
计算 Indicator of the average true range 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
period - 周期
shift - 位移数
if (iATR(NULL,0,12,0)>iATR(NULL,0,20,0)) return(0);
double iAO( string symbol, int timeframe, int shift)
计算 Bill Williams' Awesome oscillator 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
shift - 位移数
double val=iAO(NULL, 0, 2);
double iBearsPower( string symbol, int timeframe, int period, int applied_price, int shift)
计算 Bears Power indicator 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
period - 周期
applied_price - 应用价格类型
shift - 位移数
double val=iBearsPower(NULL, 0, 13,PRICE_CLOSE,0);
double iBands( string symbol, int timeframe, int period, int deviation, int bands_shift, int applied_price, int mode, int shift)
计算 Bollinger bands indicator 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
period - 周期
deviation - 背离
bands_shift - Bands位移
applied_price - 应用价格类型
mode - 来源模式,参见指标线分类枚举
shift - 位移数
if(iBands(NULL,0,20,2,0,PRICE_LOW,MODE_LOWER,0)>Low[0]) return(0);
double iBandsOnArray( double array[], int total, int period, double deviation, int bands_shift, int mode, int shift)
从数组中计算 Bollinger bands indicator 的值
:: 输入参数
array[] - 数组数据
total - 总数据数量
period - 周期
deviation - 背离
bands_shift - Bands位移
applied_price - 应用价格类型
mode - 来源模式,参见指标线分类枚举
shift - 位移数
if(iBands(NULL,0,20,2,0,PRICE_LOW,MODE_LOWER,0)>Low[0]) return(0);
double iBullsPower( string symbol, int timeframe, int period, int applied_price, int shift)
计算 Bulls Power indicator 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
period - 周期
applied_price - 应用价格类型
shift - 位移数
double val=iBullsPower(NULL, 0, 13,PRICE_CLOSE,0);
double iCCI( string symbol, int timeframe, int period, int applied_price, int shift)
计算 Commodity channel index 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
period - 周期
applied_price - 应用价格类型
shift - 位移数
if(iCCI(NULL,0,12,0)>iCCI(NULL,0,20,0)) return(0);
double iCCIOnArray( double array[], int total, int period, int shift)
从数组中计算 Commodity channel index 的值
:: 输入参数
array[] - 数组数据
total - 总数据数量
period - 周期
shift - 位移数
if(iCCIOnArray(ExtBuffer,total,12,0)>iCCI(NULL,0,20,PRICE_OPEN, 0)) return(0);
double iCustom( string symbol, int timeframe, string name, ... , int mode, int shift)
计算 自定义指标 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
name - 自定义指标名称
... - 自定义指标参数
mode - 来源模式,参见指标线分类枚举
shift - 位移数
double val=iCustom(NULL, 0, "SampleInd",13,1,0);
double iDeMarker( string symbol, int timeframe, int period, int shift)
计算 DeMarker indicator 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
period - 周期
shift - 位移数
double val=iDeMarker(NULL, 0, 13, 1);
double iEnvelopes( string symbol, int timeframe, int ma_period, int ma_method, int ma_shift, int applied_price, double deviation, int mode, int shift)
计算 Envelopes indicator 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
ma_period - 移动平均线周期
ma_method - 移动平均线模式
ma_shift - 移动平均线位移
applied_price - 应用价格类型
deviation - 背离
mode - 来源模式,参见指标线分类枚举
shift - 位移数
double val=iEnvelopes(NULL, 0, 13,MODE_SMA,10,PRICE_CLOSE,0.2,MODE_UPPER,0);
double iEnvelopesOnArray( double array[], int total, int ma_period, int ma_method, int ma_shift, double deviation, int mode, int shift)
从数组中计算 Envelopes indicator 的值
:: 输入参数
array[] - 数组数据
total - 总数据数量
ma_period - 移动平均线周期
ma_method - 移动平均线模式
ma_shift - 移动平均线位移
deviation - 背离
mode - 来源模式,参见指标线分类枚举
shift - 位移数
double val=iEnvelopesOnArray(ExtBuffer, 0, 13, MODE_SMA, 0.2, MODE_UPPER,0 );
double iForce( string symbol, int timeframe, int period, int ma_method, int applied_price, int shift)
计算 Force index 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
period - 周期
ma_method - 移动平均线模式
applied_price - 应用价格类型
shift - 位移数
double val=iForce(NULL, 0, 13,MODE_SMA,PRICE_CLOSE,0);
double iFractals( string symbol, int timeframe, int mode, int shift)
计算 Fractals 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
mode - 来源模式,参见指标线分类枚举
shift - 位移数
double val=iFractals(NULL, 0, MODE_UPPER,0);
double iGator( string symbol, int timeframe, int jaw_period, int jaw_shift, int teeth_period, int teeth_shift, int lips_period, int lips_shift, int ma_method, int applied_price, int mode, int shift)
计算 Fractals 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
jaw_period - 颚线周期
jaw_shift - 颚线位移
teeth_period - 齿线周期
teeth_shift - 齿线位移
lips_period - 唇线周期
lips_shift - 唇线位移
ma_method - 移动平均线种类
applied_price - 应用价格类型
mode - 来源模式,参见指标线分类枚举
shift - 位移数
double jaw_val=iGator(NULL, 0, 13, 8, 8, 5, 5, 3, MODE_SMMA, PRICE_MEDIAN, MODE_UPPER, 1);
double iIchimoku( string symbol, int timeframe, int tenkan_sen, int kijun_sen, int senkou_span_b, int mode, int shift)
计算 Ichimoku Kinko Hyo 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
tenkan_sen - 转换线
jkijun_sen - 基准线
senkou_span_b - 参考范围b
mode - 来源模式,参见指标线分类枚举
shift - 位移数
double tenkan_sen=iIchimoku(NULL, 0, 9, 26, 52, MODE_TENKANSEN, 1);
double iBWMFI( string symbol, int timeframe, int shift)
计算 Bill Williams Market Facilitation index 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
shift - 位移数
double val=iBWMFI(NULL, 0, 0);
double iMomentum( string symbol, int timeframe, int period, int applied_price, int shift)
计算 Momentum indicator 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
period - 周期
applied_price - 应用价格类型
shift - 位移数
if(iMomentum(NULL,0,12,PRICE_CLOSE,0)>iMomentum(NULL,0,20,PRICE_CLOSE,0)) return(0);
double iMomentumOnArray( double array[], int total, int period, int shift)
从数组中计算 Momentum indicator 的值
:: 输入参数
array[] - 数组数据
total - 总数据数量
period - 周期
shift - 位移数
if(iMomentumOnArray(mybuffer,100,12,0)>iMomentumOnArray(mubuffer,100,20,0)) return(0);
double iMFI( string symbol, int timeframe, int period, int shift)
计算 Money flow index 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
period - 周期
shift - 位移数
if(iMFI(NULL,0,14,0)>iMFI(NULL,0,14,1)) return(0);
double iMA( string symbol, int timeframe, int period, int ma_shift, int ma_method, int applied_price, int shift)
计算 Moving average indicator 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
period - 周期
ma_shift - 移动平均线位移
ma_method - 移动平均线模式
applied_price - 应用价格类型
shift - 位移数
AlligatorJawsBuffer=iMA(NULL,0,13,8,MODE_SMMA,PRICE_MEDIAN,i);
double iMAOnArray( double array[], int total, int period, int ma_shift, int ma_method, int shift)
从数组中计算 Moving average indicator 的值
:: 输入参数
array[] - 数组数据
total - 总数据数量
period - 周期
ma_shift - 移动平均线位移
ma_method - 移动平均线模式
shift - 位移数
double macurrent=iMAOnArray(ExtBuffer,0,5,0,MODE_LWMA,0);
double macurrentslow=iMAOnArray(ExtBuffer,0,10,0,MODE_LWMA,0);
double maprev=iMAOnArray(ExtBuffer,0,5,0,MODE_LWMA,1);
double maprevslow=iMAOnArray(ExtBuffer,0,10,0,MODE_LWMA,1);
//----
if(maprev=macurrentslow)
Alert("crossing up");
double iOsMA( string symbol, int timeframe, int fast_ema_period, int slow_ema_period, int signal_period, int applied_price, int shift)
计算 Moving Average of Oscillator 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
fast_ema_period - 快均线周期
slow_ema_period - 慢均线周期
signal_period - 信号周期
applied_price - 应用价格类型
shift - 位移数
if(iOsMA(NULL,0,12,26,9,PRICE_OPEN,1)>iOsMA(NULL,0,12,26,9,PRICE_OPEN,0)) return(0);
double iMACD( string symbol, int timeframe, int fast_ema_period, int slow_ema_period, int signal_period, int applied_price, int mode, int shift)
计算 Moving averages convergence/divergence 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
fast_ema_period - 快均线周期
slow_ema_period - 慢均线周期
signal_period - 信号周期
applied_price - 应用价格类型
mode - 来源模式,参见指标线分类枚举
shift - 位移数
if(iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,0)>iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,0)) return(0);
double iOBV( string symbol, int timeframe, int applied_price, int shift)
计算 On Balance Volume indicator 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
period - 周期
shift - 位移数
double val=iOBV(NULL, 0, PRICE_CLOSE, 1);
double iSAR( string symbol, int timeframe, double step, double maximum, int shift)
计算 On Balance Volume indicator 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
step - 步幅
maximum - 最大值
shift - 位移数
if(iSAR(NULL,0,0.02,0.2,0)>Close[0]) return(0);
double iRSI( string symbol, void timeframe, int period, int applied_price, int shift)
计算 Relative strength index 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
period - 周期
applied_price - 应用价格类型
shift - 位移数
if(iRSI(NULL,0,14,PRICE_CLOSE,0)>iRSI(NULL,0,14,PRICE_CLOSE,1)) return(0);
double iRSIOnArray( double array[], int total, int period, int shift)
从数组中计算 Relative strength index 的值
:: 输入参数
array[] - 数组数据
total - 总数据数量
period - 周期
shift - 位移数
if(iRSIOnBuffer(ExtBuffer,1000,14,0)>iRSI(NULL,0,14,PRICE_CLOSE,1)) return(0);
double iRVI( string symbol, int timeframe, int period, int mode, int shift)
计算 Relative Vigor index 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
period - 周期
mode - 来源模式,参见指标线分类枚举
shift - 位移数
double val=iRVI(NULL, 0, 10,MODE_MAIN,0);
double iStdDev( string symbol, int timeframe, int ma_period, int ma_method, int ma_shift, int applied_price, int shift)
计算 Standard Deviation indicator 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
ma_period - 移动平均线周期
ma_method - 移动平均线模式
ma_shift - 移动平均线位移
applied_price - 应用价格类型
shift - 位移数
double val=iStdDev(NULL,0,10,MODE_EMA,0,PRICE_CLOSE,0);
double iStdDevOnArray( double array[], int total, int ma_period, int ma_method, int ma_shift, int shift)
从数组中计算 Standard Deviation indicator 的值
:: 输入参数
array[] - 数组数据
total - 总数据数量
ma_period - 移动平均线周期
ma_method - 移动平均线模式
ma_shift - 移动平均线位移
shift - 位移数
double val=iStdDevOnArray(ExtBuffer,100,10,MODE_EMA,0,0);
double iStochastic( string symbol, int timeframe, int %Kperiod, int %Dperiod, int slowing, int method, int price_field, int mode, int shift)
计算 Stochastic oscillator 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
%Kperiod - %K线周期
%Dperiod - %D线周期
slowing - 减速量
method - 移动平均线种类
price_field - 价格领域参数: 0 - Low/High or 1 - Close/Close.
mode - 来源模式,参见指标线分类枚举
shift - 位移数
if(iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_MAIN,0)>iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_SIGNAL,0))
return(0);
double iWPR( string symbol, int timeframe, int period, int shift)
计算 Larry William's percent range indicator 的值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
period - 周期
shift - 位移数
if(iWPR(NULL,0,14,0)>iWPR(NULL,0,14,1)) return(0);
int iBars( string symbol, int timeframe)
返回制定图表的数据数
:: 输入参数
symbol - 通货标识
timeframe - 时间线
Print("Bar count on the 'EUROUSD' symbol with PERIOD_H1 is",iBars("EUROUSD",PERIOD_H1));
int iBarShift( string symbol, int timeframe, datetime time, bool exact=false)
在制定图表中搜索数据
:: 输入参数
symbol - 通货标识
timeframe - 时间线
time - 时间
exact - 是否精确的
datetime some_time=D'2004.03.21 12:00';
int shift=iBarShift("EUROUSD",PERIOD_M1,some_time);
Print("shift of bar with open time ",TimeToStr(some_time)," is ",shift);
double iClose( string symbol, int timeframe, int shift)
返回制定图表的收盘价
:: 输入参数
symbol - 通货标识
timeframe - 时间线
shift - 位移数
Print("Current bar for USDCHF H1: ",iTime("USDCHF",PERIOD_H1,i),", ", iOpen("USDCHF",PERIOD_H1,i),", ",
iHigh("USDCHF",PERIOD_H1,i),", ", iLow("USDCHF",PERIOD_H1,i),", ",
iClose("USDCHF",PERIOD_H1,i),", ", iVolume("USDCHF",PERIOD_H1,i));
double iHigh( string symbol, int timeframe, int shift)
返回制定图表的最高价
:: 输入参数
symbol - 通货标识
timeframe - 时间线
shift - 位移数
Print("Current bar for USDCHF H1: ",iTime("USDCHF",PERIOD_H1,i),", ", iOpen("USDCHF",PERIOD_H1,i),", ",
iHigh("USDCHF",PERIOD_H1,i),", ", iLow("USDCHF",PERIOD_H1,i),", ",
iClose("USDCHF",PERIOD_H1,i),", ", iVolume("USDCHF",PERIOD_H1,i));
double iLow( string symbol, int timeframe, int shift)
返回制定图表的最低价
:: 输入参数
symbol - 通货标识
timeframe - 时间线
shift - 位移数
Print("Current bar for USDCHF H1: ",iTime("USDCHF",PERIOD_H1,i),", ", iOpen("USDCHF",PERIOD_H1,i),", ",
iHigh("USDCHF",PERIOD_H1,i),", ", iLow("USDCHF",PERIOD_H1,i),", ",
iClose("USDCHF",PERIOD_H1,i),", ", iVolume("USDCHF",PERIOD_H1,i));
double iOpen( string symbol, int timeframe, int shift)
返回制定图表的开盘价
:: 输入参数
symbol - 通货标识
timeframe - 时间线
shift - 位移数
Print("Current bar for USDCHF H1: ",iTime("USDCHF",PERIOD_H1,i),", ", iOpen("USDCHF",PERIOD_H1,i),", ",
iHigh("USDCHF",PERIOD_H1,i),", ", iLow("USDCHF",PERIOD_H1,i),", ",
iClose("USDCHF",PERIOD_H1,i),", ", iVolume("USDCHF",PERIOD_H1,i));
datetime iTime( string symbol, int timeframe, int shift)
返回制定图表的时间
:: 输入参数
symbol - 通货标识
timeframe - 时间线
shift - 位移数
Print("Current bar for USDCHF H1: ",iTime("USDCHF",PERIOD_H1,i),", ", iOpen("USDCHF",PERIOD_H1,i),", ",
iHigh("USDCHF",PERIOD_H1,i),", ", iLow("USDCHF",PERIOD_H1,i),", ",
iClose("USDCHF",PERIOD_H1,i),", ", iVolume("USDCHF",PERIOD_H1,i));
double iVolume( string symbol, int timeframe, int shift)
返回制定图表的成交量
:: 输入参数
symbol - 通货标识
timeframe - 时间线
shift - 位移数
Print("Current bar for USDCHF H1: ",iTime("USDCHF",PERIOD_H1,i),", ", iOpen("USDCHF",PERIOD_H1,i),", ",
iHigh("USDCHF",PERIOD_H1,i),", ", iLow("USDCHF",PERIOD_H1,i),", ",
iClose("USDCHF",PERIOD_H1,i),", ", iVolume("USDCHF",PERIOD_H1,i));
int Highest( string symbol, int timeframe, int type, int count=WHOLE_ARRAY, int start=0)
返回制定图表的某段数据的最高值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
type - 数据类型
count - 计算范围
start - 开始点
double val;
// calculating the highest value in the range from 5 element to 25 element
// indicator charts symbol and indicator charts time frame
val=High[Highest(NULL,0,MODE_HIGH,20,4)];
int Lowest( string symbol, int timeframe, int type, int count=WHOLE_ARRAY, int start=0)
返回制定图表的某段数据的最高值
:: 输入参数
symbol - 通货标识
timeframe - 时间线
type - 数据类型
count - 计算范围
start - 开始点
double val=Low[Lowest(NULL,0,MODE_LOW,10,10)];
感谢您的阅读!
欢迎关注:

微信公众号:


微博:
收藏
收藏0
转播
转播
分享
分享
分享
淘帖0
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发布主题
阅读排行更多+

Powered by 顺水鱼MT4外汇EA网! X3.2© 2001-2017 顺水MT4外汇EA公司.( 陕ICP备17014341号-1