Hatalar, hatalar, sorular - sayfa 2934

 
Vitaly Muzichenko :

peki, veriler kopyalanmazsa çıkın

İkinci bir onay işareti ile her şey yüklenecek ve kod doğru şekilde çalışacaktır.

Sadece hayır, benim durumumda kod çok yanlış çalışacak, göstergede nesneler konumlarından şeytanın büyükannesine kayacak. Tarihin yüklenmesiyle ilgileneceğim ...

 
Евгений Баженов :

Merhaba, robotumu test ediyorum, test ettikten sonra Journal'da çok sayıda alıntı içeren alan gördüm, bu mesaj paketleri ne anlama geliyor ve görünmemeleri için koda ne ekleyebilirim? Teşekkür ederim mutlu yıllar!

Sembolde işlem seansının teklif seansından daha az olduğunu varsayıyorum. Ardından, teklifler Test Cihazına gider, ancak bu dönemlerde bunlarla işlem yapmak yasaktır.

 
x572intraday :

Delilik şu ki, https://www.mql5.com/ru/docs/series/timeseries_access 'e göre, koddaki yükleme geçmişiyle ilgili makale Sleep()'ten bahsediyor ve Sleep() hakkındaki yardım şöyle diyor: "Uyku () işlevi özel göstergelerden çağrılamaz, çünkü göstergeler arabirim iş parçacığında yürütülür ve onu yavaşlatmamalıdır." Ve geçmişi sadece göstergeye yüklemem gerektiği ortaya çıktı.

Kimin deliliği?

Bir göstergeden (Uzman Danışmandan değil) veri talep edildiğinde, aynı veriler gecikmeden olduğu gibi hemen verilir. Vitaly haklıydı.

istenen geçmişin inşasını başlatmak için OnInit'te istenen dönem sembolü için bir talepte bulunun

 
Slava :

Kimin deliliği?

Bir göstergeden (Uzman Danışmandan değil) veri talep edildiğinde, aynı veriler gecikmeden olduğu gibi hemen verilir. Vitaly haklıydı.

istenen geçmişin inşasını başlatmak için OnInit'te istenen dönem sembolü için bir talepte bulunun

1. Doğru anladıysam, gösterge işleminin en başında OnInit'te yalnızca bir kez istekte bulunmayı öneriyorsunuz. Burada https://www.mql5.com/ru/docs/runtime/event_fire Init olayı, eşlik eden birçok koşulla üst üste gelir: " Bu olay, finansal araç ve/veya grafik periyodu değiştirildikten sonra, yeniden derlendikten sonra da oluşturulur. Program, bir Expert Advisor veya özel bir göstergenin ayarlar penceresinden giriş parametrelerini değiştirdikten sonra MetaEditor'da programlanır. Hesap değiştirildikten sonra Expert Advisor da başlatılır. " Ancak kullanıcı bu olayları oluşturmak zorunda değil, rahat olabilir tek mevcut TF'de oturmak ve göstergeyi izlemek, böylece tarihin bir kereden fazla yeniden başlatılması ve yeniden yüklenmesi olmayacak. Bununla birlikte, tarih eksikliği mutlaka işin başlangıcında meydana gelmez, çalışma sırasında rastgele bir zamanda hata aniden ve tekrar tekrar ortaya çıkar (ayrıca, göstergenin uzun çalışması sırasında hiç görünmeyebilir; genellikle işin başında hiçbir hata oluşmaz). O zaman, tekrar eden bir hatayı önlemek için geçmişin eksik kısmının yalnızca OnInit'e değil, aynı zamanda OnCalculate'e de yüklenmesi gerekiyor?

Yoksa " istenen tarihin inşasını başlat" ile bunu bir kez yapmanın yeterli olduğunu mu demek istediniz?   OnInit ve gelecekte bunu tekrarlamanız gerekmeyecek mi? Bununla birlikte, bir yandan, göstergenin çoklu zaman çerçevesi ve gerçek zamanlı olması nedeniyle, cihazın tüm geçmişi yüklendiğinde ve tüm TF'ler kurulduğunda bile hatanın hala ortaya çıktığını unutmayın; Öte yandan, aynı koşullar altında, hata çıkmayabilir.

2. "Tarihin parçası olmaması" kavramının kendisi ne anlama geliyor? Kurulumdan sonra terminali ilk kez başlattığınızda, eksik geçmişi indirir - kelimenin tam anlamıyla soldaki, zamanında daha erken. CopyTime(_Symbol,tf,0,1,Arr), yani sağdaki en yeni çubuklardan birini kopyalıyorum, tarihsel olanı değil. Yeni çubuk bir şekilde tarih ve onun eksikliği ile ilgili olabilir mi?

3. Belirsiz açıklamalarımın sorunu anlamak için yeterli olmayabileceğini kabul ediyorum, https://www.mql5.com/en/forum/133408 adresine gönderilmek istemiyorum, bu yüzden geliştiricilere sunmaya hazırım ve ortak hata ayıklama için yorum içeren bir kod isteyen herkes, çünkü göstergeyi CodeBase aracılığıyla ücretsiz erişimle ücretsiz olarak yayınlayacağım. Bu arada, bu konuda, hatasız ücretsiz kod yayınlamak kabul edilebilir mi?

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

