Hatalar, hatalar, sorular - sayfa 1887
![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
Görüyorum ki gösterdiğim kodu kontrol etmemişsin. Şunu yapalım: Önce kontrol et, sonra soruyu tekrar sor.
Kontrol etmem gerekmiyor, görüyorum: gerekeni veriyor
fonksiyonun ilk kullanım durumu hakkında konuştuk
Kontrol etmem gerekmiyor, gerekli olanı döndürdüğünü görüyorum
fonksiyonun ilk kullanım durumu hakkında konuştuk
Tamam, öyleyse. Kuyruktan gidelim.
1.PozisyonGetTamsayı:
İşlev, daha önce seçilen bir açık pozisyonun istenen özelliğini...
Yani PositionGetInteger kullanmadan önce bir pozisyon seçmelisiniz.
2. PositionGetTicket'i kullanarak bir pozisyon seçin. PozisyonGetTicket:
Geri dönüş değeri
Pozisyon bileti. Başarısızlık durumunda 0 döndürür.
Ve (döngüden sonra) PositionGetTicket'ten ne döndürüldüğünü nerede kontrol ediyorsunuz? Kontrol yoktur ve bu arada, "sıfır" döndürülür - yani, PositionGetTicket bir hatayla çalıştı - bu, var olmayan bir konumu seçmeye eşdeğerdir. Daha sonra PositionGetTicket sonucunu kontrol etmeden, var olmayan bir konumdan onun özelliğini almaya çalışırsınız. Ve orada, iyi var olan bir konumun özelliklerinde, ya çöp ya da sadece sıfırlanmış yapıların verileri.
Özetleyeyim: "Sıfır"ın geri dönüşü için PositionGetTicket'i kontrol etmeden ilerleyemezsiniz.
Tamam, öyleyse. Kuyruktan gidelim.
1.PozisyonGetTamsayı:
İşlev, daha önce seçilen bir açık pozisyonun istenen özelliğini...
Yani PositionGetInteger kullanmadan önce bir pozisyon seçmelisiniz.
2. PositionGetTicket'i kullanarak bir pozisyon seçin. PozisyonGetTicket:
Geri dönüş değeri
Pozisyon bileti. Başarısızlık durumunda 0 döndürür.
Ve (döngüden sonra) PositionGetTicket'ten ne döndürüldüğünü nerede kontrol ediyorsunuz? Kontrol yoktur ve bu arada, "sıfır" döndürülür - yani, PositionGetTicket bir hatayla çalıştı - bu, var olmayan bir konumu seçmeye eşdeğerdir. Daha sonra PositionGetTicket sonucunu kontrol etmeden, var olmayan bir konumdan onun özelliğini almaya çalışırsınız. Ve orada, iyi var olan bir konumun özelliklerinde, ya çöp ya da sadece sıfırlanmış yapıların verileri.
Özetlememe izin verin: "sıfır"ın geri dönüşü için PositionGetTicket'i kontrol etmeden ilerleyemezsiniz.
Tamam, öyleyse. Kuyruktan gidelim.
1.PozisyonGetTamsayı:
İşlev, daha önce seçilen bir açık pozisyonun istenen özelliğini...
Yani PositionGetInteger kullanmadan önce bir pozisyon seçmelisiniz.
2. PositionGetTicket'i kullanarak bir pozisyon seçin. PozisyonGetTicket:
Geri dönüş değeri
Pozisyon bileti. Başarısızlık durumunda 0 döndürür.
Ve (döngüden sonra) PositionGetTicket'ten ne döndürüldüğünü nerede kontrol ediyorsunuz? Kontrol yoktur ve bu arada, "sıfır" döndürülür - yani, PositionGetTicket bir hatayla çalıştı - bu, var olmayan bir konumu seçmeye eşdeğerdir. Daha sonra PositionGetTicket sonucunu kontrol etmeden, var olmayan bir konumdan onun özelliğini almaya çalışırsınız. Ve orada, iyi var olan bir konumun özelliklerinde, ya çöp ya da sadece sıfırlanmış yapıların verileri.
Özetlememe izin verin: "sıfır"ın geri dönüşü için PositionGetTicket'i kontrol etmeden ilerleyemezsiniz.
çarmıha geremezsin)
soru bu değil
doğru oku: bir fonksiyonun farklı durumlar için aynı değeri döndürmesi normal mi?
işlevin bunu yaptığı doğru mu?Özetlememe izin verin: "sıfır"ın geri dönüşü için PositionGetTicket'i kontrol etmeden ilerleyemezsiniz.
Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum
Hatalar, hatalar, sorular
fxsaber , 2017.05.12 11:19
kontrol etmek mantıklıdır (PositionGetInteger(POSITION_TICKET) > 0).fonksiyonun farklı durumlar için aynı değeri döndürdüğünü mü?
işlevin bunu yaptığı doğru mu?Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum
Hatalar, hatalar, sorular
fxsaber , 2017.05.12 11:29
Evet. Ancak başka herhangi bir değer yanıltıcı olacaktır.1. çarmıha geremezsiniz)
soru bu değil
2. doğru okuyun: Bir fonksiyonun farklı durumlar için aynı değeri döndürmesi normal mi?
işlevin bunu yaptığı doğru mu?1. Siz de kodda hata yapan ancak bunu kabul etmek istemeyen kaba bir insansınız.
2. İşlev kesinlikle doğru çalışıyor. (PositionGetInteger(POSITION_TYPE)) yalnızca İKİ değer döndürebildiğinden - POSITION_TYPE_BUY veya POSITION_TYPE_SELL . Ancak bir pozisyon seçmeden (ve onu seçmezsiniz - tam olarak neyin seçildiğini kontrol etmezsiniz) , (PositionGetInteger(POSITION_TYPE)) 'dan bir şey talep etmek pervasızlıktır .
Alt satır: kodunuz mantıksal bir hatayla yazıldığında, sistem işlevlerinden bir şey talep etme hakkınız yoktur.
Alt satır: kodunuz mantıksal bir hatayla yazıldığında, sistem işlevlerinden bir şey talep etme hakkınız yoktur.
1. Siz de kodda hata yapan ancak bunu kabul etmek istemeyen kaba bir insansınız.
2. İşlev kesinlikle doğru çalışıyor. (PositionGetInteger(POSITION_TYPE)) yalnızca İKİ değer döndürebildiğinden - POSITION_TYPE_BUY veya POSITION_TYPE_SELL . Ancak bir pozisyon seçmeden (ve onu seçmezsiniz - tam olarak neyin seçildiğini kontrol etmezsiniz) , (PositionGetInteger(POSITION_TYPE)) 'dan bir şey talep etmek pervasızlıktır .
Alt satır: kodunuz mantıksal bir hatayla yazıldığında, sistem işlevlerinden bir şey talep etme hakkınız yoktur.
Üzgünüm, birinin soruyu görmemesi benim suçum değil.
Bu kodda kasıtlı hata kabul edildi.
Ve nasıl düzelteceğimi biliyorum.
Ama soru farklı.
PositionGetInteger(POSITION_TYPE) işlevi hatalı giriş parametreleri olması durumunda neden bir satın alma değeri (0'a eşit) ve bir hata değeri (0'a eşit) döndürmez?