Hatalar, hatalar, sorular - sayfa 548

 
ivandurak :

İyi geceler. Çok çalışmaya yeni başladım. Açık bir hata gibi görünüyor. Gösterge kodu aşağıda verilmiştir. yorum yapmak için bir satır varsa (işaretlidir). protokolün anlamadığı şeyde çalışmaya başlıyor gibi görünüyor. Bununla ilgili belgelerde hiçbir şey bulamadım, dürüstçe aradım.

Raznica dizisine sahip değilsiniz. Bildirildi, ancak kendisine bellek ayrılmadı ve bir gösterge arabelleği değil (bellek, arabellekler için otomatik olarak tahsis edilir).

Tam burada:

   SetIndexBuffer ( 0 ,BaseMaBuffer, INDICATOR_DATA );
   SetIndexBuffer ( 1 ,MaForMaBuffer, INDICATOR_DATA );

derleyiciye BaseMaBuffer ve MaForMaBuffer dizilerinin gösterge arabellekleri olduğunu söylüyorsunuz. Kalan diziler aracılığıyla dağıtılmalıdır

 ArrayResize()
Усреднение ценовых рядов без дополнительных буферов для промежуточных расчетов
Усреднение ценовых рядов без дополнительных буферов для промежуточных расчетов
  • 2010.10.25
  • Nikolay Kositsin
  • www.mql5.com
Статья о традиционных и не совсем традиционных алгоритмах усреднения, упакованных в максимально простые и достаточно однотипные классы. Они задумывались для универсального использования в практических разработках индикаторов. Надеюсь, что предложенные классы в определенных ситуациях могут оказаться достаточно актуальной альтернативой громоздким, в некотором смысле, вызовам пользовательских и технических индикаторов.
 
ivandurak :

İyi geceler. Çok çalışmaya yeni başladım. Bu bariz bir hata gibi görünüyor. Gösterge kodu aşağıda verilmiştir. altta bir satır varsa (işaretlidir) yorum yapın. protokolün anlamadığı şeyde çalışmaya başlıyor gibi görünüyor. Raznica[] dizisine açık bir boyut verilerek durum aşılabilir. Bununla ilgili belgelerde hiçbir şey bulamadım, dürüstçe aradım.

Hata yok, dinamik diziler için işlevi kullanarak boyutu ayarlamak gerekir

 int    ArrayResize (
   void   array[],               // массив, переданный по ссылке
   int    new_size,             // новый размер массива
   int    reserve_size= 0          // резервное значение размера (избыточное)
   );

İşlev yalnızca dinamik dizilere uygulanabilir. Aynı zamanda, SetIndexBuffer() işlevi tarafından gösterge arabellekleri olarak atanan dinamik dizilerin boyutunu değiştiremeyeceğinizi unutmayın. Gösterge arabellekleri için, tüm yeniden boyutlandırma işlemleri, terminalin yürütme alt sistemi tarafından gerçekleştirilir.


 
Her şeyi anladım, yetkin bir tokat için teşekkürler. Diğer bir soru da, dizi yeniden boyutlandırılırsa verilere ne olacağıydı. Ayrıca, bir zaman serisinde olduğu gibi, yalnızca dinamik bir dizi için indeksleme yönünü de değiştirebilirsiniz.
Документация по MQL5: Основы языка / Типы данных / Объект динамического массива
Документация по MQL5: Основы языка / Типы данных / Объект динамического массива
  • www.mql5.com
Основы языка / Типы данных / Объект динамического массива - Документация по MQL5
 
ivandurak :
Her şeyi anladım, yetkin bir tokat için teşekkürler. Diğer bir soru da, dizi yeniden boyutlandırılırsa verilere ne olacağıydı. Ayrıca, bir zaman serisinde olduğu gibi, yalnızca dinamik bir dizi için indeksleme yönünü de değiştirebilirsiniz.

Bilinmeyeni azaltır ve sonra geri yüklerseniz, veriler yerinde kalır (sonuç tanımsızdır).

Bu arada, indekslemenin yönü sadece indekslere yapılan başvuruyu değiştirir.Dizi aynı yönde dağıtılır.

Yani, dizi yeniden bölümlendirilerek veriler kaydırılamaz.

 

