Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 854
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
CTrade::PositionClose(const ulong bilet,const ulong sapma=ULONG_MAX) ile uğraşıyorum ve içeride pek organize olmadığını anlıyorum. Her şey 2 dönüş koduyla ilgili - bool ve ResultRetcode(). RetCode false döndürmeden önce dahili olarak her zaman sıfırlanmaz, bu nedenle PositionClose false olarak değerlendirilirse RetCode TRADE_RETCODE_DONE döndürebilir. Bu 2 dönüş değeri geliştiriciler tarafından nasıl senkronize edilecekti.
Kod + örnek + günlükler.
COorderInfo::OrderType() her zaman 0 döndürür.
Doğrulama için bekleyen herhangi bir siparişi manuel olarak verebilirsiniz (BuyStop, SellStop, ...),
sonra biletini komut dosyasına girin.
Belki sanal işlevler tablosuyla ilgili bir şey? Hata ayıklamada yalnızca sanal int CObject::Type()'a giriyorum
not. Ben zaten kendim anladım. COorderInfo'nun 2 benzer yöntemi vardır: Type() ve OrderType().
Kod + örnek + günlükler.
Bakın ne durumdayım.
CTrade'de, her yeni işlemden önce bunları sıfırlamak için SetResultRetcode ve SetResultComment yöntemlerini görmüyorum.
Tek bir yöntemin eklendiği sınıfınızı miras almanız gerekir.
Bakın ne durumdayım.
CTrade'de, her yeni işlemden önce bunları sıfırlamak için SetResultRetcode ve SetResultComment yöntemlerini görmüyorum.
Ne için? Tamamen gereksiz özellikler.
Birincisi: Havaya ateş ediyorsunuz - ilk kontrol olmadan bir ticaret emri gönderin - operasyonun ne döndürdüğünü kontrol etmeden. Yardıma bakın: PositionClose bool türündedir.
İkincisi: pozisyon kapatma zincirine bakarız: pozisyon bulunamadığında (belirtilen bilet ile seçilemez), "false" döndürülür.
Aynı zamanda yapılar hiçbir yerde temizlenmiyor - çünkü bu anlamsız - sonuçta ondan önce bir konum seçmek mümkün değildi, bu nedenle yapılarda bilgi yok.
Ne için? Tamamen gereksiz özellikler.
Birincisi: Havaya ateş ediyorsunuz - ilk kontrol olmadan bir ticaret emri gönderin - operasyonun ne döndürdüğünü kontrol etmeden. Yardıma bakın: PositionClose bool türündedir.
İkincisi: pozisyon kapatma zincirine bakarız: pozisyon bulunamadığında (belirtilen bilet ile seçilemez), "false" döndürülür.
Aynı zamanda yapılar hiçbir yerde temizlenmiyor - çünkü bu anlamsız - sonuçta ondan önce bir konum seçmek mümkün değildi, bu nedenle yapılarda bilgi yok.
1) Aynı başarı ile ResetLastError()'un kesinlikle gereksiz bir fonksiyon olduğunu söyleyebiliriz.
2) Döndürülen sonucun kontrolü vardır. Benzetme yoluyla, bir WinAPI işlevini çağırdığınızı, bunun bir hata döndürdüğünü ve GetLastError() (ResultRetcode'a benzer) herhangi bir son kodu döndürdüğünü hayal edin.
PositionClose'u çağırmadan önce bir çek eklersem (ve bir tane ekleyeceğim), RetCode değişmediğinde diğer aramalardan önce diğer kontrolleri geçersiz kılmaz.
Uzman Danışmanım, bilgileri günlüğe yazar. Tüm ihtiyacım olan, bazı çağrılar yanlış dönerse, aklı başında ResultRetcode ve ResultComment'ı günlüğe yazmak.
1) Aynı başarı ile ResetLastError()'un kesinlikle gereksiz bir fonksiyon olduğunu söyleyebiliriz.
2) Döndürülen sonucun kontrolü vardır. Benzetme yoluyla, bir WinAPI işlevini çağırdığınızı, bunun bir hata döndürdüğünü ve GetLastError() (ResultRetcode'a benzer) herhangi bir son kodu döndürdüğünü hayal edin.
PositionClose'u çağırmadan önce bir çek eklersem (ve bir tane ekleyeceğim), RetCode değişmediğinde diğer aramalardan önce diğer kontrolleri geçersiz kılmaz.
Uzman Danışmanım, bilgileri günlüğe yazar. Tüm ihtiyacım olan, bazı çağrılar yanlış dönerse, aklı başında ResultRetcode ve ResultComment'ı günlüğe yazmak.
Gerektiğinde CTrade sınıfının alım satım işlemleriyle ilgili yardımı okuyun ResultRetcode() yöntemini çağırarak bir ticaret talebinin (işlem sunucusu dönüş kodu) yürütülmesinin sonucunu kontrol edin .
Gerektiğinde CTrade sınıfının alım satım işlemleriyle ilgili yardımı okuyun ResultRetcode() yöntemini çağırarak bir ticaret talebinin (işlem sunucusu dönüş kodu) yürütülmesinin sonucunu kontrol edin .
bunu iddia edebilirsin
1) PositionClose false döndürürse, Retcode hiçbir zaman doldurulmaz mı?
2) PositionClose true değerini döndürürse, Retcode her zaman doldurulur mu?
Sipariş -> anlaşma -> pozisyon. Pozisyondan açılış fiyatını alın.
Bu şekilde bir resim gösterebilirsiniz Order -> Deal -> pozisyonu, bu anlaşmanın yazıldığı alttan bu yüzden orada kopyalanmasına izin vermiyor
Bu şekilde bir resim gösterebilirsiniz Order -> Deal -> pozisyonu, bu anlaşmanın yazıldığı alttan bu yüzden orada kopyalanmasına izin vermiyor
Lütfen sorunuzu yeniden yazın veya noktalama işaretleri koyun veya daha da iyisi resimde ne, nerede ve kim olduğunu ekleyin. Aksi takdirde tanıdık harfler gördüğüm ortaya çıkıyor ama anlamını ve düşüncenizi anlayamıyorum.