Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 85
![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
Yol boyunca birkaç soru daha geldi:
1. bir satır var:
datetime ProvTimeX1=ObjectGetInteger(0,"Y="+IntegerToString(y,0,' '),OBJPROP_TIME);
derleyici buna küfreder, "tür dönüşümü nedeniyle olası veri kaybı " yazar. Burada sorun ne?
2. Veriler dizilere nasıl girilir ve mql5'te hangi yönde dağıtılır?
Yol boyunca birkaç soru daha geldi:
1. bir satır var:
datetime ProvTimeX1=ObjectGetInteger(0,"Y="+IntegerToString(y,0,' '),OBJPROP_TIME);
derleyici buna küfreder, "tür dönüşümü nedeniyle olası veri kaybı " yazar. Burada sorun ne?
Eh, haklısınız, ObjectGetInteger tarafından döndürülen uzun değeri datetime değişkenine yazmaya çalışıyorsunuz. Tip dökümü yapın.
Yön her zaman aynıdır - baştan (dizin sıfırdır) sonuna kadar, ANCAK , ArraySetAsSeries işlevi kullanılarak dizin oluşturma belirtilmemişse. Soru indeksleme ile ilgili ise.
İyi günler, sayıları bölemiyorum sonuç 0.0
Niye ya?
İyi günler, sayıları bölemiyorum sonuç 0.0
Niye ya?
Belgeler >>> Tip döküm
Belgeler >>> Tip döküm
Elbette aptallık, değiştirmek için bir şeyler eklemeniz gerekiyor, bazı noktasız hesap makinesi her şeyin yolunda olduğunu düşünüyor ve ona hangi veri tipi olduğunu söylemenize gerek yok, ama ah peki, ikinci yol ".0" eklemektir. tam sayının sonunda
yani doğru ifade şöyle olurdu
Bu arada, bazı programlama dillerinde, terminalin kendi türünü seçeceği şekilde değişken bir atama gördüm, belki bu yalnızca dijital verilerle ilgiliydi, ancak yine de uygun, burada tesadüfen uygulanmadı, belgelerde bulmaya çalıştım - bulamadın mı?4. versiyonda: datetime TimeX2=Time[0]+18000; - zaman değerini 5 mum ileride artırdı
Şimdi 5'te yazarken:
hata ayıklarken, bir dizi taşma hatası veriyor ve datetime dizesini işaret ediyor TimeX2=Topen[ 0 ]+ 18000 ;
Lütfen bana 4'te olduğu gibi 5'te de aynı sonucu nasıl alacağımı söyle?
Ekleme: Her şey doğru yazılmış, sadece bir hata yaptım - OnInit'te dizi boştu.
4. versiyonda: datetime TimeX2=Time[0]+18000; - zaman değerini 5 mum ileride artırdı
Şimdi 5'te yazarken:
hata ayıklarken, bir dizi taşma hatası veriyor ve datetime dizesini işaret ediyor TimeX2=Topen[ 0 ]+ 18000 ;
Lütfen bana 4'te olduğu gibi 5'te de aynı sonucu nasıl alacağımı söyle?
Çizim seviyeleri sorunu ile karşı karşıya.
Print() kullanarak kontrol ediyorum, normal hesaplama sonuçları veriyor "Örnek: (GBPUSD,H1) 0.0152 i 1.5911 i 1.59682 i 2013.01.20 22:00:00 i 2013.01.22 09:46:40" ama bunları çizmiyor seviyeler. Terminali " Nesne listesi " aracılığıyla kontrol ediyorum, orada değiller. Lütfen bana sorunun ne olduğunu söyle? nereye tüküreyim?Çizim seviyeleri sorunu ile karşı karşıya.
Print() kullanarak kontrol ediyorum, normal hesaplama sonuçları veriyor "Örnek: (GBPUSD,H1) 0.0152 i 1.5911 i 1.59682 i 2013.01.20 22:00:00 i 2013.01.22 09:46:40" ama bunları çizmiyor seviyeler. Terminali " Nesne listesi " aracılığıyla kontrol ediyorum, orada değiller. Lütfen bana sorunun ne olduğunu söyle? nereye tüküreyim?