Bu zaten bildirildi, ancak test cihazı, kullanıcı tarafından belirlenen depozitonun başlangıç değerini sürekli olarak 10.000 ABD Doları olarak sıfırlar.

Mevcut başlangıç değerleri seti oldukça eğridir. En az 1000$ ekleyin.

523 inşa

Windows XP

 
Öyleydi ya da bir şey bozuldu ... Genel olarak, torun olmayanlarda korumalı bir yönteme ücretsiz erişime izin verilir
 #include <Arrays/List.mqh>
//---------------------------------------
class CBasket;

class CFruit: public CObject {
private :
         double _weight;
protected :
         double GetWeight(){ return _weight;}     
public :
        CFruit( double weight){_weight = weight;};
        ~CFruit(){};
};
//---------------------------------------
class CBasket {
private :
        CList _fruits;
protected :
public :
        CBasket(){};
        ~CBasket(){};
         double Weight() {
                 double weight = 0 ;
                 for (CFruit* f = _fruits.GetFirstNode(); f != NULL ; f = _fruits.GetNextNode()) {
                        weight += f.GetWeight(); //свободный вызов protected метода другого класса
                }
                 return weight;
        }
        
         void Attach(CFruit* f) {
                _fruits.Add(f);
        }
};
//---------------------------------------
int OnInit () {
        CBasket* b = new CBasket();
        
        CFruit* f1 = new CFruit( 3.5 );
        CFruit* f2 = new CFruit( 6.5 );
        b.Attach(f1);
        b.Attach(f2);
         Print (b.Weight());
      
   return ( 0 );
}
//---------------------------------------
 

Optimizasyondan sonra sonuçların olduğu dosya açılmıyor ,

527 + Office 2007'yi oluşturun

Hata günlüğünde bu tür veriler


"Tablo"da XML hatası
Sebep: Yanlış değer
Dosya: C:\Users\Dragon\Desktop\ReportOptimizer-957640.xml
Grup: Hücre
Etiket: Veri
Değer: 17976931348623157000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000

"Tablo"da XML hatası
Sebep: Yanlış değer
Dosya: C:\Users\Dragon\Desktop\ReportOptimizer-957640.xml
Grup: Hücre
Etiket: Veri
Değer: 17976931348623157000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000

"Tablo"da XML hatası
Sebep: Yanlış değer
Dosya: C:\Users\Dragon\Desktop\ReportOptimizer-957640.xml
Grup: Hücre
Etiket: Veri
Değer: 17976931348623157000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000

"Tablo"da XML hatası
Sebep: Yanlış değer
Dosya: C:\Users\Dragon\Desktop\ReportOptimizer-957640.xml
Grup: Hücre
Etiket: Veri
Değer: 17976931348623157000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000

"Tablo"da XML hatası
Sebep: Yanlış değer
Dosya: C:\Users\Dragon\Desktop\ReportOptimizer-957640.xml
Grup: Hücre
Etiket: Veri
Değer: 17976931348623157000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000

vb.

 

Bence bu sana boş bir değer veriyor.

Okuyabilirsin

https://www.mql5.com/ru/docs/constants/namedconstants/otherconstants

BOŞ_VALUE

Gösterge arabelleğinde boş değer

DBL_MAX

DBL_MAX

Çift tip tarafından temsil edilebilecek maksimum değer

1.7976931348623158e+308

Документация по MQL5: Стандартные константы, перечисления и структуры / Именованные константы / Прочие константы
Документация по MQL5: Стандартные константы, перечисления и структуры / Именованные константы / Прочие константы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Именованные константы / Прочие константы - Документация по MQL5
 
Vigor :
Öyleydi ya da bir şey bozuldu ... Genel olarak, torun olmayanlarda korumalı bir yönteme ücretsiz erişime izin verilir

Mesaj için teşekkürler, hata düzeltildi, düzeltme bir sonraki derlemeye dahil edilecek.
 
Karlson :

Bence bu sana boş bir değer veriyor.

Okuyabilirsin

https://www.mql5.com/ru/docs/constants/namedconstants/otherconstants

BOŞ_VALUE

Gösterge arabelleğinde boş değer

DBL_MAX

DBL_MAX

Çift tip tarafından temsil edilebilecek maksimum değer

1.7976931348623158e+308

Ve boş değerler dosyaya nasıl girebilir? Test cihazı penceresinde normal optimizasyon sonuçları vardır.