![MQL5 - Language of trade strategies built-in the MetaTrader 5 client terminal](https://c.mql5.com/i/registerlandings/logo-2.png)
You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
Dear Mladen
We need to make sure that the experts found a mistake ask you to reform
Greetings to you dear
Dear Mladen
We need to make sure that the experts found a mistake ask you to reform
Greetings to you dear
As far as mql is concerned, there is no error - the 4 warnings are benign
thank you my dear
mladen,
can you take a look on this indi?. I applied it on chart but nothing happens.
mladen,
can you take a look on this indi?. I applied it on chart but nothing happens.
Try now,hope it will be work.
Try now,hope it will be work.
Hello. The indicator is not updated on the chart without autorefresh or switching timeframe. Get it fixed please
Try it out now
//======**********************************=======
//======**********************************=======
//======**********************************=======
//===============================================
#property indicator_chart_window
#property indicator_buffers 5
#property indicator_color3 Blue
#property indicator_color4 Red
#property indicator_width3 1
#property indicator_width4 1
extern int MoveShift = 25;
extern int MAPeriod = 9 ;
extern int OsMA = 4 ;
extern int Dist2 = 20 ;
extern double Std = 0.5 ;
extern int BPeriod = 20 ;
extern bool alertsOn = true;
extern bool alertsOnCurrent = false;
extern bool alertsMessage = true;
extern bool alertsSound = true;
extern bool alertsNotify = true;//false;
extern bool alertsEmail = false;
extern double arrowGap = 0.5;
double ExtMapBuffer1[];
double ExtMapBuffer2[];
double ExtMapBuffer3[];
double ExtMapBuffer4[];
double ExtMapBuffer5[];
//-------------------
int init()
{
IndicatorBuffers(5);
SetIndexBuffer(0,ExtMapBuffer1);
SetIndexStyle(1,DRAW_LINE);
SetIndexBuffer(1,ExtMapBuffer2);
SetIndexStyle(2,DRAW_ARROW);
SetIndexArrow(2,233);
SetIndexBuffer(2,ExtMapBuffer3);
SetIndexStyle(3,DRAW_ARROW);
SetIndexArrow(3,234);
SetIndexBuffer(3,ExtMapBuffer4);
SetIndexBuffer(4,ExtMapBuffer5);
return(0);
}
int deinit()
{return(0);}
//----------------------------------------
int start()
{
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
int limit=Bars-counted_bars;
double OsMA_Now, OsMA_Pre;
for(int i=limit; i>=0; i--)
{
double MAUP1 = iMA(NULL,0,MAPeriod,-MoveShift,MODE_SMA,PRICE_HIGH,i);
double BB_UP = iBands(NULL,0,BPeriod,Std,0,PRICE_HIGH,MODE_UPPER,i);
double MA_HIGH = iMA(NULL,0,4,0,MODE_SMA,PRICE_HIGH,i);
double MADN1 = iMA(NULL,0,MAPeriod,-MoveShift,MODE_SMA,PRICE_LOW,i);
double BB_DN = iBands(NULL,0,BPeriod,Std,0,PRICE_LOW ,MODE_LOWER,i);
double MA_LOW = iMA(NULL,0,4,0,MODE_SMA,PRICE_LOW,i);
ExtMapBuffer1[i]=EMPTY_VALUE;
ExtMapBuffer2[i]=EMPTY_VALUE;
if (MAUP1>BB_UP) {ExtMapBuffer1[i]=MAUP1+Dist2*Point; BB_UP=EMPTY_VALUE ;}
else if (MAUP1<BB_UP) {ExtMapBuffer1[i]=BB_UP ; MAUP1=EMPTY_VALUE ;}
//--------------------------------------------------------------------
if( MADN1 >0.0 )
{
if ( MADN1<BB_DN) {ExtMapBuffer2[i]=MADN1-Dist2*Point; BB_DN=EMPTY_VALUE ;}
else if (MADN1>BB_DN) { ExtMapBuffer2[i]=BB_DN ; MADN1=EMPTY_VALUE ; }
}
if (MADN1 ==0.0 ) { ExtMapBuffer2[i]=BB_DN; MADN1=EMPTY_VALUE ;}
//------------------------------------------------------------
OsMA_Now = iOsMA(NULL,0,5,9,OsMA,PRICE_HIGH,i) ;
OsMA_Pre = iOsMA(NULL,0,5,9,OsMA,PRICE_LOW,i+1) ;
//-------------------
ExtMapBuffer3[i] = EMPTY_VALUE;
ExtMapBuffer4[i] = EMPTY_VALUE;
if((OsMA_Now>0 && OsMA_Pre<0)&&(MA_LOW < ExtMapBuffer2[i]) && (Low[i] < ExtMapBuffer2[i]) )
{
ExtMapBuffer3[i] = Low[i]-arrowGap*iATR(NULL,0,10,0);
}
if((OsMA_Now<0 && OsMA_Pre>0) && (MA_HIGH > ExtMapBuffer1[i]) && (High[i] > ExtMapBuffer1[i]) )
{
ExtMapBuffer4[i] = High[i]+arrowGap*iATR(NULL,0,10,0);
}
ExtMapBuffer5[i] = (ExtMapBuffer1[i] +ExtMapBuffer2[i])/2.0 ;
}
if (alertsOn)
{
if (alertsOnCurrent)
int whichBar = 0;
else whichBar = 1;
if (ExtMapBuffer3[whichBar] != EMPTY_VALUE) doAlert("siignal up");
if (ExtMapBuffer4[whichBar] != EMPTY_VALUE) doAlert("siignal down");
}
return(0);
RefreshRates();
}
//--------------------------------
//------------------------------------------------------------------
//
//------------------------------------------------------------------
//
//
void doAlert(string doWhat)
{
static string previousAlert="nothing";
static datetime previousTime;
string message;
if (previousAlert != doWhat || previousTime != Time[0]) {
previousAlert = doWhat;
previousTime = Time[0];
message = StringConcatenate(Symbol()," at ",TimeToStr(TimeLocal(),TIME_SECONDS)," V-rod ",doWhat);
if (alertsMessage) Alert(message);
if (alertsNotify) SendNotification(message);
if (alertsEmail) SendMail(StringConcatenate(Symbol()," V-rod "),message);
if (alertsSound) PlaySound("alert2.wav");
}
}
I posted wrong title.
-----
Hi,
Fractallevels mt5 indicator doesn't occur new fractals. When i change timeframe, new fractal genrated. How can i fix this problem?
Thanks.