//+------------------------------------------------------------------+
//|                                   Stochastic different pairs.mq4 |
//|                      Copyright © 2011, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2011, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

#property indicator_separate_window
#property indicator_minimum 0
#property indicator_maximum 100
#property indicator_level1 20
#property indicator_level2 80
#property indicator_level3 50
#property indicator_buffers 2
#property indicator_color1 DodgerBlue
#property indicator_color2 Red


extern int K = 100;
extern int D = 1;
extern int S = 1;
extern string  FirstSymbol = "";
extern string  SecondSymbol = "GBPUSD";

double buffer1[], buffer2[];
string m="";

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
      m = StringSubstr(Symbol(),6,StringLen(Symbol())-6);
      SecondSymbol = SecondSymbol+m;
      if (FirstSymbol == "" )
         FirstSymbol = Symbol();
      else
         FirstSymbol = FirstSymbol+m;     
//---- indicators
SetIndexBuffer(0,buffer1);
SetIndexStyle(0,DRAW_LINE);
SetIndexLabel(0,FirstSymbol);

SetIndexBuffer(1,buffer2);
SetIndexStyle(1,DRAW_LINE);
SetIndexLabel(1,SecondSymbol);

IndicatorShortName("Stochastic ("+K+","+D+","+S+")  "+FirstSymbol+"  "+SecondSymbol);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   int    i,counted_bars=IndicatorCounted();
   if(counted_bars>0) counted_bars--;
      int limit=Bars-counted_bars;
      
      for(i=limit; i>=0; i--)
         {
            buffer1[i] = iStochastic(FirstSymbol,0,K,D,S,0,0,0,i);
            buffer2[i] = iStochastic(SecondSymbol,0,K,D,S,0,0,0,i);
         }
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+