![MQL5 - MetaTrader 5 müşteri terminalinde yerleşik ticaret stratejileri dili](https://c.mql5.com/i/registerlandings/logo-2.png)
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
3B. Yarım satış - OUT açarak kısmen kapatmak.
kötü :/
Neden kötü? Seni doğru anladıysam çok basit. ÇIKIŞ ve konum varsa, hacimde bir azalma olmuştur. OUT yoksa ve pozisyon yoksa pozisyon tamamen kapatılmıştır.
Bu kötü, bu yüzden. " ÇIKIŞ ve pozisyon varsa, hacimde bir azalma oldu. Bir ÇIKIŞ ve bir pozisyon varsa, o zaman pozisyon tamamen kapandı " yaklaşımınız bana hantal görünen bir özelliğe sahip: ayrıca her seferinde terminaldeki veri tabanındaki konumla ilgili bilgilerin kullanılabilirliğini kontrol edin.
Hepimiz çok iyi biliyoruz ki, terminal veri tabanındaki bilgiler, gerçek durumla ilgili olarak biraz gecikiyor. Bu nedenle, çek " OUT ve bir pozisyon var " türünden bir sonuç verdiğinde durumlar ekarte edilmez, ancak gerçekte bu işlem pozisyonu tamamen kapattı. Onlar. basitçe yanlış bilgi alabilir ve buna dayanarak hatalı adımlar atabilirsiniz. ..Ya da ek kontroller, gecikmeler bulmanız gerekecek - kim ne kadar içindeyse.
Ama bu çanlar ve ıslıklar olmadan da yapabilirsiniz. Özellikle, bir pozisyonun varlığını kontrol etmeden. Bunu yapmak için, bir pozisyonun kapanması ile DEAL_ENTRY_OUT özelliği (yazışma - şimdi Dizin'de sunulduğu gibi) arasında bire bir yazışma bırakmak ve pozisyon hacmindeki azalmayı ayrı olarak seçmek yeterlidir. işlemin mülkiyeti. O zaman geçmişte DEAL_ENTRY_OUT özelliğiyle ( HistorySelectByPosition ) yalnızca bir anlaşma bulmak ve pozisyonun azaltılmadığını, kapatıldığını ve hiçbir koşulda geri alınamayacağını kesin olarak bilmek yeterli olacaktır.
Bu kötü, bu yüzden. " ÇIKIŞ ve pozisyon varsa, hacimde bir azalma oldu. Bir ÇIKIŞ ve bir pozisyon varsa, o zaman pozisyon tamamen kapandı " yaklaşımınız bana hantal görünen bir özelliğe sahip: ayrıca her seferinde terminaldeki veri tabanındaki konumla ilgili bilgilerin kullanılabilirliğini kontrol edin.
Hepimiz çok iyi biliyoruz ki, terminal veri tabanındaki bilgiler, gerçek durumla ilgili olarak biraz gecikiyor. Bu nedenle, çek " OUT ve bir pozisyon var " türünden bir sonuç verdiğinde durumlar ekarte edilmez, ancak gerçekte bu işlem pozisyonu tamamen kapattı. Onlar. basitçe yanlış bilgi alabilir ve buna dayanarak hatalı adımlar atabilirsiniz. ..Ya da ek kontroller, gecikmeler bulmanız gerekecek - kim ne kadar içindeyse.
Ama bu çanlar ve ıslıklar olmadan da yapabilirsiniz. Özellikle, bir pozisyonun varlığını kontrol etmeden. Bunu yapmak için, bir pozisyonun kapanması ile DEAL_ENTRY_OUT özelliği (yazışma - şimdi Dizin'de sunulduğu gibi) arasında bire bir yazışma bırakmak ve pozisyon hacmindeki azalmayı ayrı olarak seçmek yeterlidir. işlemin mülkiyeti. O zaman geçmişte DEAL_ENTRY_OUT özelliğiyle ( HistorySelectByPosition ) yalnızca bir anlaşma bulmak ve pozisyonun azaltılmadığını, kapatıldığını ve hiçbir koşulda geri alınamayacağını kesin olarak bilmek yeterli olacaktır.
OnTrade'de () sunucudan bir yanıt alırız. Yani, OnTrade'de () olayı kontrol edersek, o zaman bir pozisyon olup olmadığını zaten kesin olarak bileceğiz. DEAL_ENTRY_ FULL OUT (tam kapanma) veya DEAL_ENTRY_ PART OUT (kısmi kapanma) gibi normal seçenekler yapmak mümkün olsa da, her şey mükemmel bir şekilde zarif. )))
Bu arada her seferinde "hantal kontrollere" girmemek için ayrı işlevler yapabilirsiniz.DEAL_ENTRY_ FULL OUT (tam kapanma) veya DEAL_ENTRY_ PART OUT (kısmi kapanma) gibi normal seçenekler yapmak mümkün olsa da, her şey mükemmel bir şekilde zarif. )))
Bahsettiğim şey bu.. Aynı OnTrade'de, önerilen çözümün (FULLOUT / PARTOUT) arka planına karşı hala hantal görünen ek kontroller yapmanıza bile gerek kalmayacak.
Hizmet Masasında bir teklif olarak göndermeyi deneyin. Bir gün düşünülebilir ve uygulanabilir.
Evet, zaten yaptım :) Dil hatası olarak.. Vay be, bir saat yazdım.
Yine de hata denilemez. Ama şimdi gönderdikten sonra ne yapabilirsiniz? ))
Evet, her dönem belirli bir değere karşılık gelir. Birkaç yıl önce forumda birisi yazmıştı. Aşağıdakine benzer bir satır çalıştırarak kendi başınıza öğrenebilirsiniz:
Komut dosyası, ondalık sistemdeki tüm dönemler için ENUM_TIMEFRAMES değerlerini yazdıracaktır :