Hatalar, hatalar, sorular - sayfa 2313
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
Görev temsilci üzerinde hesaplanmaya devam ettiğinde bu bana dizüstü bilgisayarımda oluyor (örneğin, bir pozisyon açarken kodu karıştırdım ve zayıf temsilci ticaret emirleri gönderip gönderdi - ve yanıt olarak yasaklandı, ancak o bombalamaya devam ediyor; sonuç olarak, tüm ajanlar hesaplamaları uzun zaman önce bitirdi ve bu zavallı adam dövüyor ve dövüyor).
Yani kısaca: son görevdeki görev ajana takılır ve ajan onunla savaşmaya devam eder.
Ajanlar bir günden fazla çalışmadığı için bugün benim için tam tersi oldu.
Yetkilendirme ve veri alışverişinde bir tıkanıklık olduğunu düşünüyorum, yani. EA/geçmiş uzun bir süre iletilmezse, istemci yeniden bağlanır ve aracı hala dosyaların gelmesini bekler.Neredeyse üç milyon onay ve sadece 16K OrderSend. Ancak bu ticaret emirleri zamanın üçte birini alır. Ancak her kene üzerinde danışmanda hesaplamalar var.
Bu yüzden soru. OrderSend kodunu bir profil oluşturucuda çalıştırabilir misiniz? Böyle bir fiş hangi yerde var?
Normal işlevi kendi işlevinizle değiştirirseniz, daha hızlı çalışacağını varsayıyorum. Muhtemelen OrderSend'de bazı pahalı kontroller ve hareketler yapılıyor. Örneğin, Expert Advisor'ın (+ göstergeler) herhangi bir yerinde Geçmiş işlevleri ve OnTrade* yoksa, ilgili kayıtların/olayların oluşturulması zaman kaybıdır.
Bazıları için bir koşunun birkaç dakika sürdüğünü anlıyorum. Ancak, yukarıdaki gibi durumlar vardır - yürütme hızına dikkat ederseniz, saniye birimleri. Ve burada Optimizasyon'u üç saat çalıştırdığım ortaya çıktı ve bunların bir saati, ortalama yürütme süresi 69 µs olan OrderSend'dir (ekran görüntüsüne bakın):
Hey,
Metaquotes'tan faydalı bir yanıt aldınız mı?
Performansı artırmak için MT5 Strategy Tester'ı kullanmak isteyen bir müşterim var. EA stratejisi, "Yalnızca Uygun Fiyatlar" modunu kolayca kullanabilir. Ancak MT4 ile 1,5 saniye süren bir geriye dönük test, MT5 ile 5 saniyede tamamlanır!
Strateji, takip eden bir durdurma kullanır ve arka test süresinin %90'ında OrderSend() yöntemini kullanır:
Hey,
Metaquotes'tan faydalı bir yanıt aldınız mı?
Performansı artırmak için MT5 Strategy Tester'ı kullanmak isteyen bir müşterim var. EA stratejisi, "Yalnızca Uygun Fiyatlar" modunu kolayca kullanabilir. Ancak MT4 ile 1,5 saniye süren bir geriye dönük test, MT5 ile 5 saniyede tamamlanır!
Strateji, takip eden bir durdurma kullanır ve arka test süresinin %90'ında OrderSend() yöntemini kullanır:
Tüm cevaplar sadece bu başlıkta verilmiştir. Bir şey yapmışlar gibi görünüyor
Kendisi Sanal aracılığıyla karar verdi.
Tehdit Danışmanınıza gösterin.
Bir şey yapmışlar gibi görünüyor
1930
Sanal
Fark, 1881'den beri olduğu gibi üç kat. Belki başka bir yerde ince ayar yapmışlardır. Ancak OrderSend konuları büyük olasılıkla dokunmadı.
Tüm cevaplar sadece bu başlıkta verilmiştir. Bir şey yapmışlar gibi görünüyor
Kendisi Sanal aracılığıyla karar verdi.
Optimizasyon sırasında her Agent için 128 görevlik paketler oluşturulur. Başka boyutlarda paketler oluşturmak mümkün müdür?
Durum böyle ortaya çıktı
Biri hariç tüm Ajanlar görevlerini tamamladı. Ve Optimizasyonun sonu bir Aracı yüzünden beklemek zorunda. Ancak tüm Ajanların çalışmalarının neredeyse aynı anda tamamlanmasını sağlamak mümkündü.
Örneğin, ekran görüntüsündeki gibi 8 Aracı ve 5376 görevi alın. 5376 / 8 = 672 görev. Bu, her birinde 336 (=672/2), 168 (672/4) veya 84 (672/8) görevlik paketler oluşturmanın mümkün olduğu anlamına gelir. Ve sonra tüm Ajanlar aynı anda bitiş çizgisine gelirdi.
128 değeri bu çokluğu hesaba katmaz. Bu nedenle, birden fazla çekirdek kullanıldığında Optimizasyon süresi artar.
KB olarak derecelendirmek istedim ve işe yaramadı. Ve son yayınların hiç reyting almadığına bakılırsa, bu sorun sadece bende değil.
Aynı zamanda, derecelendirme sisteminin ( basit aritmetik ortalama) arzulanan çok şey bıraktığını kabul etmek istiyorum. Sonuçta, henüz yayınlanan ve derecelendirmede bir 5 yıldızlı derecelendirmeye sahip kod, birkaç yıldır KB'de olan ve 49 5 yıldızlı derecelendirme ve bir 4 yıldızlı derecelendirmeye sahip koddan daha yüksek olacaktır. adil mi?
Benim düşünceme göre, en azından böyle bir formül çok daha adil olurdu:
nerede:
R- istenen derecelendirme
Ortalama- aritmetik ortalama puan
N, derecelendirme sayısıdır.
Optimizasyon sırasında her Agent için 128 görevlik paketler oluşturulur. Başka boyutlarda paketler oluşturmak mümkün müdür?
Durum böyle ortaya çıktı
Biri hariç tüm Ajanlar görevlerini tamamladı. Ve Optimizasyonun sonu bir Aracı yüzünden beklemek zorunda. Ancak tüm Ajanların çalışmalarının neredeyse aynı anda tamamlanmasını sağlamak mümkündü.
Örneğin, ekran görüntüsündeki gibi 8 Aracı ve 5376 görevi alın. 5376 / 8 = 672 görev. Bu, her birinde 336 (=672/2), 168 (672/4) veya 84 (672/8) görevlik paketler oluşturmanın mümkün olduğu anlamına gelir. Ve sonra tüm Ajanlar aynı anda bitiş çizgisine gelirdi.
128 değeri bu çokluğu hesaba katmaz. Bu nedenle, birden fazla çekirdek kullanıldığında Optimizasyon süresi artar.
Genel olarak destekliyorum, ancak aracılar için görevi otomatik olarak iptal etme özelliğini uygulamanın daha doğru olacağını düşünüyorum (aracının etkinliğini devre dışı bırakmak için düğmeye basıldığında zaten uygulanmaktadır), ücretsiz varsa ajanlar ve 5 kat daha fazla görev vardır ve görevlerin kaldırılan sayı da dahil olmak üzere tüm ajanlar arasında yeniden dağıtılması.
Herkese iyi günler! Aptal soru için özür dilerim. Beyler, lütfen bana bunu nasıl yapacağımı söyleyin, böylece düğmeye sol fare düğmesine basıldığında, Pressed özelliği true değerini ve serbest bırakıldığında - false değerini alır. Şimdi durum öyle ki, basıldığında hiçbir şey olmuyor, ancak basıldığında, Basıldığında tam tersi değişiyor.
CButton::OnMouseUp ve CButton::OnMouseDown olay işleyicilerini yeniden tanımlamanız gerektiğini anlıyorum, ancak bunu nerede yapacağımı hayal edemiyorum. İpucu, lütfen. Şimdiden teşekkürler!