Indicators Used
Miscellaneous
0
Views
0
Downloads
0
Favorites
SRCx2MA_arr
//+------------------------------------------------------------------+
//| arrSRCx2MA.mq4 |
//+------------------------------------------------------------------+
// Íåîáõîäèìî íàëè÷èå SRCma.mq4
// Presence SRCma.mq4 is necessary
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, Bookkeeper"
#property link "yuzefovich@gmail.com"
//----
#property indicator_chart_window
#property indicator_buffers 4
#property indicator_color1 Blue
#property indicator_color2 Red
#property indicator_color3 Blue
#property indicator_color4 Red
//----
extern int IndPeriod1=3;
extern int IndPeriod2=10;
extern int CalculatedBars=500;
extern int rangeN=14;
extern int MAPeriod=13;
double up_buffer1[];
double dn_buffer1[];
double up_buffer2[];
double dn_buffer2[];
double ind_buffer1[];
double ind_buffer2[];
double ind_buffer3[];
//+------------------------------------------------------------------+
int init()
{
IndicatorBuffers(7);
SetIndexStyle(0,DRAW_ARROW);
SetIndexStyle(1,DRAW_ARROW);
SetIndexArrow(0,233);
SetIndexArrow(1,234);
SetIndexEmptyValue(0,0.0);
SetIndexEmptyValue(1,0.0);
SetIndexStyle(2,DRAW_HISTOGRAM,EMPTY,2);
SetIndexStyle(3,DRAW_HISTOGRAM,EMPTY,2);
SetIndexBuffer(0,up_buffer1);
SetIndexBuffer(1,dn_buffer1);
SetIndexBuffer(2,up_buffer2);
SetIndexBuffer(3,dn_buffer2);
SetIndexBuffer(4,ind_buffer1);
SetIndexBuffer(5,ind_buffer2);
SetIndexBuffer(6,ind_buffer2);
return(0);
}
//+------------------------------------------------------------------+
int deinit()
{
return(0);
}
//+------------------------------------------------------------------+
int start()
{
int limit, i, counted_bars = IndicatorCounted();
if(counted_bars < 0)
return(-1);
if(counted_bars > 0)
counted_bars--;
limit = Bars - counted_bars;
if(CalculatedBars<500) CalculatedBars=500;
if(limit>CalculatedBars) limit=CalculatedBars;
for(i=limit;i>=0;i--)
{
double Ind1=iCustom(NULL,0,"SRCma",CalculatedBars+IndPeriod2+1,rangeN,IndPeriod1,1,i);
double Ind2=iCustom(NULL,0,"SRCma",CalculatedBars+IndPeriod2+1,rangeN,IndPeriod2,1,i);
ind_buffer2[i]=Ind1-Ind2;
ind_buffer3[i]=iMAOnArray(ind_buffer2,0,MAPeriod,0,MODE_SMA,i);
ind_buffer1[i]=ind_buffer2[i]-ind_buffer3[i];
if(ind_buffer1[i]>0 && ind_buffer1[i+1]<=0)
{
dn_buffer1[i]=0;
dn_buffer2[i]=0;
up_buffer1[i]=Low[i];
up_buffer2[i]=0;
}
if(ind_buffer1[i]<0 && ind_buffer1[i+1]>=0)
{
up_buffer1[i]=0;
up_buffer2[i]=0;
dn_buffer1[i]=High[i];
dn_buffer2[i]=0;
}
if((ind_buffer1[i]>0 && ind_buffer1[i+1]>0) ||
(ind_buffer1[i]<0 && ind_buffer1[i+1]<0))
{
dn_buffer1[i]=0;
dn_buffer2[i]=0;
up_buffer1[i]=0;
up_buffer2[i]=0;
}
}
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
---