美元指数公式指标,通过公式计算美元指数


介绍: 副图显示美元指数指标

原理: 通过公式计算美元指数值,画矩形图与美指均线图

来自: 策汇在线: http://www.fxchs.com


点击下载程序与源码 文件大小:2.35 KB

必须读我.txt 策汇在线.url MQL4/ MQL4/Indicators/ MQL4/Indicators/USDIndex.mq4

MQL4/Indicators/USDIndex.mq4代码片段:

 //+-------------------------------------------------------------------+ //| USDIndex.mq4 | //| Copyright 2020 , 策汇在线 http://www.fxchs.com | //| http://www.fxchs.com | //+-------------------------------------------------------------------+ #property copyright "策汇在线 http://www.fxchs.com" #property link "http://www.fxchs.com" /////////////////////////////////////////////////////////////////////// // // // // 介绍: 副图显示美元指数指标 // // 原理: 通过公式计算美元指数值,画矩形图与美指均线图 // // 来自: 策汇在线: http://www.fxchs.com // // // ////////////////////////////////////////////////////////////////////// // 指标可分割窗口,以副图显示 #property indicator_separate_window // 显示指标数组数量 #property indicator_buffers 2 // 红色矩形图 #property indicator_color1 Red // 绿色均线 #property indicator_color2 Green // 美指均线周期 extern int MAPeriod=12; // 画矩形图数组 double ExtMapBuffer1[]; // 画均线数组 double ExtMapBuffer2[]; // 自定义指标初始化函数 int init() { // 实际用到指标数组缓冲区。简单点说就是显示两个图,这两个叠加图的缓存量 IndicatorBuffers(2); // 每一个显示矩形图,也叫直方图 SetIndexBuffer(0,ExtMapBuffer1); SetIndexStyle(0,DRAW_HISTOGRAM,0,1); // 另一个显示均线 SetIndexBuffer(1,ExtMapBuffer2); SetIndexStyle(1,DRAW_LINE,0,1); return(0); } // 自定义指标反初始化函数 int deinit() { return(0); } // 自定义指标入口 int start() { // 计算K线柱子数量 int counted_bars = IndicatorCounted(); int i, limit; if(counted_bars == 0) limit = Bars - 30; if(counted_bars > 0) limit = Bars - counted_bars; // 美元指数的计算原则是以全球各主要国家与美国之间的贸易结算量为基础,以加权的方式计算出美元的整体强弱程度,并以100点为强弱分界线。 for(i = limit; i >= 0; i--) { // 各国货币开盘价 double Open_EURUSD=iOpen("EURUSD",0,i); double Open_USDJPY=iOpen("USDJPY",0,i); double Open_GBPUSD=iOpen("GBPUSD",0,i); double Open_USDCAD=iOpen("USDCAD",0,i); double Open_USDSEK=iOpen("USDSEK",0,i); double Open_USDCHF=iOpen("USDCHF",0,i); // 直接套公式,美元指数的计算公式 = 50.14348112 EURUSD(-0.576) USDJPY(0.136) GBPUSD(-0.119) USDCAD(0.091) USDSEK(0.042) USDCHF(0.036)。 double USDx=50.14348112 * MathPow(Open_EURUSD, -0.576) * MathPow(Open_USDJPY, 0.136) * MathPow(Open_GBPUSD, -0.119) * MathPow(Open_USDCAD, 0.091) * MathPow(Open_USDSEK, 0.042) * MathPow(Open_USDCHF, 0.036); ExtMapBuffer1[i] = USDx; } // 绘制美指均线 for(i = limit; i >= 0; i--) { double r = iMAOnArray(ExtMapBuffer1,0,MAPeriod,0,MODE_SMA,i) ; ExtMapBuffer2[i]=r; } return(0); }