Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 534
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
Vladimir, ilk soruyu yanıtladığın için teşekkürler, bu işlevleri kaçırdım.
Aynı göstergeyi MT4 ve MT5'e de koydum (tabii ki kod her platform için uyarlanmıştır).
Sıfır çubuğuna kadar aynı değerlere sahipler yani bir uçtan görülüyor... :)
Ve MT4'teki mevcut çubuktaki hesaplamayı kapattığınızda, MT5'te mevcut çubuğun altına hiçbir şey çizilmez - yanlış değerler.
Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum
Yeni Başlayanlardan Sorular
Karputov Vladimir , 2016.03.08 15:13
... hata ayıklama zamanını kontrol edin - timeseries dizisinde hangi değer bulunur time[i] - böylece çubukları hesaplamaya hangi uçtan başladığınızı ve nerede "sıfır" bir çubuğun olduğunu anlayacaksınız.
Ve böyle bir çek nasıl yapılır?
MetaEditore'da bir kesme noktası ekleyin ve hata ayıklamaya başlayın. Kesme noktasında bir mola olduğunda, saate time[0] ekleyin:
MetaEditore'da bir kesme noktası ekleyin ve hata ayıklamaya başlayın. Kesme noktasında bir mola olduğunda, saate time[0] ekleyin:
MT4 2016.03.08 18:37:04.710 mvt_Vlt EURUSD,H1: time[0] = 2016.03.08 17:00:00 time[rates_total-1] = 1971.01.04 00:00:00
MT5 2016.03.08 18:36:23.565 mvt_Vlt (EURUSD,H1) zamanı[0] = 2010.01.04 00:00:00 zamanı[rates_total-1] = 2016.03.08 17:00:00
MT5 koduna ArraySetAsSeries eklendi (zaman, doğru);
Şimdi çıktı:
MT5 2016.03.08 18:45:05.402 mvt_Vlt (EURUSD,H1) saat[0] = 2016.03.08 17:00:00 saat[rates_total-1] = 2010.01.04 00:00:00
Fiyat dizileri de yapabilir misiniz?
Çıktıyı koda zaten ekledim
MT4 2016.03.08 18:37:04.710 mvt_Vlt EURUSD,H1: time[0] = 2016.03.08 17:00:00 time[rates_total-1] = 1971.01.04 00:00:00
Ve şimdi ne yapmalı?
Göstergenin her iki sürümüne de ArraySetAsSeries ekleyin - hesaplamalarınız için kullandığınız diziler için: yüksek[], düşük[] ve geçici olarak zaman[] dizisi - bu, "sıfır" çubuğunun nerede olduğunu anlamanıza yardımcı olacaktır. Böylece, her iki versiyondaki "sıfır" çubuğu grafiğin aynı tarafında olacak (sağda veya solda - ArraySetAsSeries'de ne ayarladığınıza bağlı olarak) ve göstergenin aynı hesaplanmış kısmını alacaksınız.
Eklendi: Ben yazarken doğru yolu buldunuz :)
Eklendi: Ben yazarken doğru yolu buldunuz :)
MT5 koduna eklendi:
Çıktılar:
Bu yalnızca ExtCalcVlBuffer'ı görüntüler, ancak ortalama ve sapmayı hesaplamaz ...
Ve yine de, olmamasına rağmen, mevcut çubukta görüntüleniyor.
...
Ve olmamasına rağmen hala geçerli çubukta görüntüleniyor.
Neden olmasın?
Kapattım i<rates_total-1
NİYE YA?!
Ve mevcut olana güvenmenize gerek yok, işlemciyi yüklemek boşuna ve bu değere ihtiyacınız yok.
Bu yüzden hemen böyle bir İstek Listesi belirlemeniz gerekiyor :).
Durum aşağıdaki gibidir - grafikte bir çubuk varsa , gösterge arabelleğindeki bir hücre buna karşılık gelir. Siz bu hücreye bir şeyler yazana kadar çöpler bu hücrede depolanacaktır.