MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 431
![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
Yapabilir. Ama dikkat et. Açık bir pozisyon için kapanış fiyatını döndürür. Buna göre: Al - Teklif Ver, Sat - Sor
OrderClosePrice() öğesinin yalnızca kapalı bir anlaşmadan alınabileceğini düşündüm.
Kılavuzda bununla ilgili hiçbir şey yok)
hakkında. Böyle kullanılabileceğini bilmiyordum.
OrderClosePrice() öğesinin yalnızca kapalı bir anlaşmadan alınabileceğini düşündüm.
Kılavuzda bununla ilgili hiçbir şey yok)
Belgelenmemiş özellik. Ama bazı şartlar var. Şimdi hangileri olduğunu hatırlamıyorum. Alexey @Alexey Viktorov'a sormalısın - yakın zamanda onlar hakkında yazdı.
Belgelenmemiş özellik. Ama bazı şartlar var. Şimdi hangileri olduğunu hatırlamıyorum. Alexey @Alexey Viktorov'a sormalısın - yakın zamanda onlar hakkında yazdı.
değişken hemen sıfırla başlatılmadı mı?
peki bu kod?
değişken hemen sıfırla başlatılmadı mı?
Sessizliğe güvenemezsin. Yerel bir değişken bildirirken hemen değerine dikkat etmek daha iyidir: bool pr=false;
Genel olarak, elbette, orada sormak gereksizdir. Fonksiyonun ne döndürdüğünü kontrol etmek yeterlidir:
if(!OrderClose()) Print("Kötü");
Önceki mumdaki Fibonacci fanının fiyatı nasıl bulunur? MQL5
ObjectGetValueByTime() çalışmıyor, 0, sonra yüksek, sonra düşük mumlar döndürüyor
@Artyom Trishkin
Tünaydın. Lütfen yardım et. göstergemde neyin yanlış olduğunu söyle. Neden hiç çekmiyor anlamıyorum.
https://www.mql5.com/ru/forum/224805#comment_6372281
Belgelenmemiş özellik. Ama bazı şartlar var. Şimdi hangileri olduğunu hatırlamıyorum. Alexey @Alexey Viktorov'a sormalısın - yakın zamanda onlar hakkında yazdı.
Çok uzun zaman önceydi... ama yine de onu bulmayı başardım. Renat, bunun neden istenmediğini açıkça açıklıyor. Ama yine de bana göre çok da önemli değil. Sorun, siparişi kapatmak için bir yeniden teklif alındığında ortaya çıkabilir. Talepte Satış veya Teklif fiyatını ayarlarsanız, fiyatları her zaman güncelleyebilir ve tekrar deneyebilirsiniz. Ve OrderClosePrice() kapanış fiyatını belirtirseniz, emirdeki verileri güncellemek için emri tekrar seçmeniz gerekecektir.
Sonuç: İmkansızsa, ancak çok gerekliyse, mümkündür.
Lütfen bana söyle! Fiyatı "." ile sınırlandırılmış bir sütun da dahil olmak üzere bir CSV dosyasındaki verileri okuyorum. (1.22426) FileReadString (tanıtıcı) aracılığıyla, ardından StrToDouble işlevi aracılığıyla her şey yolunda. Ancak fiyatı olan bir sütun da var, ancak "," (1.22426) ayırıcısı var ve StrToDouble artık onu okumuyor. CSV'nin kendisinde virgülü bir noktaya dönüştürmenin bir yolu yoksa ne olur?
Lütfen bana söyle! Fiyatı "." ile sınırlandırılmış bir sütun da dahil olmak üzere bir CSV dosyasındaki verileri okuyorum. (1.22426) FileReadString(handle) aracılığıyla, ardından StrToDouble işlevi aracılığıyla her şey yolunda. Ama aynı zamanda fiyatı olan bir sütun da var, zaten bir ayırıcı "," (1.22426) var ve StrToDouble artık onu okumuyor. CSV'nin kendisinde virgülü bir noktaya dönüştürmenin bir yolu yoksa ne olur?
DosyaOkuDizesi
ve sonra virgülden noktaya değiştirebilirsiniz:
StringDeğiştir
Bir dizede bulunan tüm alt dizeleri verilen karakter dizisiyle değiştirir.
int StringReplace (
sicim& str , // değiştirilecek dize
const dize bul , // aranan alt dize
const dize değiştirme // bulunan yerlere eklenecek alt dize
);
DosyaOkuDizesi
ve sonra virgülden noktaya değiştirebilirsiniz:
StringDeğiştir
Bir dizede bulunan tüm alt dizeleri verilen karakter dizisiyle değiştirir.
int StringReplace (
sicim& str , // değiştirilecek dize
const dize bul , // aranan alt dize
const dize değiştirme // bulunan yerlere eklenecek alt dize
);
Teşekkür ederiz! ), değişken Cena=FileReadString(handle); Separator=StringReplace(Сena,",","."); işlevine ekliyorum. "sayıdan dizgeye örtük dönüştürme" hatası yazıyor -
sınırlayıcı "," (1.22426) ile değeri dize olarak okumak istemiyor ve StringReplace başarısız oluyor. Yoksa yanlış mı yapıyorum?