Bu forumda "mql kodu" yayınlamanın herhangi bir işlevini yaratmak mümkün mü? - sayfa 3

 

Ve sıfır sapmanın nasıl bulunacağı/düzeltileceğiyle ilgili bu yazı: https://www.mql5.com/en/forum/general

 

Broker bir rakam daha eklediyse?

https://www.mql5.com/en/forum/179191

 

Nadiren hata

Merhaba millet,

Bir EA kodluyorum ve alışılmadık bir hatayla karşılaştım. Bu yüzden, MT4'teki bu hatayla ilgili yardımınızı rica ediyorum, ki bazılarınızın tüm deneyimlerinize göre zaten aynı şeyle karşılaşmış olabileceğine inanıyorum.

Tüm EA'yı okumak pratik olmayabilir, kaynak kodu çok büyüktür.

Başarılı bir derlemeden sonra, test cihazında MT4 günlüğü aşağıdaki hatayı söylüyor

Zaman: 2011.01.28 23:35:36

Mesaj: 2007.07.13 00:00 InterCandles EURUSDFXF,H4: yığın taşması.

Hatta yığın boyutunu cennete yükselterek

#özellik yığın boyutu 167692160

16MB bellek ayırdığına inanıyorum, hata devam ediyor.

Test cihazında aynı " yığın taşması " sorunuyla karşılaşan var mı veya sorunun MT4'ün dahili mi yoksa EA'da mı (muhtemelen dizide, iç içe bildirimlerde, çok büyük ex4 dosyasında, vb.)

Yardım eliniz için teşekkür ederim ve zamanınızı aldığım için özür dilerim.

Teşekkür ederim.

 

sorunun çözümü

Biri cevap vermeden önce çözümü buldum.

Fonksiyonu kullanmadan önce, test cihazı ekli kitaplığı bağlayan EA'yı yükledikten hemen sonra, günlükte "yığın taşması" mesajı gösterilir.

Ekli dosyada "güç" adlı işlevde sorun bulundu. Sonuçlarım şunlar:

1) Kesinlikle adında bir problem yok; EX4'ün sembol tablosunda MQL fonksiyon çarpışması yok. Diğer etiketler test edildi.

2) Görünüşe göre hiçbir fonksiyon sınırına ulaşılmadı. Sorunlu fonksiyon kaldırıldıktan sonra daha fazla fonksiyon eklendi ve hata oluşmadı. Yalnızca bu işlevi kaldırarak düzgün çalışır, yalnızca MT4 derleyicisi aracılığıyla EX4 dosyasındaki bağlantıyı kaldırmakla kalmaz.

3) Özyineleme birçok çağrı ile yürütülür ve sonuçlar yığında bırakılır. "Üs" argümanı üstel olarak büyüdükçe, yığın doğrusal olarak asimptotik olarak büyür. Potansiyel olarak yığın sınırına ulaşabilir ve taşmaya devam edebilir. "Yığın taşması" hatası, bu işlevin yürütülmesinden bağımsız olarak görünür.

Bu nedenle, MT4 derleyicisinin, EA yürütmesi sırasında potansiyel yığın taşmasını önlemek için dilde izin verilmeyen [bazı sınıfları] özyinelemeyi algılayan bir aygıtı olabilir.

Dosyalar: