MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 512

 
Ama onunla nasıl çalışılır? İkinci gün boş yere oturuyorum. Başka nasıl bir çözüm olabilir?
 
soru lütfen OnCalculate (...) işleyicisinde, açık, yüksek, düşük, kapalı arabelleklerin sabitleri, tüm geçmiş için karaktere göre taşar, ne yapmalı? Örneğin, bir çiftin tüm geçmişi için mas[i]= open[i] /close[i] dizisinin değerini kendim hesaplamak ve bu değerin başka bir karakterle ortalamasını almak istiyorum. Bir sürü konuyu kürekledim, biraz benzer. Bana nereye bakacağımı söyle.
 
Juer :
Ama onunla nasıl çalışılır? İkinci gün boş yere oturuyorum. Başka nasıl bir çözüm olabilir?

Tekrarlanabilir bir örneği nerede gösterdiniz? Yalnızca kod parçacıkları sağlarsınız. Bunları kendi takdirimize bağlı olarak çalışma kodunda oluşturmamız gerekiyor mu? Ve eğer tahmin etmezsek ve buna ihtiyacınız yoksa?

 
Artyom Trishkin :

Tekrarlanabilir bir örneği nerede gösterdiniz? Yalnızca kod parçacıkları sağlarsınız. Bunları kendi takdirimize bağlı olarak çalışma kodunda oluşturmamız gerekiyor mu? Ve eğer tahmin etmezsek ve buna ihtiyacınız yoksa?

Peki, bir dizi yapı aracılığıyla değil, nesnenin yapı türünde bir nesne olacağı CArrayObj sınıfı aracılığıyla nasıl doğru bir şekilde yapılır? Nasıl beyan edeceğimi ve nasıl ekleyeceğimi gerçekten anlamıyorum ve bu mümkün mü?

 
Juer :

Peki, bir dizi yapı aracılığıyla değil, nesnenin yapı türünde bir nesne olacağı CArrayObj sınıfı aracılığıyla nasıl doğru bir şekilde yapılır? Nasıl beyan edeceğimi ve nasıl ekleyeceğimi gerçekten anlamıyorum ve bu mümkün mü?

Özel olarak değil, genel olarak görevi tanımlamaya çalışın - bu veya bu verilerle sonunda ne elde etmek istersiniz.

 
mwwm :
soru lütfen OnCalculate(...) işleyicisinde, açık, yüksek, düşük, kapalı arabelleklerin sabitleri tüm geçmiş için sembolle taşıyor , ne yapmalıyım? Örneğin, bir çiftin tüm geçmişi için mas[i]= open[i] /close[i] dizisinin değerini kendim hesaplamak ve bu değerin başka bir sembolle ortalamasını almak istiyorum. Bir sürü konuyu kürekledim, biraz benzer. Bana nereye bakacağımı söyle.
taşma ne demek?
 
Дед пенсионер :
taşma ne demek?

XAUUSD,Daily: OnCalculate ve CopyOpen'da sabitler üzerinden hesaplama yaparken '!2019.mq4' (243,6) içindeki dizi aralık dışında - bunu yapmaya çalıştığımda işlev çağrısına aşırı yüklemelerin hiçbiri uygulanamıyor int fiyatlar1=CopyOpen(Symbol(),0,0,Bars(_Symbol,_Period),open); Yapılar aracılığıyla verilere erişimin organizasyonu çok kafa karıştırıcıdır, hangi noktada OHLC alıntılarının tümü alınır ve daha sonra yalnızca yenileri iOpen(,,,) üzerinde takılır


 
Juer :

Yani hata geçersiz dizi erişimidir.

Yapıda diziler ve dizeler yoktur. Yalnızca bool, tamsayı, çift ve enums.

Affınıza sığınırım. Biraz Tupanul. Burada, elbette, yapmak biraz daha zor olacak:

 bool CCandleRule::GetRulesArray(input_rule &rules_array[])
{
   int nArraySize = ArraySize (rules);
   if ( ArraySize (rules_array) != nArraySize)
       if ( ArrayResize (rules_array, nArraySize) != nArraySize)
         return false ;

   for ( int i = 0 ; i < nArraySize; ++i)
      rules_array[i] = rules[i];
      
   return true ;
}

C++'daki gibi bir vektör değil. Bu nedenle eleman-eleman kopyalama gereklidir. Ayrıca kaynak dizinin boyutları ile hedef dizinin boyutları arasındaki yazışmalara da dikkat etmelisiniz. Bu nedenle, fonksiyon tek satırda elde edilmez. Ve her zaman başarılı olmayacak. Bu nedenle, uygulamasının başarısının onayını iade etmeniz gerektiği ortaya çıktı.

 
mwwm :

XAUUSD,Daily: OnCalculate ve CopyOpen'da sabitler üzerinden hesaplama yaparken '!2019.mq4' (243,6) içindeki dizi aralık dışında - bunu yapmaya çalıştığımda işlev çağrısına aşırı yüklemelerin hiçbiri uygulanamıyor int fiyatlar1=CopyOpen(Symbol(),0,0,Bars(_Symbol,_Period),open); Yapılar aracılığıyla verilere erişimin organizasyonu çok kafa karıştırıcıdır, hangi noktada OHLC tekliflerinin tümü alınır ve daha sonra yalnızca yenileri iOpen(,,,) üzerinde takılır


Geçersiz kılmaz ve var olmayan bir dizine erişiyorsunuz.
 
Artyom Trishkin :
Geçersiz kılmaz ve var olmayan bir dizine erişiyorsunuz.

ve nasıl doğru yapılır?