Miscellaneous
0
Views
0
Downloads
0
Favorites
F3a_AO
//+------------------------------------------------------------------+
//| F3a_AO.mq4 |
//+------------------------------------------------------------------+
#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
// Íåîáõîäèìî íàëè÷èå TrendForce_3.mq4
// Presence TrendForce_3.mq4 is necessary
//+------------------------------------------------------------------+
#property indicator_chart_window
#property indicator_buffers 4
#property indicator_color1 Green
#property indicator_color2 Red
#property indicator_color3 Green
#property indicator_color4 Red
extern int MaxBars=500;
extern int MA_Filtr=3;
extern int MA_Fast=13;
extern int MA_Slow=144;
extern bool WithAlert=false;
extern bool WithComment=true;
double up_buffer[];
double dn_buffer[];
double up1_buffer[];
double dn1_buffer[];
double ind_buffer[];
datetime lastalert=0, lastcomment=0;
//+------------------------------------------------------------------+
int deinit()
{
Comment("");
}
//+------------------------------------------------------------------+
int init()
{
IndicatorBuffers(5);
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_ARROW,EMPTY,1);//
SetIndexStyle(3,DRAW_ARROW,EMPTY,1);//
SetIndexArrow(2,233);
SetIndexArrow(3,234);
SetIndexEmptyValue(2,0.0);
SetIndexEmptyValue(3,0.0);
SetIndexDrawBegin(0,MA_Slow+2);
SetIndexDrawBegin(1,MA_Slow+2);
SetIndexDrawBegin(2,MA_Slow+2);
SetIndexDrawBegin(3,MA_Slow+2);
if(!SetIndexBuffer(0,up_buffer) &&
!SetIndexBuffer(1,dn_buffer) &&
!SetIndexBuffer(2,up1_buffer) &&
!SetIndexBuffer(3,dn1_buffer) &&
!SetIndexBuffer(4,ind_buffer))
Print("cannot set indicator buffers!");
return(0);
}
//+------------------------------------------------------------------+
//| Awesome Oscillator |
//+------------------------------------------------------------------+
int start()
{
int limit;
int counted_bars=IndicatorCounted();
double prev, current;
double upforce, downforce;
static datetime lastalert;
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
limit=Bars-counted_bars;
if(limit>MaxBars) limit=MaxBars;
for(int i=0; i<limit; i++)
ind_buffer[i]=iCustom(NULL,0,"NavelEMA",MA_Fast,0,0,i)-
iCustom(NULL,0,"NavelEMA",MA_Slow,0,0,i);
for(i=limit; i>=0; i--)
{
current=iCustom(NULL,0,"NavelEMA",MA_Filtr,0,0,i);
prev=iCustom(NULL,0,"NavelEMA",MA_Filtr,0,0,i+1);
upforce=iCustom(NULL,0,"TrendForce_3",MaxBars,false,0,i);
downforce=iCustom(NULL,0,"TrendForce_3",MaxBars,false,1,i);
if(ind_buffer[i]>ind_buffer[i+1] && current>=prev &&
ind_buffer[i+1]<=ind_buffer[i+2])
{
if(upforce>25)
{
up_buffer[i]=0;
up1_buffer[i]=Low[i]-Point*10;
}
else
{
up1_buffer[i]=0;
up_buffer[i]=Low[i]-Point*10;
}
}
else { up_buffer[i]=0.0; up1_buffer[i]=0.0; }
if(ind_buffer[i]<ind_buffer[i+1] && current<=prev &&
ind_buffer[i+1]>=ind_buffer[i+2])
if(downforce<-25)
{
dn_buffer[i]=0;
dn1_buffer[i]=High[i]+Point*10;
}
else
{
dn1_buffer[i]=0;
dn_buffer[i]=High[i]+Point*10;
}
else { dn_buffer[i]=0.0; dn1_buffer[i]=0.0; }
}
if(WithAlert==true && lastalert!=Time[0])
{
if (up_buffer[0]>Point || up1_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 || dn1_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 || up1_buffer[0]>Point)
{
lastcomment=Time[0];
Comment("Buy ",Symbol(),"_",Period()," ",
" "+DoubleToStr(Close[0],Digits));
}
if (dn_buffer[0]>Point || dn1_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
---