Özel bir gösterge kullanırken Uzman Danışmanı hızlandırma teorisi (işlev - iCustom) - sayfa 4

 
-Aleks- :

Sahte bir sorun olduğunu anlıyorum.

Gerçek bir projede göstergelerin gerçek frenleriyle karşılaştığınızda, tartışmaya devam etmeye hazır olacağım.

 
-Aleks- :

Beşi için üzücü bir gerçek, ancak geliştiriciler bunun kutsal anlamını açıklamıyor mu?

Görünüşe göre, bu mimariyle ilgili. ilgilenmiyordum.

İlgili bir konu burada tartışıldı - https://www.mql5.com/en/forum/8278

Потребление памяти терминалом
Потребление памяти терминалом
  • www.mql5.com
Для чистоты эксперимента установил голый МТ5 в новую папку, открыл демо-счет на сервере MQ, закрыл все графики, установил "макс. - - Категория: общее обсуждение
 

Topicstarter, göstergelerle çalışmanın temellerini anlamadan ormana tırmanıyor... ancak bilgi kamuya açık (makaleler + Belgeler).

Bu nedenle birçok yanlış soru ve tahmin...

OpenCL kullanılarak oluşturulan göstergeye başka bir bağlantı . Yük video kartına gider.

Doğru, karşılaştırmalı bir hesaplama hızı elde etmek için görev gerçekten "ağır" olmalı ...

 
komposter :

Bu arada, MT4, geçmişin yalnızca bir kısmını hesaplama konusunda mükemmel bir iş çıkarır ve döngü son 1000 çubuktan geçerse ("pencere" 5000 olsa bile) tüm arabellek için belleği tüketmez.

Ancak MT5'te bu sorunla karşılaştım - yalnızca son 100'ü sayılsa bile 50.000 çubuğun tümü için bellek tahsis edildi.

Bundan emin misin?

Her iki platformda da gösterge tamponları , barların tüm nakit geçmişi için otomatik olarak ve aynı şekilde tahsis edilir.

 
Renat :

Bundan emin misin?

Her iki platformda da gösterge tamponları , barların tüm nakit geçmişi için otomatik olarak ve aynı şekilde tahsis edilir.

Yılın son yarısını kontrol etmedim, ancak MT4 ve MT5'te 1000 çubuk çizen aynı gösterge çok farklı miktarda bellek yedi (pencerede çok sayıda çubuk görüntülerken).

Şimdi şüphelendi. Belki bu, burada tartıştığımız nesnelerin önbelleğiyle ilgili bir sorundur - https://www.mql5.com/ru/forum/8278?

Потребление памяти терминалом
Потребление памяти терминалом
  • www.mql5.com
Для чистоты эксперимента установил голый МТ5 в новую папку, открыл демо-счет на сервере MQ, закрыл все графики, установил "макс. - - Категория: общее обсуждение
 
Renat Fatkhullin :

Bundan emin misin?

Her iki platformda da gösterge tamponları , barların tüm nakit geçmişi için otomatik olarak ve aynı şekilde tahsis edilir.

MT4'te bir sorunla karşılaştım - görevi grafiğe bir gösterge koymak, arabelleğinden veri toplamak ve matematiksel hesaplama ve analiz yapmak olan bir komut dosyası var.

Komut dosyasının yerleşik göstergelerle çalışması kusursuz, ancak iCustom aracılığıyla çağrılan göstergelerde işler o kadar iyi değil - terminal için ayrılan bellek (maksimum) hızla tükeniyor ve bunun sonucunda komut dosyası sıfır arabellek değerleri almaya başlıyor göstergeden. Gösterge grafikten çıkarıldığı anda veya tekrar çağrıldıktan sonra, ancak farklı parametrelerle, iCustom aracılığıyla RAM'i zorla temizlemek mümkün müdür?

 
-Aleks- :

MT4'te bir sorunla karşılaştım - görevi grafiğe bir gösterge koymak, arabelleğinden veri toplamak ve matematiksel hesaplama ve analiz yapmak olan bir komut dosyası var.

