Hatalar, hatalar, sorular - sayfa 2938

 
Hafta sonu alıntı olmadığı için bu, sunucunun geçmişi geri vermediği anlamına mı geliyor? Benim düşünceme göre, bu olası bir varsayım değil, ancak yine de böyle düşünmek için nedenler var, çünkü hafta sonları gösterge ya çalışmıyor ya da TF'ler aracılığıyla sıkıcı ve inatçı geçişlerden sonra ve gösterge giriş parametrelerini değiştirdikten sonra , uzun zamandır beklenen işlem sürdü ayarlar penceresine yerleştirin, ancak herhangi bir ayar için olması gerekirdi.
Торговые советники и собственные индикаторы - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
Торговые советники и собственные индикаторы - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
  • www.metatrader5.com
Среди программ для автоматического трейдинга можно выделить две большие категории: торговые роботы и индикаторы. Первые предназначены для совершения торговых операций на рынках, а вторые — для анализа котировок и выявления закономерностей в их изменении. При этом индикаторы могут использоваться непосредственно в роботах, образуя полноценную...
 
x572intraday :

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.

 
x572intraday :
Hafta sonu alıntı olmadığı için bu, sunucunun geçmişi geri vermediği anlamına mı geliyor? Benim düşünceme göre, bu olası bir varsayım değil, ancak yine de böyle düşünmek için nedenler var, çünkü hafta sonları gösterge ya çalışmıyor ya da TF'ler aracılığıyla sıkıcı ve inatçı geçişlerden sonra ve gösterge giriş parametrelerini değiştirdikten sonra , uzun zamandır beklenen işlem sürdü ayarlar penceresine yerleştirin, ancak herhangi bir ayar için olması gerekirdi.

Sunucu hafta sonları bile tarih veriyor.

İlgili sembolün son işaretine kadar çubukların yapısını kontrol edin

 
Slava :

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.

Документация по MQL5: Константы, перечисления и структуры / Константы индикаторов / Стили рисования
Документация по MQL5: Константы, перечисления и структуры / Константы индикаторов / Стили рисования
  • www.mql5.com
Стили рисования - Константы индикаторов - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 

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ı.

 
Slava :

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)?

 
x572intraday :

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.

 
fxsaber :

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 ...

Виртуальный хостинг для MetaTrader 5
Виртуальный хостинг для MetaTrader 5
  • www.mql5.com
Самый быстрый виртуальный выделенный сервер (VPS) для трейдинга на форексе от производителей терминала MetaTrader 4/5
 
x572intraday :

İ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 .

 
Tüm fiyatlar beşinci ondalık basamağa kadar doğru olarak görüntülenir ve bir nedenden dolayı aynı listedeki bir kişi şu şekilde görüntülemeye karar verdi:
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?
Neden: