S7





//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 Red

extern int    SmoothLength =  5;
extern int    StochLength  = 20;
extern int    StochPrice   =  0;
extern double Sensitivity  = 50.0;

//
//
//
//
//

double bBuffer[];
double smoothCoeffs[];
double smoothDivisor;

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
//
//
//
//
//

#define Pi 3.14159265358979323846264338
int init()
{
   SetIndexBuffer(0, bBuffer); SetIndexDrawBegin(0, StochLength + 1);
   
   //
   //
   //
   //
   //
   
   ArrayResize(smoothCoeffs, SmoothLength);
      smoothCoeffs[0] = 1;
      smoothDivisor   = 1;
      for (int i = 1; i < SmoothLength; i++)
      {
         double temp = i << 1 / Pi;
            smoothCoeffs[i] = MathSin(temp) / temp;
            smoothDivisor  += smoothCoeffs[i];
      }
   return (0);
}

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
//
//
//
//
//

int start()
{
   int counted_bars=IndicatorCounted();
   int i,limit;

   if(counted_bars<0) return(-1);
   if(counted_bars>0) counted_bars--;
         limit = Bars-counted_bars;

   //
   //
   //
   //
   //

   for (i=limit; i >= 0; i--)
   {
      double sum = 0;
         for (int l = 0; l < SmoothLength; l++) sum += iStochastic(NULL,0,StochLength,1,1,MODE_SMA,StochPrice,MODE_MAIN,l+i)*smoothCoeffs[l];

      //
      //
      //
      //
      //

      double temp       = MathMax(MathMin((sum/smoothDivisor - 50.0) / Sensitivity,0.9999),-0.9999);
             bBuffer[i] = MathLog((temp+1.0)/(1.0-temp))/2.0;
   }
   return(0);
}   



Sample





Analysis



Market Information Used:



Indicator Curves created:



Indicators Used:

Stochastic oscillator


Custom Indicators Used:

Order Management characteristics:

Other Features: