EMA ya göre islem açan SuperTrend Sistemi. Kendiniz test ve kontrol edin.

PHP Code:
      var Sistem.GrafikVerileri;
      var 
Factor 2.5f// 1 - 100 arası
      
var Pd 10// 1 -100 arası
      
var EMA Sistem.MA(Pd"Exp""Kapanis");
      var 
atr Sistem.AverageTrueRange(VPd);
      var 
Up Sistem.Liste(0);
      var 
Dn Sistem.Liste(0);
      var 
TrendUp Sistem.Liste(0);
      var 
TrendDown Sistem.Liste(0);
      var 
Trend Sistem.Liste(0);
      var 
Tsl Sistem.Liste(0);

      var 
Sinyal "";
      var 
SonYon "";
      for (
int i 1Sistem.BarSayisii++)
      {

         
Up[i] = EMA[i] - (Factor atr[i]);
         
Dn[i] = EMA[i] + (Factor atr[i]);
         
TrendUp[i] = EMA[i-1] > TrendUp[1] ? Math.Max(Up[i], TrendUp[1]) : Up[i];
         
TrendDown[i] = EMA[i-1] < TrendDown[1] ? Math.Min(Dn[i], TrendDown[1]) : Dn[i];
         
Trend[i] = EMA[i] > TrendDown[1] ? EMA[i] < TrendUp[1] ? -Trend[1];
         
Tsl[i] = Trend[i] == TrendUp[i] : TrendDown[i];

         
//Sinyal Oluşturma
         
if (EMA[i] > Tsl[i])
         {
            
Sinyal "A";
         }
         if (
EMA[i] < Tsl[i])
         {
            
Sinyal "S";
         }
         

         
//Sinyali Sistem Yonüne Aktarma
         
if(Sinyal !="" && SonYon != Sinyal)
         {
            
Sistem.Yon[i] = Sinyal;
            
SonYon Sinyal;
         }

      }

      
Sistem.GetiriHesapla("01/01/2000"0f);

      
Sistem.Cizgiler[0].Deger Tsl;
      
Sistem.Cizgiler[1].Deger EMA;
      
Sistem.Cizgiler[2].Deger Sistem.GetiriKZ;

      
Sistem.Cizgiler[0].Aciklama "Tsl";
      
Sistem.Cizgiler[1].Aciklama "EMA";
      
Sistem.Cizgiler[2].Aciklama "GetiriKZ"