MQL5 - Language of trade strategies built-in the MetaTrader 5 client terminal

Source code library - Expert Advisors, Indicators and Scripts

Publish a Trading Robot in MQL5 Code Base and Let Millions of Traders Know About You
To post a new code, please log in or register

Interesting script?
So post a link to it -
let others appraise it

You liked the script? Try it in the MetaTrader 5 terminal

2008.01.08 10:26
SilverTrend_Signal

SilverTrend_Signal - indicator for MetaTrader 4

| English Spanish Portuguese Russian Chinese

Views:
5322
Rating:
Author: Ramdass - Conversion only

Indicator SilverTrend Signal.



Last comments | Go to discussion (2)
MQL4 Comments
mql4_comments | 10 Jan 2008 at 13:02
how do i stop this indicator from giving so many audible signals and also so many Alerts in the Alert window....dont mind the arrows coming and going but the alert window and sound is driving me crazy. thanks
FXIA
FXIA | 18 Jul 2008 at 01:04
Samlup:
how do i stop this indicator from giving so many audible signals and also so many Alerts in the Alert window....dont mind the arrows coming and going but the alert window and sound is driving me crazy. thanks

This may work. I am not an MQL coder so not sure if it will effect its functionality or if I did this right.



Here is the version with NO alert.



//+------------------------------------------------------------------+
//| SilverTrend_Signal.mq4                                           |
//| Ramdass - Conversion only                                        |
//+------------------------------------------------------------------+
#property copyright "SilverTrend  rewritten by CrazyChart"
#property link      "http://viac.ru/"
//----
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Aqua
#property indicator_color2 Violet
//---- input parameters
extern int RISK=3;
extern int CountBars=350;
int SSP=9;
int counter=0;
//---- buffers
double val1[];
double val2[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
   string short_name;
//---- indicator line
   IndicatorBuffers(2);
   SetIndexStyle(0,DRAW_ARROW);
   SetIndexArrow(0,233);
   SetIndexStyle(1,DRAW_ARROW);
   SetIndexArrow(1,234);
   SetIndexBuffer(0,val1);
   SetIndexBuffer(1,val2);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| SilverTrend_Signal                                               |
//+------------------------------------------------------------------+
int start()
  {
   if (CountBars>=Bars) CountBars=Bars;
   SetIndexDrawBegin(0,Bars-CountBars+SSP);
   SetIndexDrawBegin(1,Bars-CountBars+SSP);
   int i,shift,counted_bars=IndicatorCounted();
   int i1,i2,K;
   double Range,AvgRange,smin,smax,SsMax,SsMin,price;
   bool uptrend,old;
//----
   if(Bars<=SSP+1) return(0);
//---- initial zero
   if(counted_bars<SSP+1)
     {
      for(i=1;i<=SSP;i++) val1[CountBars-i]=0.0;
      for(i=1;i<=SSP;i++) val2[CountBars-i]=0.0;
     }
//----
   K=33-RISK;
   for(shift=CountBars-SSP; shift>=0; shift--)
     {
      Range=0;
      AvgRange=0;
      for(i1=shift; i1<=shift+SSP; i1++)
        {AvgRange=AvgRange+MathAbs(High[i1]-Low[i1]);
        }
      Range=AvgRange/(SSP+1);
//----
      SsMax=High[shift]; SsMin=Low[shift];
      for(i2=shift;i2<=shift+SSP-1;i2++)
        {
         price=High[i2];
         if(SsMax<price) SsMax=price;
         price=Low[i2];
         if(SsMin>=price)  SsMin=price;
        }
      smin=SsMin+(SsMax-SsMin)*K/100;
      smax=SsMax-(SsMax-SsMin)*K/100;
      val1[shift]=0;
      val2[shift]=0;
      if (Close[shift]<smin)
        {
         uptrend=false;
        }
      if (Close[shift]>smax)
        {
         uptrend=true;
        }
      if (uptrend!=old && uptrend==true)
        {
         val1[shift]=Low[shift]-Range*0.5;
         counter=0;

           {
 
           }
        }
      if (uptrend!=old && uptrend==false)
        {
         counter=0;
         val2[shift]=High[shift]+Range*0.5;

           {
           
           }
        }
      Comment(shift);
      old=uptrend;
     }
   return(0);
  }
//+------------------------------------------------------------------+





Just open your existing copy and paste this over it and press compile and it will be the same as this one then.



'Ring Tone'