MQL4'te Fibonacci seviyeleri - sayfa 6

 
Yardım edin lütfen! Expert Advisor'da bu göstergeden fibonacci satırları nasıl yazılır.Örneğin tek satırda gösteriniz.Yardımlarınız için şimdiden teşekkür ederiz.
Dosyalar:
 
459275 :
Yardım edin lütfen! Expert Advisor'da bu göstergeden fibonacci satırları nasıl yazılır.Örneğin tek satırda gösteriniz.Yardımlarınız için şimdiden teşekkür ederiz.

Kodun bu bölümünü alın:

   double lowest= 1000 , highest= 0 ;
   datetime T1,T2;
   for ( int i=lookback+lastbar;i>lastbar+ 1 ;i--)
   {  
       double curLow0= iLow ( Symbol (), Period (),i- 2 );
       double curLow1= iLow ( Symbol (), Period (),i+ 1 );
       double curLow2= iLow ( Symbol (), Period (),i);
       double curLow3= iLow ( Symbol (), Period (),i- 1 );
       double curLow4= iLow ( Symbol (), Period (),i- 2 );
      
       double curHigh0= iHigh ( Symbol (), Period (),i+ 2 );
       double curHigh1= iHigh ( Symbol (), Period (),i+ 1 );
         double curHigh2= iHigh ( Symbol (), Period (),i);
         double curHigh3= iHigh ( Symbol (), Period (),i- 1 );
         double curHigh4= iHigh ( Symbol (), Period (),i- 2 );
         
       if (curLow2<=curLow1 && curLow2<=curLow1 && curLow2<=curLow0 )
      {
       if (lowest>curLow2){
         lowest=curLow2;
         T2= iTime ( Symbol (), Period (),i);}
      }
      
       if (curHigh2>=curHigh1 && curHigh2>=curHigh3&& curHigh2>=curHigh4)
      {  
         if (highest<curHigh2){
         highest=curHigh2;
         T1= iTime ( Symbol (), Period (),i);}
      }
   
   
   }  

Uzmana yapıştırın. En yüksek ve en düşük değişkenler 0 ve 100 seviyelerini içerecek, kalan seviyeler hesaplanacaktır.

T1 ve T2 zaman değişkenlerinden 0'ın üzerinde 100'ü veya 100'ün üzerinde 0'ı belirleyebilirsiniz.

 
Bu kısmı ekledim ve sonra yeterli beyin yok.
 

Sıfır seviyesine, katsayı ile çarpılan aralığı ekleyin. Aralık, seviye 0 ile 100 arasındaki mesafedir. Fibo ağ seviyelerinin ayarlandığı kodda katsayılar daha düşüktür:

0.236, 0.382, 0.50, 0.618...

Birkaç değişken eklemek daha iyi olur: Level0 ve Level100, onlara T1 VE T2'ye bağlı olarak bir değer atayın:

 if (T1<T2){
   Level0=highest;
   Level100=lowest;
}
else {
   Level100=highest;
   Level0=lowest;
}

Ya da tam tersi:

 if (T1<T2){
   Level100=highest;
   Level0=lowest;
}
else {
   Level0=highest;
   Level100=lowest;
}

denemem lazım))

O zaman sadece seviyeleri hesaplamak için kalır:

Seviye=Seviye0+(Seviye100-Seviye0)*K;

Her seviye için (her K için).

 
Dmitry Fedoseev :

Sıfır seviyesine, katsayı ile çarpılan aralığı ekleyin. Aralık, seviye 0 ile 100 arasındaki mesafedir. Fibo ağ seviyelerinin ayarlandığı kodda katsayılar daha düşüktür:

0.236, 0.382, 0.50, 0.618...

Birkaç değişken eklemek daha iyi olur: Level0 ve Level100, onlara T1 VE T2'ye bağlı olarak bir değer atayın:

Ya da tam tersi:

denemem lazım))

O zaman sadece seviyeleri hesaplamak için kalır:

Seviye=Seviye0+(Seviye100-Seviye0)*K;

Her seviye için (her K için).

 
459275 :

...

Print() , Comment() fonksiyonlarını kullanın, hangi sonucu elde ettiğinizi görün, orijinali ile karşılaştırın. Katsayıların yanlış olduğu açıkça görülse de 100'e bölünmesi gerekir.
 
459275 :

doğru mu yaptın if(T1<T2){

Seviye0 = en yüksek;

Seviye100 = en düşük;

}

başka{

seviye100 = en yüksek;

seviye0 = en düşük;

}

çift K=en düşük-en yüksek;

double Level2=Level0+(Level100-Level0)*23.6;

double Seviye3=Seviye0+(Seviye100-Seviye0)*38.2;

double Level4=Level0+(Level100-Level0)*50.0;

çift Seviye5=Seviye0+(Seviye100-Seviye0)*61.8;

double Seviye6=Seviye0+(Seviye100-Seviye0)*78.6;

 
100'e bölünür. Ve sonra ne yapmalı ve bu seviyelerden gelen sinyalleri nasıl kaydetmeli?
 
459275 :
100'e bölünür. Ve sonra ne yapmalı ve bu seviyelerden gelen sinyalleri nasıl kaydetmeli?

Ve onu nasıl kullanacağınızı sizden başka kimse bilmiyor. İlk önce orijinalle uyumluluğu kontrol etmeniz gerekir.

 
Bu kontrol nasıl yapılır?
Neden: