Göstergeler: Bollinger Bandwidth 1.0 for MetaTrader 5

 

Bollinger Bandwidth 1.0 for MetaTrader 5:

Gösterge, Bollinger Bantları ® arasındaki mesafeyi ölçer ve Bollinger hesaplamalarını basitleştirmek için MetaTrader 5 tekniklerini kullanarak bunu tekil bir gösterge olarak sağlar.

Bollinger Bandwidth 1.0 for MetaTrader 5

Author: Larry

 
Automated-Trading писал(а)  :

MT5 için Bollinger Bant Genişliği 1.0:

Yazar: Larry

BB'ler arasındaki mesafe = 2 * RMS...
 

Sonunda, BollingerBand ile birkaç yıl ticaret yaptıktan sonra ... Şimdi Üst-Alt BB Aralığını hesaplamak için bu basit ve kullanışlı göstergeyi buldum.....

Ana çiftte harika çalışıyor ancak 4 basamaklı brokerde JPY'ye (EURJPY ve USDJPY) eklendiğinde hala hata var,,,,, genişlik değeri yanlış.

Umarım bu sorunu düzeltmek için v2.0 olacaktır.

Dosyalar:
JPY_Value.jpg  38 kb
 

Merhaba Larry, gösterge için teşekkürler. Tüm verileri her zaman kopyalamamanızı tavsiye ederim, çünkü bu büyük performans dezavantajına yol açar.

İşte OnCalculate() yönteminizin yeniden gözden geçirilmiş bir kopyası:


  {
//--- değişkenler
   double upper_band[];
   double lower_band[];

// --- Dizileri dinamik seri dizilerine dönüştürün 
// ArraySetAsSeries(lower_band,true);
// ArraySetAsSeries(upper_band,true);
// ArraySetAsSeries(BBandwidthBuffer,true);

//--- tüm verilerin hesaplanıp hesaplanmadığını kontrol edin
   if(BarsCalculated(BBHandle)<rates_total) return(0);
//--- tüm verileri kopyalayabiliriz
   
   int barstocopy = 0;
   if(prev_calculated>rates_total||prev_calculated<=0) {
      barstocopy = rates_total;
   } else {
      barstocopy = rates_total-prev_calculated;
      if(prev_calculated>0) barstocopy++;
   }

   if(IsStopped()) return(0);
   
   if(CopyBuffer(BBHandle,1,0,barstocopy,upper_band) <=0) return(0);
   if(CopyBuffer(BBHandle,2,0,barstocopy,lower_band) <=0) return(0);

   for(int i=0;i<barstocopy-1;i++)
     {
         BBandwidthBuffer[i]=upper_band[i]-lower_band[i];
     }

//--- sonraki çağrı için prev_calculated değerini döndürür
   return(rates_total);
  }
 
Merhaba, şu formülle bir versiyon hazırladım: bant genişliği = (( üst bant - alt bant ) / orta bant ) * 100
Dosyalar: