Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret 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
PositionSelect()'in istemci tarafını mı yoksa sunucu tarafını mı kontrol ettiğini sorabilir miyim?
Sorunun, sunucunun (aracı tarafının) isteği işlediği ve istemci tarafını güncellemediği gecikmeden kaynaklandığına dair güçlü bir his var, bu yüzden PositionSelect() yeniden çalışıyor
CTrade vs MqlTradeRequest yöntemini kullandığımızda hiçbir fark olmadığını ve Sleep işlevinin, PositionSelect() tekrar çift girişe neden olarak tekrar çalışmadan önce müşteri tarafımızın "güncellenmesi" için her şeyi geciktirmeye yardımcı olması gerektiğini kuvvetle hissediyorum. Günlük sekmesinden kontrol ediyorum, > 2013.12.20 08:35:00 ticaret '800****': 313 ms'de yürütme için yerleştirilen piyasada 0,01 EURUSD döviz alışı <
400'den fazla uyumak güvenli olmalı ???
Ne düşünüyorsun?
"Sorunun, sunucunun (aracı tarafı) isteği işlediği ve istemci tarafını güncellemediği zamandaki gecikmeden kaynaklandığına dair güçlü bir his var, bu yüzden PositionSelect() yeniden çalışıyor"
Ayrıca çift girişin sebebinin bu olduğunu düşünüyorum. Kodumda, mevcut konum boyutu izin verilen maksimum konum boyutuna eşit veya daha büyükse yeni bir sipariş göndermek teorik olarak imkansız, bu nedenle PositionSelect() geçerli konumun durumunu zamanında almadığında, EA'm gönderecek tekrar yeni bir düzende.
"400'den fazla uyku koymak güvenli olmalı ??? "
Zaman aralığı ne kadar büyük olursa o kadar iyi ama bir sorun var. Pozisyonunuzu iki adımda (UZUN'dan KISA'ya veya KISA'dan UZUN'a) çevirirseniz, bu ekstra zaman gecikmesi, özellikle makro ekonomik olay sırasında, kötü bir uygulama fiyatının nedeni olabilir.
"Sorunun, sunucunun (aracı tarafı) isteği işlediği ve istemci tarafını güncellemediği zamandaki gecikmeden kaynaklandığına dair güçlü bir his var, bu yüzden PositionSelect() yeniden çalışıyor"
Ayrıca çift girişin sebebinin bu olduğunu düşünüyorum. Kodumda, mevcut konum boyutu izin verilen maksimum konum boyutuna eşit veya daha büyükse yeni bir sipariş göndermek teorik olarak imkansız, bu nedenle PositionSelect() geçerli konumun durumunu zamanında almadığında, EA'm gönderecek tekrar yeni bir düzende.
"400'den fazla uyku koymak güvenli olmalı ??? "
Zaman aralığı ne kadar büyük olursa o kadar iyi ama bir sorun var. Pozisyonunuzu iki adımda (UZUN'dan KISA'ya veya KISA'dan UZUN'a) çevirirseniz, bu ekstra zaman gecikmesi, özellikle makro ekonomik olay sırasında, kötü bir uygulama fiyatının nedeni olabilir.
Komisyoncu burada ayrı mı oynuyor bilmiyorum ama komisyoncumuz aynı görünüyor. Alpari.
03-10-2013'ten beri 1 çift girişim daha oldu. Siparişimi göndermek için her iki yöntemi de kullanıyorum. Bir önceki paylaşımıma bakın.
az önce uyguladığım şey bu. umarım sorunu çözebiliriz
az önce uyguladığım şey bu. umarım sorunu çözebiliriz
Bu sorunun arkasındaki nedeni bulmanın çok önemli olduğunu düşünüyorum, tabii ki biz neler olduğunu tam olarak anlayana kadar bir geçici çözüme (Uyku?) sahip olmak da önemlidir. Bu yüzden durumu devam ettirmeye çalışıyorum:
En iyi açıklamanın şu olduğu konusunda snella_moda ile aynı fikirdeyim:
I think the problem is the (to slow) execution of the PositionSelect(Symbol()) function. Maybe, the new ticks come in so fast, the EA sends in a new order before it receives a response of the PositionSelect(Symbol()). So the current position size is not calculated properly. In my code, its theoretically impossible to send in a new/double order if the current position size is equal or greater than the max allowed position size, see code.
Ama kontrol etmek zor.
Bence yapılacak en iyi şey Metaquotes'tan tavsiye istemek. Onu deneyeceğim.
"Her tik" ile ilgili satır, artık olmamasının nedeni olabilir.
İşlev yalnızca yeni bir çubuk göründüğünde yürütülür. Bu nedenle, büyük olasılıkla, bir çubuğun yalnızca ilk işareti bir ticaret gerçekleştirebilir. İlk çubuktan sonra, kod yeni çubuk görünene kadar bir 'dönüş' olur. Belki bu benim için çözdü.
Sanırım bu kod parçası makalelerden:
"Her tik" ile ilgili satır, artık olmamasının nedeni olabilir.
İşlev yalnızca yeni bir çubuk göründüğünde yürütülür. Bu nedenle, büyük olasılıkla, bir çubuğun yalnızca ilk işareti bir ticaret gerçekleştirebilir. İlk çubuktan sonra, kod yeni çubuk görünene kadar bir 'dönüş' olur. Belki bu benim için çözdü.
Sanırım bu kod parçası makalelerden:
düzeltme. Çift "Pozisyon açıldı..." var ve 2 işlem açıldı.