Indicators Used
Miscellaneous
0
Views
0
Downloads
0
Favorites
Cross_v2
//+------------------------------------------------------------------+
//| ProjectName |
//| Copyright 2012, CompanyName |
//| http://www.companyname.net |
//+------------------------------------------------------------------+
#property indicator_separate_window
#property indicator_buffers 8
#property indicator_level1 1
#property indicator_color1 White
#property indicator_color2 Red
#property indicator_color3 Teal
#property indicator_color4 Yellow
#property indicator_color5 Blue
#property indicator_color6 Gold
#property indicator_color7 Lime
#property indicator_color8 Green
extern int per=24;
extern int calc=48;
extern int cross=1;
double aud[];
double cad[];
double chf[];
double eur[];
double gbp[];
double jpy[];
double nzd[];
double usd[];
static string sy[28]=
{
"AUDCAD","AUDCHF","EURAUD","GBPAUD","AUDJPY","AUDNZD","AUDUSD",
"CADCHF","EURCAD","GBPCAD","CADJPY","NZDCAD","USDCAD","EURCHF",
"GBPCHF","CHFJPY","NZDCHF","USDCHF","EURGBP","EURJPY","EURNZD",
"EURUSD","GBPJPY","GBPNZD","GBPUSD","NZDJPY","USDJPY","NZDUSD"
};
double Ma[][28];
double Cross[][8];
bool warning=false;
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int init()
{
IndicatorDigits(8);
SetIndexStyle(0,DRAW_LINE);
SetIndexBuffer(0,aud);
SetIndexStyle(1,DRAW_LINE);
SetIndexBuffer(1,cad);
SetIndexStyle(2,DRAW_LINE);
SetIndexBuffer(2,chf);
SetIndexStyle(3,DRAW_LINE);
SetIndexBuffer(3,eur);
SetIndexStyle(4,DRAW_LINE);
SetIndexBuffer(4,gbp);
SetIndexStyle(5,DRAW_LINE);
SetIndexBuffer(5,jpy);
SetIndexStyle(6,DRAW_LINE);
SetIndexBuffer(6,nzd);
SetIndexStyle(7,DRAW_LINE);
SetIndexBuffer(7,usd);
SetIndexLabel(0,"AUD");
SetIndexLabel(1,"CAD");
SetIndexLabel(2,"CHF");
SetIndexLabel(3,"EUR");
SetIndexLabel(4,"GBP");
SetIndexLabel(5,"JPY");
SetIndexLabel(6,"NZD");
SetIndexLabel(7,"USD");
IndicatorShortName("Index("+(string)per+","+(string)calc+","+(string)cross+")");
int element_count1=ArrayResize(Ma, MathMax(calc+1,cross+1));
int element_count2=ArrayResize(Cross, MathMax(calc+1,cross+1));
return(0);
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int deinit()
{
return(0);
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int start()
{
for(int i=0; i<MathMax(calc+1,cross+1); i++)
for(int j=0;j<28;j++)
{
Ma[i][j]=iMA(sy[j],0,per,0,3,1,i);
if(Ma[i][j]==0)
{
Print("Zero value for iMA(",sy[j],"). Check in Market Watch. Calculation stopped.");
if(!warning)
{
Alert("Zero value for iMA(",sy[j],"). Check in Market Watch. Calculation stopped.");
warning=true;
}
return(-1);
}
}
for(i=0;i<MathMax(calc+1,cross+1);i++)
{
//Print("Ma[i][2]=",Ma[i][2]);
//Print("Ma[i][3]=",Ma[i][3]);
Cross[i][0]=Ma[i][0]*Ma[i][1]*(Ma[i][4]/100)*Ma[i][5]*Ma[i][6]/(Ma[i][2]*Ma[i][3]);
Cross[i][1]=Ma[i][7]*(Ma[i][10]/100)/(Ma[i][0]*Ma[i][8]*Ma[i][9]*Ma[i][11]*Ma[i][12]);
Cross[i][2]=(Ma[i][15]/100)/(Ma[i][1]*Ma[i][7]*Ma[i][13]*Ma[i][14]*Ma[i][16]*Ma[i][17]);
Cross[i][3]=Ma[i][2]*Ma[i][8]*Ma[i][13]*Ma[i][18]*(Ma[i][19]/100)*Ma[i][20]*Ma[i][21];
Cross[i][4]=Ma[i][3]*Ma[i][9]*Ma[i][14]*(Ma[i][22]/100)*Ma[i][23]*Ma[i][24]/Ma[i][18];
Cross[i][5]=(100/Ma[i][4])*(100/Ma[i][10])*(100/Ma[i][15])*(100/Ma[i][19])*(100/Ma[i][22])*(100/Ma[i][25])*(100/Ma[i][26]);
Cross[i][6]=Ma[i][11]*Ma[i][16]*(Ma[i][25]/100)*Ma[i][27]/(Ma[i][5]*Ma[i][20]*Ma[i][23]);
Cross[i][7]=Ma[i][12]*Ma[i][17]*(Ma[i][26]/100)/(Ma[i][6]*Ma[i][21]*Ma[i][24]*Ma[i][27]);
}
for(i=0;i<calc;i++)
{
aud[i]=Cross[i][0]/Cross[cross][0];
cad[i]=Cross[i][1]/Cross[cross][1];
chf[i]=Cross[i][2]/Cross[cross][2];
eur[i]=Cross[i][3]/Cross[cross][3];
gbp[i]=Cross[i][4]/Cross[cross][4];
jpy[i]=Cross[i][5]/Cross[cross][5];
nzd[i]=Cross[i][6]/Cross[cross][6];
usd[i]=Cross[i][7]/Cross[cross][7];
}
return(0);
}
//+------------------------------------------------------------------+
Comments
Markdown Formatting Guide
# H1
## H2
### H3
**bold text**
*italicized text*
[title](https://www.example.com)

`code`
```
code block
```
> blockquote
- Item 1
- Item 2
1. First item
2. Second item
---