Komut dosyasının yerleşik göstergelerle çalışması kusursuz, ancak iCustom aracılığıyla çağrılan göstergelerde işler o kadar iyi değil - terminal için ayrılan bellek (maksimum) hızla tükeniyor ve bunun sonucunda komut dosyası sıfır arabellek değerleri almaya başlıyor göstergeden. Gösterge grafikten çıkarıldığı anda veya tekrar çağrıldıktan sonra, ancak farklı parametrelerle, iCustom aracılığıyla RAM'i zorla temizlemek mümkün müdür?

Ve farklı parametrelere sahip kaç tane iCustom oluşturdunuz?

Onlarca ve yüzlerce varsa (öyle görünüyorlar), o zaman dış göstergeler çerçevesinde hiçbir şey yapılamaz. Uzman Danışmanınıza yalnızca bellek tüketmeyen bir hesap birimi olarak dikin.

MetaTrader 5, istenen tüm göstergeler üzerinde tam kontrole sahiptir, ancak orada bile "yüzlerce gösterge oluştur ve sil" oyunu ciddi masraflarla doludur.

 
Renat Fatkhullin :

Ve farklı parametrelere sahip kaç tane iCustom oluşturdunuz?

Onlarca ve yüzlerce varsa (öyle görünüyorlar), o zaman dış göstergeler çerçevesinde hiçbir şey yapılamaz. Uzman Danışmanınıza yalnızca bellek tüketmeyen bir hesap birimi olarak dikin.

MetaTrader 5, istenen tüm göstergeler üzerinde tam kontrole sahiptir, ancak orada bile "yüzlerce gösterge oluştur ve sil" oyunu ciddi masraflarla doludur.

Gösterge tek başına oluşturulur, ardından parametreleri değiştirilir. Göstergenin kendisi, iCustom işlevini başka bir göstergeyle ilgili veri talebiyle kullanır - bunu yapmak daha kolaydı.
Bu paketteki tüm istekleri sayarsak, yaklaşık 7 tampon elde ederiz.
iCustom işlevine sahip diğer göstergeler, ancak daha basit, komut dosyası gıcırdıyor ... toplamda yaklaşık on bin bindirme var. Mevcut gösterge altıncı on geçişte bükülür.
Hafızanın tükendiğini anlıyorum, ancak eski verileri kullanmıyorsak, yeni verilerle doğru doldurma neden olmuyor?

MT4'ün neden bir göstergeyi bellekten kaldırma işlevi yok, uygulanması çok mu zor?

 
Gösterge kopyalarının sayısı fazlaysa, bir Uzman Danışmana entegre edin. Başka çıkış yolu yok.
 
Renat Fatkhullin :
Gösterge kopyalarının sayısı fazlaysa, bir Uzman Danışmana entegre edin. Başka çıkış yolu yok.

Bu bir danışmanla ilgili değil, bir senaryoyla ilgili! Komut dosyası göstergeyi analiz eder. Bu konuda hafızayı boşaltmanın bir yolu var mı? Komut dosyasını birkaç geçişten sonra (gösterge parametrelerindeki değişiklikler ve analizleri) grafiği kapatmak ve açmak için eğitirseniz, bu hafızayı temizlemenize izin verir mi?

Alexander Laur :

Neden bir danışmanda, daha sonra silinmesi gereken, özellikle bir tane değil, bir gösterge oluşturalım ?

EA koduna, hesaplamayı gösterge hesaplamasına benzer hale getirecek bir işlev ekleyin. Bu fonksiyonda, hesaplama için parametreleri kolayca değiştirebilirsiniz ve hafıza taşması olmaz. Ve anladığım kadarıyla ihtiyacınız olmayan tüm çubuklardaki hesaplamadan kaçınılabilir. Ve iCustom() işlevine ihtiyacınız olmayacak.

Sadece dönem için tüm çubuklara ihtiyacım var. Komut dosyası çalışır - belirli bir türdeki göstergeleri analiz etmek için evrenseldir - her gösterge için bir komut dosyası yazmak pahalıdır. Şimdi, derleyici (belirli bir komutta) Uzman Danışmanlara / komut dosyalarına / göstergelere göstergeler koyarsa, başka bir yaşam başlayacak! Ah, rüyalar...

Neden: