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
Sorunun çözümü EA'da:
Belki ObjectFind() gerekli değildir.
Kodu sorunla birlikte eklemiş olsaydınız, sorun dün çoktan çözülmüş olurdu
Sorun hiç de bu değil.
Bu sorun (OnChartEvent donması ) sadece MT4'te var ve hiç de açık değil. Ben de çok uzun süre işkence gördüm. Ancak bu konu yaklaşık bir yıl önce bu başlıkta zaten tartışılmıştı.
sorun hiç de bu değil.
Bu sorun yalnızca MT4'te var ve hiç de açık değil. Çok uzun bir süre kendime eziyet ettim. Ancak bu konu yaklaşık bir yıl önce zaten tartışılmıştı.
Sorunun ne olduğunu hiç bilmiyorum, sadece neyin neden olduğunu ve nasıl çözüldüğünü yazdım. Ama acı çekmeye devam edebilirsiniz...
Ve sorunun ne olduğunu hiç bilmiyorum, sadece neyin neden olduğunu ve nasıl çözüldüğünü yazdım. Ama acı çekmeye devam edebilirsiniz.
Ve sorunun ne olduğunu hiç bilmiyorum, sadece neyin neden olduğunu ve nasıl çözüldüğünü yazdım. Ama acı çekmeye devam edebilirsiniz.
Deunit sorununun bununla hiçbir ilgisi yoktur. Bu sorun yalnızca MT5'te ortaya çıkar. Ve burada MT4 hakkında konuşuyoruz.
Siz garip bir insansınız.
Kendiniz bir soru sorarken başkalarının kodunuzu ve yüzlerce satırı anlamasını istiyorsunuz, ancak cevabın içine girmeye ve yüz satırlık kodun içine bakmaya bile çalışmıyorsunuz.
Tamam. Hayatı kolaylaştıracağım.
Tüm kodu OnChartEvent'ten OnTimer'a çevirin. Zamanlayıcıyı 30 milisaniyeye ayarlayın. Yalnızca OnChartEvent'te güncellenmesi ve OnTimer ' da sıfırlanması gereken ( bool olan) global değişkenleri (terminal değil) girmeniz gerekecektir .
Değişkenler aşağıdaki gibi olabilir
Benim için o kadar da açık değildi. Daha önce verdiğim linkten sorunun eski olduğunu ve piyasada 10.000'den fazla satışı olan yazarlar tarafından bile birden fazla kez çözüm arandığını öğrendim.
Ve bu, nesneleri olan tüm MT4 Uzman Danışmanları için geçerlidir, bu da çok sayıda kullanıcının bu sorunla karşılaştığı anlamına gelir. Piyasadaki yazarlara yazıyorlar ve çözümü bilmiyorlar. Bu yüzden bu sorunu çözmek çok önemliydi.
GIF'e (uygulanabilirlik kanıtı) baktığımda bu yaklaşımı ürünlerimde uygulamaya kararlıyım. Muhtemelen oturup deneyeceğim ve yarın rapor vereceğim.Benim için bu hiç de açık değildi. Daha önce verdiğim linkten, sorunun eski olduğunu ve piyasada 10.000'den fazla satış yapan yazarlar tarafından bile birden fazla kez çözüm arandığını öğrendim.
Ve bu, nesneleri olan tüm MT4 Uzman Danışmanları için geçerlidir, bu da çok sayıda kullanıcının bu sorunla karşılaştığı anlamına gelir. Piyasadaki yazarlara yazıyorlar ve çözümü bilmiyorlar. Bu yüzden bu sorunu çözmek çok önemliydi.
GIF'e baktığımda bu yaklaşımı ürünlerimde uygulamaya kararlıyım. Muhtemelen yarın oturup deneyeceğim ve rapor vereceğim.Belki aynı şey Uzman Danışman'da da yapılabilir.
Ama gecikme olmadan çalışıyor.
Belki aynı şey EA'da da yapılabilir.
Ama gecikme olmadan çalışıyor.
Öncelikle, teşekkür ederim!
Hmm, verilen kod içinde çalışıyor gibi görünüyor. Ancak yine de EA'larla çakışıyor. Örneğin bununla - https://www.mql5.com/ru/code/35440.
Diğer EA'larla da kontrol ettim. EA'nın kodunu geliştirmeye çalışmalıyım. Sorun hala geçerli.Öncelikle, teşekkür ederim!
Hmm, verilen kod içinde çalışıyor gibi görünüyor. Ancak yine de EA'larla çakışıyor. Örneğin bununla - https://www.mql5.com/ru/code/35440.
Diğer EA'larla da kontrol ettim. EA'nın kodunu geliştirmeye çalışmalıyım. Bu hala bir sorun.Herhangi bir gecikme görmüyorum.
Evet, EA'daki kodu da OnChartEvent 'te hesaplama olmayacak şekilde ayarlamalısınız.
Kural basit:
- olayların ve koordinatların global değişkenleri (terminal değil) OnChartEvent'te doldurulmalıdır, ancak ondan hantal hesaplamalar içeren işlevleri çalıştırmayın .
- Bu tür fonksiyonların tüm çağrıları olay değişkenlerine göre zamanlayıcıdan yapılmalıdır,
- olaylar işlendikten sonra, zamanlayıcıdaki bu olayları sıfırlamayı unutmamalısınız, böylece zamanlayıcının bir sonraki yinelemesinde aynı şeyi tekrar çalıştırmazsınız.
Tekrar ediyorum - bu sadece MT4'te OnChartEvent donmasının bir hatasıdır
Komik olan şey, eğer MQ görünüşte temel olan bu hatayı düzeltirse ( OnChartEventiçinde yaklaşık 10 milisaniye hesaplama varsa donar) ve bir zamanlayıcı yardımıyla çok kolay bir şekilde düzeltilir, o zaman birçok kişi OnChartEvent'in aktif olarak kullanıldığı göstergelerini veya Uzman Danışmanlarını yeniden derledikten sonra her şeyin uçtuğunu fark edecektir :)))
Ya da belki de insanların MT5'e geçmesini sağlamak için yapay bir hatadır; ))))
Herhangi bir gecikme görmüyorum.
Evet, EA'daki kodu da OnChartEvent'te hesaplama olmayacak şekilde ayarlamalısınız.
Kural basit:
- olayların ve koordinatların global değişkenleri (terminal değil) OnChartEvent'te doldurulmalıdır, ancak ondan hantal hesaplamalar içeren işlevleri çalıştırmayın .
- Bu tür fonksiyonların tüm çağrıları olay değişkenlerine göre zamanlayıcıdan yapılmalıdır,
- olaylar işlendikten sonra, zamanlayıcıdaki bu olayları sıfırlamayı unutmamalısınız, böylece zamanlayıcının bir sonraki yinelemesinde aynı şeyi tekrar çalıştırmazsınız.
Tekrar ediyorum - bu sadece MT4'te OnChartEvent donmasının bir hatasıdır
Komik olan şey, eğer MQ görünüşte temel olan bu hatayı düzeltirse ( OnChartEventiçinde yaklaşık 10 milisaniye hesaplama varsa donar) ve bir zamanlayıcı yardımıyla çok kolay bir şekilde düzeltilir, o zaman birçok kişi OnChartEvent'in aktif olarak kullanıldığı göstergelerini veya Uzman Danışmanlarını yeniden derledikten sonra her şeyin uçtuğunu fark edecektir :)))
Ya da belki de insanların MT5'e geçmesini sağlamak için yapay bir hatadır; ))))
Sıradan gösterge kodu iyileştirme yönteminin, nesneleri kullanan kapalı koddaki EA'larla çakışmayı çözemediği ortaya çıktı.
EA'yı iyileştirmenin tüm gösterge tablosu göstergeleriyle (ki bu benim görevim) çatışmayı küresel olarak çözeceğini umuyorum.
MT4 build 1353 başlığında yazdım, belki terminal programcıları dikkat eder.
Not: Baykuşlarda değişiklikler yaptım ve kayaklarda bir şey gitmedi ...
Not: Baykuşları ve kayakların gitmediği bir şeyi düzenledim....
OnChartEvent içinde döngüler ve diğer fonksiyonların çağrıları ile hiçbir şey kalmadığından emin misiniz ?
GetMicrosecondCount() ile OnTimer (veya OnChartEvent ) içinde olanların hesaplama süresini ölçün .