Hatalar, hatalar, sorular - sayfa 2938
Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Evet, çok iyi hatırlıyorum: OnInit'te önceden sahte geçmiş yüklemeye çalışmak. Yüz tekrarlı bir döngüde bile orada veya OnCalculate'de yardımcı olmadı. Gerçekten nasıl olduğunu bilmiyorum, ama dışarıdan (geç de olsa) vaat edilen bir tarih yüklemesi gözlemlenmedi, sonuç sonuna kadar tatmin edici değildi.
Ayrıca, yanıtın birden çok kez döndürüldüğü başka durumlar da vardı:
ama sonunda, göstergenin devamı yoktu, yanıt olarak sessizlik oldu.
Tekrarlarla döngüler yapmaya gerek yok.
Bu bir göstergeyse, OnCalculate'de istenen dönem sembolü için tek bir istekte bulunun. Eğer işe yaramadıysa, o zaman dön(0)
İstenilen sembolün tik varış zamanını alın, bu zamanı istenilen periyodun başlangıcına normalleştirin, istenilen periyot sembolünün son 1 çubuğunu isteyin ve zamanını kontrol edin. Ardından geçmiş senkronizasyonunun durumunu sorun
Bilgisayar kaynaklarınızın yavaşlığına ve yüküne bağlı olarak yüzden fazla OnCalculate geçebilir.
Bahsettiğiniz kod çok eski. Ama örnekleme için iyidir. Ancak göstergeler için uygun değildir, çünkü göstergelerden gelen geçmiş istekleri herhangi bir bekleme olmaksızın yürütülür (ki bu belgelerde açıkça yazılmıştır) ve göstergelerde uyku işe yaramaz.
Sunucu hafta sonları bile tarih veriyor.
İlgili sembolün son işaretine kadar çubukların yapısını kontrol edin
Bu bir göstergeyse, OnCalculate'de istenen dönem sembolü için tek bir istekte bulunun. İşe yaramadıysa, dön (0)
Peki, başarısızlık durumunda return(false) bir klasiktir. İşte bu yaptığım şey. Her şey yoluna girecek, ancak sorun şu ki, diğer hesaplamalarım geçmişin başarılı bir şekilde yüklenmesine bağlı (ve bu mantık değiştirilemez) ve başarısızlık ve hesaplama işlevinden geri dönüş durumunda, bunlar basitçe gerçekleştirilmeyecek. ve diğer grafik yapılar gerekli koordinatları almayacak, hepsi bu. Bundan nasıl kaçınılır - henüz bir şeyi değiştirme umuduyla gelmedi, beklenmiyor. Şimdiye kadar, şuna sahibim: ya tüm geçmiş yüklendi ve tüm TF'ler için tüm zaman serileri oluşturuldu ve gösterge neredeyse anında ve geri dönüş (yanlış) nedeniyle kaçırılan hesaplamalar olmadan veya geçmişin bir kısmı eksik, dönüş kodu dönüyor daha üst düzey bir işleve ve orada, sonsuz bir döngüde, hiçbir şeye yol açmayan eksik geçmişi istemeye çalışır. Üçüncü seçenekten - geri dönüşü olmayan - ve bazı hesaplamaların başarısız olması nedeniyle, grafiklerin oluşturulmasının daha düşük olduğu ortaya çıktı, basitçe reddettim.
Bir süre tankta oturmaya devam ediyorum, hala kafam karıştı... Eksik olanı indirmeye ve ilgili gecikmelere katlanmaya gerek kalmadan, yalnızca yerel tarihle çalışacak gecikmesiz bir MQL gösterge mantığı düzenlemek mümkün müdür? Veya herhangi bir Kopyalama ... işlevi, geçmişin işlemem gerekmeyen o kısmını sürdürmek için kaçınılmaz olarak sunucuyla bağlantı kurmaya zorlanıyor mu? Basitçe söylemek gerekirse, standart göstergeler herhangi bir devam etmeden PC'de bulunan geçmişe anında çizilir (Örnekler klasöründeki göstergeleri aradım - orada yalnızca CopyBuffer() kullanılır ve hepsinde değil) ... yoksa özgeçmiş gözlerden mi gizleniyor? Ama o zaman ne için?
Teşekkür ederim. Tavsiyelerinizi kesinlikle düşüneceğim - belki benim için faydalı olurlar.
Birkaç saat bilgisayardan uzak kaldım. Bu sırada acil bir durum ortaya çıktı ve robot bir sürü baskı karalamaya başladı. Sonuç olarak, disk tamamen tıkandı. Ve bu, Terminallerin çalışmasını bozar, çünkü. fiyat geçmişlerini diske aktaramazlar.
Diskin bu şekilde tıkanmasını önlemek gereklidir. Bir seçenek, klasöre yazmayı devre dışı bırakmaktır. Onlar. her zaman diskte günlükler olmadan yaşa. Diğeri, çok az boş alan kaldığında günlük dosyalarını öldürmektir.
Bu sorunu çözen varmı.
Bu bir göstergeyse, OnCalculate'de istenen dönem sembolü için tek bir istekte bulunun. İşe yaramadıysa, dön (0)
Ve göstergeyi hafta sonu çalıştırmanız gerekirse?
Zamanlayıcıdan yalnızca zorunlu bir OnCalculate çağrısı (ardından gelen tüm koltuk değnekleri, referans ile geçmek için dizileri kopyalama biçiminde)?
Eksik olanı indirmeye ve ilgili gecikmelere katlanmaya gerek kalmadan yalnızca yerel geçmişle çalışacak şekilde gecikmesiz bir MQL gösterge mantığı düzenlemek mümkün müdür? Veya herhangi bir Kopyalama ... işlevi, geçmişin işlemem gerekmeyen o kısmını sürdürmek için kaçınılmaz olarak sunucuyla bağlantı kurmaya zorlanıyor mu?
Kendi önbelleğinizi oluşturabilirsiniz ( dosyalara yazabilirsiniz ).
Bu bana teklif edildiğinde, tabii ki başımı döndürdüm, ancak MQ'nun zaman serileriyle çalışma yaklaşımını değiştirmesini beklemekten gerçekten daha iyi.
Birkaç saat bilgisayardan uzak kaldım. Bu sırada acil bir durum ortaya çıktı ve robot bir sürü baskı karalamaya başladı. Sonuç olarak, disk tamamen tıkandı. Ve bu, Terminallerin çalışmasını bozar, çünkü. fiyat geçmişlerini diske aktaramazlar.
Diskin bu şekilde tıkanmasını önlemek gereklidir. Bir seçenek, klasöre yazmayı devre dışı bırakmaktır. Onlar. her zaman diskte günlükler olmadan yaşa. Diğeri, çok az boş alan kaldığında günlük dosyalarını öldürmektir.
Bu sorunu çözen varmı.
İlgi uğruna, kontrol etmek için acele ettim ve çenemle yere vurdum: 183 GB! Bu, SSD'min neredeyse 4/5'i. VM görüntüleri daha az yer kaplar. Ama yaşlılıkta okunacak bir şey olacak ...
İlgi uğruna, kontrol etmek için acele ettim ve çenemle yere vurdum: 183 GB! Bu, SSD'min neredeyse 4/5'i. VM görüntüleri daha az yer kaplar. Ama yaşlılıkta okunacak bir şey olacak ...
Yazdırma ve Uyarı, potansiyel olarak tehlikeli işlevlerdir .
Price= 0.7235200000000001
Niye ya? Bu bir hata mı yoksa sonuç tek bir görüşte mi taranmalı? Diyelim ki, PrintFormat 'ohm veya fprint'om tarak, ama prensipte bu sayının yanlış bir temsili değil mi?