Indicators Used
Miscellaneous
0
Views
0
Downloads
0
Favorites
F2a_AO_comm_alert
//+------------------------------------------------------------------+
//| F2a_AO.mq4 |
//| Copyright © 2004, MetaQuotes Software Corp. |
//| http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
//mod
#property copyright "Copyright © 2004, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net/"
#property link "Alert by GOEN"
//+------------+-----------------------------------------------------+
// Bookkeeper: Ïîäïðàâèë íåìíîãî ïî ñâîåìó
// Íåîáõîäèìî íàëè÷èå NavelEMA.mq4
// Presence NavelEMA.mq4 is necessary; opt. 4 eurusd gpbjpy H4
//+------------------------------------------------------------------+
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Lime
#property indicator_color2 Red
extern int MA_Filtr=3;
extern int MA_Fast=13;
extern int MA_Slow=144;
extern int ma_method=1;
extern int ma_price =8;
extern bool WithAlert=false;
extern bool WithComment=true;
extern int arrDist =10;
extern string note__Price ="0C 1O 2H 3L 4Md 5Tp 6WghC: 4Md(HL/2),5Tp(HLC/3),6Wgh(HLCC/4)";
extern string _______ ="7 HA close: haC =(O+H+L+C)/4";
extern string ___ ="8 Navel MA price: nvC =(2O+H+L+5C)/9";
double up_buffer[];
double dn_buffer[];
double ind_buffer[];
double price[];
datetime lastalert=0, lastcomment=0;
//+------------------------------------------------------------------+
int deinit()
{
Comment("");
}
//+------------------------------------------------------------------+
int init()
{
IndicatorBuffers(4);
SetIndexStyle(0,DRAW_ARROW);//
SetIndexStyle(1,DRAW_ARROW);//
SetIndexArrow(0,233);
SetIndexArrow(1,234);
SetIndexEmptyValue(0,0.0);
SetIndexEmptyValue(1,0.0);
SetIndexDrawBegin(0,MA_Slow+2);
SetIndexDrawBegin(1,MA_Slow+2);
if(!SetIndexBuffer(0,up_buffer) &&
!SetIndexBuffer(1,dn_buffer) &&
!SetIndexBuffer(2,ind_buffer) &&
!SetIndexBuffer(3,price))
Print("cannot set indicator buffers!");
return(0);
}
//+------------------------------------------------------------------+
//| Awesome Oscillator |
//+------------------------------------------------------------------+
int start()
{
int limit;
int counted_bars=IndicatorCounted();
double prev, current;
static datetime lastalert;
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
limit=Bars-counted_bars;
for(int i=limit; i>=0; i--)
{
if (ma_price<0 || ma_price>8) ma_price=0;
if (ma_price==7) price[i]=(Close[i]+Open[i]+High[i]+Low[i])/4;
if (ma_price==8) price[i]=(Close[i]*5+Open[i]*2+High[i]+Low[i])/9;
}
for(i=limit; i>=0; i--)
{
if (ma_price<7) { ind_buffer[i] = iMA(NULL,0,MA_Fast, 0,ma_method,ma_price,i)-
iMA(NULL,0,MA_Slow, 0,ma_method,ma_price,i) ;
current = iMA(NULL,0,MA_Filtr,0,ma_method,ma_price,i) ;
prev = iMA(NULL,0,MA_Filtr,0,ma_method,ma_price,i+1);
}
else { ind_buffer[i] = iMAOnArray(price,0,MA_Fast,0,ma_method,i)-
iMAOnArray(price,0,MA_Slow,0,ma_method,i);
current = iMAOnArray(price,0,MA_Filtr,0,ma_method,i) ;
prev = iMAOnArray(price,0,MA_Filtr,0,ma_method,i+1);
}
// ind_buffer[i]=iCustom(NULL,0,"NavelEMA",MA_Fast,0,0,i)-
// iCustom(NULL,0,"NavelEMA",MA_Slow,0,0,i);
// current=iCustom(NULL,0,"NavelEMA",MA_Filtr,0,0,i);
// prev=iCustom(NULL,0,"NavelEMA",MA_Filtr,0,0,i+1);
if(ind_buffer[i]>ind_buffer[i+1] && current>=prev &&
ind_buffer[i+1]<=ind_buffer[i+2])
up_buffer[i]=Low[i]-Point*arrDist;
else up_buffer[i]=0.0;
if(ind_buffer[i]<ind_buffer[i+1] && current<=prev &&
ind_buffer[i+1]>=ind_buffer[i+2])
dn_buffer[i]=High[i]+Point*arrDist;
else dn_buffer[i]=0.0;
}
if(WithAlert==true && lastalert!=Time[0])
{
if (up_buffer[0]>Point)
{
Alert("Buy " +Symbol()+"_"+Period()+" "+
" "+DoubleToStr(MarketInfo(Symbol(),MODE_ASK),Digits)+
" "+TimeToStr(TimeCurrent(),TIME_MINUTES));
lastalert=Time[0];
}
if (dn_buffer[0]>Point)
{
Alert("Sell " +Symbol()+"_"+Period()+
" "+DoubleToStr(MarketInfo(Symbol(),MODE_BID),Digits)+
" "+TimeToStr(TimeCurrent(),TIME_MINUTES));
lastalert=Time[0];
}
}
if(WithComment==true && lastcomment!=Time[0])
{
if (up_buffer[0]>Point)
{
lastcomment=Time[0];
Comment("Buy ",Symbol(),"_",Period()," ",
" "+DoubleToStr(Close[0],Digits));
}
if (dn_buffer[0]>Point)
{
lastcomment=Time[0];
Comment("Sell ",Symbol(),"_",Period(),
" "+DoubleToStr(Close[0],Digits));
}
}
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
---