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
Neyin yanlış olduğunu anlamadım. Bu düşük çizgi.
Her ihtimale karşı kodu yeni bir şekilde kopyalayın, periyodik olarak değiştirdim, eski bir sürüme sahip olabilirsiniz.
Evet, evet, kod düzenlenirken sürüm değiştirilmelidir.
AUDUSD normal gibi
Lehimleme yılları için EURUSD üzerinden gideceğim. uzun olacak
Zor olmazsa hemen bir hafta ve bir ay ekleyebilir miyim? ve etiketleri hemen örnekteki gibi kaydırın, böylece gözler dışarı çıkmasın .
Bu tabloya on kez bakmamak için. (Ve böylece tüm hikayeyi ezbere biliyorum)
Sanırım bir ayda 8 çift yöneteceğim, test etmem gerekiyor.
Ben kendim henüz kodunuza girmeyeceğim (Örneğinizi kullanarak süreci Sınıflar vb. İle sessizce anlayacağım)
Neredeyse unutuyordum (geçmiş yoksa veya hat değerlerini değiştirmediyse uyarı gibi uyarı yapın)
Yeni bir versiyon. Üç dönem çizer: gün, hafta ve ay. Bir şey var ama aşağıda yazacağım.
Nüans, bir durumda önceki günü tarihle, diğerinde önceki haftayı karşılaştırmamızdır. Dünün mevcut haftaya ait olabileceği ortaya çıktı, ancak maksimumu bir önceki haftanın maksimumundan daha büyük olabilir.
Günleri günlerle ve haftaları haftalarla karşılaştırdığımız için günlerin yüksek satırlarının haftalık olanlardan daha yüksek olması olasıdır. Burası gibi:
Ama bu senin mantığın, gerekli mi değil mi bir düşün.
Bu arada, dizinin ötesine geçme hatası burada:
Döngü, günlük çubuklar dizisinden geçer ve haftalık çubuklar dizisinden öğeler seçer.
Yılın hafta numarasını alma fikri için Dmitry Fedoseev'e teşekkür etmek istiyorum.
Bu makaleyi gözetledim: https://www.mql5.com/ru/articles/599
Aferin Dima!Bu arada, dizinin ötesine geçme hatası burada:
Döngü, günlük çubuklar dizisinden geçer ve haftalık çubuklar dizisinden öğeler seçer.
Evet, bariz bir hata var, bu satır tartışma sırasında eklendi ve kopyala-yapıştır rolünü oynadı.
Başlangıçta böyleydi ve dizinin ötesine geçmek hala alakalı.
Her ne kadar çok tembel olmamanız ve çok gelişmiş kod sağlamanız nedeniyle, aralık dışı diziyi yanlışlıkla unutmak mümkün görünse de (bunun için size özel teşekkürler)
Ama yine de asıl sorunun ne olduğunu bulmak istiyorum (çünkü danışmanın diğer yerlerinden bu diziye bir başvuru var ve orada ne olduğu bir sır olarak kalıyor)
Bir açıklama vardı ( Peki int türünün döndürülen değeri nerede saklanıyor? Tüm verileri işleve ilettiniz, ancak ondan hiçbir şey alamadınız.) eklendi .
Şöyleydi:
ArrayCopyRates(Bar_data_D1,_Symbol,PERIOD_D1); // Belirtilen grafiğin çubuk verilerini diziye kopyalar ve kopyalanan çubukların sayısını döndürür
ArrayCopyRates(Bar_data_W1,_Symbol,PERIOD_W1); // Belirtilen grafiğin çubuk verilerini diziye kopyalar ve kopyalanan çubukların sayısını döndürür
ArrayCopyRates(Bar_data_MN1,_Symbol,PERIOD_MN1); // Belirtilen grafiğin çubuk verilerini diziye kopyalar ve kopyalanan çubukların sayısını döndürür
Şöyle oldu:
ACR_D1 = ArrayCopyRates(Bar_data_D1,_Symbol,PERIOD_D1); // Belirtilen grafiğin çubuk verilerini diziye kopyalar ve kopyalanan çubukların sayısını döndürür
ACR_W1 = ArrayCopyRates(Bar_data_W1,_Symbol,PERIOD_W1); // Belirtilen grafiğin çubuk verilerini diziye kopyalar ve kopyalanan çubukların sayısını döndürür
ACR_MN1 = ArrayCopyRates(Bar_data_MN1,_Symbol,PERIOD_MN1); // Belirtilen grafiğin çubuk verilerini diziye kopyalar ve kopyalanan çubukların sayısını döndürür
Akım için çıkış değeri
2020.12.12 16:51:31.536 2020.02.10 00:05:00 _Test AUDUSD,H1: i = 1001 Bar_data_D1[i][2] = 0.76337999999999999
2020.12.12 16:51:31.536 2020.02.10 00:05:00 _Test AUDUSD,H1: i = 1002 Bar_data_D1[i][2] = 0.76147
2020.12.12 16:51:31.536 2020.02.10 00:05:00 _Test AUDUSD,H1: i = 1003 Bar_data_D1[i][2] = 0.75097
2020.12.12 16:51:31.536 2020.02.10 00:05:00 _Test AUDUSD,H1: dizi '_Test.mq4' içinde aralık dışında (150.59)
2020.12.12 16:51:31.537 2020.02.10 00:05:00 EA'daki kritik bir hata nedeniyle test geçişi durduruldu
2020.12.12 16:51:31.537 AUDUSD,H1: 0:00:02.407 (toplam süre 0:00:05.672) içinde işlenen 65147 tick olayı (73 bar, 9291875 bar durumu)
Diziye neden bu kadar az geçmiş kopyalanıyor?
Bu değerler nereden ve nasıl geliyor?
Bu arada, dizinin ötesine geçme hatası:
Döngü, günlük çubuklar dizisinden geçer ve haftalık çubuklar dizisinden öğeler seçer.
Ve günlük TF dizisinin boyutunu hemen anlayın ve zamanı tespit edin ve zaman aşımına uğramayın.
Muhtemelen haftalık olarak farklı karar verirdim. Gerekirse tarihlerle birlikte tahsis fiyat seviyelerine ulaşır ve bunları ayrı bir diziye atar ve bu diziyle karşılaştırırdım. Aslında, yaptığım şey bu. Her TF'nin kendi ekstrema dizisi vardır.
Karşılaştırma yapmıyorum, dizilerden bahsediyorum
Ve günlük TF dizisinin boyutunu hemen anlayın ve zamanı tespit edin ve zaman aşımına uğramayın.
Muhtemelen haftalık olarak farklı karar verirdim. Gerekirse tarihlerle birlikte tahsis fiyat seviyelerine ulaşır ve bunları ayrı bir diziye atar ve bu diziyle karşılaştırırdım. Aslında, yaptığım şey bu. Her TF'nin kendi ekstrema dizisi vardır.
Karşılaştırma yapmıyorum, dizilerden bahsediyorum
(Gerekirse, tahsis fiyat seviyelerini tarihlerle alır ve bunları ayrı bir diziye atar ve bu diziyle karşılaştırırdım)
Hangilerine ihtiyaç duyacağımızı ve hangilerine ihtiyacımız olmayacağını bilmiyoruz, tüm barların olası tüm geçmişine ihtiyacımız var.
DiziKopyaOranları
Belirtilen grafiğin çubuk verilerini diziye kopyalar ve kopyalanan çubukların sayısını döndürür.
int ArrayCopyRates (
MqlOranlar& Rates_array[] , // Referans tarafından geçirilen MqlRates dizisi
sicim sembol=NULL , // araç
int zaman aralığı=0 // zaman aralığı
);
nasıl belli değil?
Bağlantıyı anlayamıyorum.
323 ayın neredeyse 27 yıl, 1403 hafta, 7015 gün civarında bir yerde olduğunu görür.
AUDUSD'nin 1993'ten bu yana geçmişi , 2020-1993= 27
(Gerekirse, tahsis fiyat seviyelerini tarihlerle alır ve bunları ayrı bir diziye atar ve bu diziyle karşılaştırırdım)
Hangilerine ihtiyaç duyacağımızı ve hangilerine ihtiyacımız olmayacağını bilmiyoruz, tüm barların olası tüm geçmişine ihtiyacımız var.
DiziKopyaOranları
Belirtilen grafiğin çubuk verilerini diziye kopyalar ve kopyalanan çubukların sayısını döndürür.
int ArrayCopyRates (
MqlOranlar& Rates_array[] , // Referans tarafından geçirilen MqlRates dizisi
sicim sembol=NULL , // araç
int zaman aralığı=0 // zaman aralığı
);
nasıl belli değil?
Bağlantıyı anlayamıyorum.
323 ayın neredeyse 27 yıl, 1403 hafta, 7015 gün civarında bir yerde olduğunu görür.
AUDUSD'nin 1993'ten bu yana geçmişi , 2020-1993= 27
Neyin ölçülebileceği veya tanımlanabileceği hakkında hiçbir şey bilmiyoruz. Önce aralığı ölçüyoruz ve biliyoruz.
Ve 27 yıl gündüz vakti tüm aşırılıklar kaydedilir ve eşit olanlar ortaya çıkarsa, onlardan çok fazla olacaktır. Görev, diskteki kopyaları algılamaya benzer, yalnızca daha kolaydır.