1. Doğru anladıysam, gösterge işleminin en başında OnInit'te yalnızca bir kez istekte bulunmayı öneriyorsunuz. Burada https://www.mql5.com/ru/docs/runtime/event_fire Init olayı, eşlik eden birçok koşulla üst üste gelir: " Bu olay, finansal araç ve/veya grafik periyodu değiştirildikten sonra, yeniden derlendikten sonra da oluşturulur. Program, bir Expert Advisor veya özel bir göstergenin ayarlar penceresinden giriş parametrelerini değiştirdikten sonra MetaEditor'da programlanır. Hesap değiştirildikten sonra Expert Advisor da başlatılır. " Ancak kullanıcı bu olayları oluşturmak zorunda değil, rahat olabilir tek mevcut TF'de oturmak ve göstergeyi izlemek, böylece tarihin bir kereden fazla yeniden başlatılması ve yeniden yüklenmesi olmayacak. Bununla birlikte, tarih eksikliği mutlaka işin başlangıcında meydana gelmez, çalışma sırasında rastgele bir zamanda hata aniden ve tekrar tekrar ortaya çıkar (ayrıca, göstergenin uzun çalışması sırasında hiç görünmeyebilir; genellikle işin başında hiçbir hata oluşmaz). O zaman, tekrar eden bir hatayı önlemek için geçmişin eksik kısmının yalnızca OnInit'e değil, aynı zamanda OnCalculate'e de yüklenmesi gerekiyor?

Yoksa " istenen tarihin inşasını başlat" ile bunu bir kez yapmanın yeterli olduğunu mu demek istediniz?   OnInit ve gelecekte bunu tekrarlamanız gerekmeyecek mi? Bununla birlikte, bir yandan, göstergenin çoklu zaman çerçevesi ve gerçek zamanlı olması nedeniyle, cihazın tüm geçmişi yüklendiğinde ve tüm TF'ler kurulduğunda bile hatanın hala ortaya çıktığını unutmayın; Öte yandan, aynı koşullar altında, hata çıkmayabilir.

2. "Tarihin parçası olmaması" kavramının kendisi ne anlama geliyor? Kurulumdan sonra terminali ilk kez başlattığınızda, eksik geçmişi indirir - kelimenin tam anlamıyla soldaki, zamanında daha erken. CopyTime(_Symbol,tf,0,1,Arr), yani sağdaki en yeni çubuklardan birini kopyalıyorum, tarihsel olanı değil. Yeni çubuk bir şekilde tarih ve onun eksikliği ile ilgili olabilir mi?
Göstergelerde, istenen verilerin hazır olmadığı durumlarda çıktısını kimse size garanti etmez.

Scriptlerde ve Uzman Danışmanlarda yeterli bir garanti vardır.

Bu nedenle, göstergelerde, veri kullanılabilirliği döngüsünden sonra bekleme döngüsü.

Gerekli verileri elde etme olasılığını artırmak için göstergenin onitinde sahte veri talepleri yapın. Bu, verilerin arka planda indirilmesini tetikleyecektir.
 
Renat Fatkhullin :
Göstergelerde, istenen verilerin hazır olmadığı durumlarda çıktısını kimse size garanti etmez.

Alçak çan kulemden, şu anda en yeni çubuk olduğu için istenen veriler henüz hazır gibi görünüyor. Nasıl hazır olmaz? Grafikte göründüyse, hazırdır.

 
Renat Fatkhullin :
Göstergelerde, istenen verilerin hazır olmadığı durumlarda çıktısını kimse size garanti etmez.

Scriptlerde ve Expert Advisor'larda yeterli bir garanti vardır.

Bu nedenle, göstergelerde, veri kullanılabilirliği döngüsünden sonra bekleme döngüsü.

Serin ... Yeni yılda bile görevde. Yeni Yılın Kutlu Olsun.!!!!!!!

 
x572intraday :

Alçak çan kulemden, şu anda en yeni çubuk olduğu için istenen veriler henüz hazır gibi görünüyor. Nasıl hazır olmaz? Grafikte göründüyse, hazırdır.

Lütfen cevabımı dikkatlice okuyunuz.
 
Renat Fatkhullin :
Lütfen cevabımı dikkatlice okuyunuz.

Veri kullanılabilirliği kavramını tanımlamak gerekir. Terminalde bir çubuk görürsem, zaten mevcut mu yoksa başka seçenekler var mı? Ve evet Renat, peki ya bir önceki yazımın 3. maddesi?

 
x572intraday :

Veri kullanılabilirliği kavramını tanımlamak gerekir. Terminalde bir çubuk görürsem, zaten mevcut mu yoksa başka seçenekler var mı? Ve evet Renat, peki ya bir önceki yazımın 3. maddesi?

Bir işlev yanıtı alırsanız, veriler mevcut değildir.

Aksine kanıtınız varsa, bunu tamamen tutarlı ve teknik olarak tekrarlanabilir bir biçimde sağlamalısınız.