Alım-satım robotlarını ücretsiz olarak nasıl indirebileceğinizi izleyin
Bizi Telegram üzerinde bulun!
Fan sayfamıza katılın
Komut dosyasını ilginç mi buldunuz?
Öyleyse bir link gönderin -
başkalarının da faydalanmasını sağlayın
Komut dosyasını beğendiniz mi? MetaTrader 5 terminalinde deneyin
Görüntülemeler:
113
Derecelendirme:
(9)
Yayınlandı:
MQL5 Freelance Bu koda dayalı bir robota veya göstergeye mi ihtiyacınız var? Freelance üzerinden sipariş edin Freelance'e git

Bu, algotrading kitabında sunulan CalendarForDates.mq5 komut dosyasının genişletilmiş bir sürümüdür.

Girdi değişkenleri, gerekli kayıtları filtrelemek için bir ülke kodu, bir cari kod ve bir zaman aralığı belirtmenize olanak tanır. Girdiler boş bırakılırsa, tam bir takvim istenebilir (terminal başlatıldıktan sonra takvim ilk kez istenirse, tabanını indirmek biraz zaman alabilir, hatta zaman aşımına uğrayabilir ve hiçbir sonuç üretmeyebilir - o zaman lütfen betiği bir kez daha çalıştırın).

Sonuç olarak, en önemli alanlara sahip takvim kayıtlarını içeren bir CSV dosyası alacaksınız (tüm alanlar dışa aktarılmaz - kaynak kodunu ihtiyaçlarınıza göre ayarlamaktan çekinmeyin).

İsteğe bağlı olarak, kitapta da tanıtılan CalendarMonitorCached.mq5 göstergesi tarafından oluşturulan bir *.cal dosyası (belirli bir zaman için takvimin arşivlenmiş kopyası) girilebilir, bu artık genişletilmiş sürümü CalendarMonitorCachedTZ.mq5 (daha sonra açıklanan yeni özellik için önerilir ve gereklidir) lehine kullanılmamaktadır.

CSV'de MetaTrader'ın Ekonomik Takvimi


En ilginç özellik: betik, geçmiş olayların zaman damgalarını sunucunun geçmişteki zaman dilimi değişikliklerine göre ayarlamak için TimeServerDST.mqh 'nin kullanımını gösterir ve bu da mumların zaman damgalarına kalıcı olarak yansıtılır. Bu mod, FixCachedTimesBySymbolHistory girişi true olarak ayarlanarak etkinleştirilir.

Olayları düzeltme ile ve düzeltme olmadan CSV dosyalarına kaydetmek, zaman düzeltmesinin geçmiş üzerindeki etkilerini karşılaştırmayı kolaylaştırır.

Bu özelliğin doğru kullanımı için, betiğin XAUUSD veya EURUSD H1 grafiklerinde çalıştırılması önerilir. Programlı olarak kullanıldığında, bu semboller TimeServerDST'nin fonksiyonlarına aktarılmalıdır.

Aynı yaklaşım, CalendarMonitorCachedTZ.mq5 göstergesinde, zaman düzeltmeli takvim olaylarını arşivlenmiş cal dosyalarına aktarmak için kullanılır, test cihazının içinden yüklenmeye hazırdır, bu da haber robotlarının doğru arka testlerini ve optimizasyonlarını sağlar.

Zaman düzeltmelerinin gerçekleştirildiği tarih aralığı, H1 zaman dilimi için grafikteki maksimum çubuk sayısı ile sınırlıdır. Bu, TimeServerDST.mqh içinde kullanılan ampirik yöntemin özelliğidir.

Tercihen ABD Tarım Dışı İstihdam (NFP) gibi piyasa üzerinde büyük etkisi olan belirli bir olay türünü ele alalım.

DST programlı bir Avrupa sunucusunda (MQ Demo) kışın 14:30'da ve yazın 15:30'da gerçekleşir. Aşağıdaki ekran görüntüsünde, belirli yaz tarihi 2023.08.04 görünümünde CSV dosyalarına aktarılan tam takvim geçmişinin 2 sürümünü yan yana görebilirsiniz. Her iki dışa aktarım da 8 Kasım'da (kış, standart zaman) gerçekleştirilmiştir, bu nedenle GMT+2 ofseti 2023 yazı (ve diğer mevsimler ve yıllar da dahil) dahil olmak üzere tüm olaylar için varsayılan olarak uygulanmıştır. Düzeltme yapılmadan (sağda gösterilmiştir) yaz NFP'leri için dışa aktarılan saatler 14:30'dur. Bu yanlıştır.

Düzeltilmiş zaman damgaları ile Ekonomik Takvim Etkinlikleri

Yaz boyunca geçerli olan sunucunun saat diliminin ampirik otomatik tespitinden sonra, kütüphane takvim dışa aktarımını saat düzeltmesi ile gerçekleştirir (solda gösterilmiştir). Sonuç olarak, yaz NFP'leri olması gerektiği gibi 15:30'a taşınır. Düzeltmenin uygun olduğundan emin olmak için bu döneme ait grafiğe bakabilirsiniz.

EURUSD H1 grafiğinde Tarım Dışı İstihdam

Bu özel durum o kadar dramatik değildir, çünkü düzeltilmemiş ilan edilen saat 14:30, 15:30'dan önce gelir, bu nedenle uzman danışmanlar muhtemelen haberleri beklemeye ve alım satım açmaya devam edebilir. Ancak sunucu saat dilimi yaza geçirildiğinde, takvimde kayıtlı tüm kış etkinlikleri 1 saat gecikmeli (!) zaman damgaları içerir.

Bu şey hala deneyseldir. Geri bildiriminizi göndermekten çekinmeyin.

Zaman düzeltmelerinin haber ticareti üzerindeki etkisi üzerine daha fazla araştırma yapılması planlanmaktadır. Bizi izlemeye devam edin.


Ekteki mqh dosyaları(CalendarFilter.mqh, CalendarCache.mqh, QuickSortStructT(Ref). mqh) kitaptaki orijinal sürümlerine kıyasla hata düzeltmeleri ve iyileştirmeler içermektedir.



04.10.2024 - cal dosyalarına ve csv dosyalarına sunucu saat dilimi ofseti yazma/okuma eklendi.

10.11.2024 - sunucunun geriye dönük zaman dilimi değişikliklerine göre geçmişteki olayların zaman damgalarını düzeltmek için bir seçenek eklendi.

11.11.2024 - CalendarCache.mqh ve CalendarFilter.mqh dosyalarında küçük hata düzeltmeleri ve iyileştirmeler.

22.11.2024 - CalendarCache.mqh'de küçük hata düzeltmeleri ve iyileştirmeler.


MetaQuotes Ltd tarafından İngilizceden çevrilmiştir.
Orijinal kod: https://www.mql5.com/en/code/52977

Fisher CG Osilatörü Fisher CG Osilatörü

Fisher CG Osilatörü, değerleri özel CG Osilatör göstergesinin değerlerinin Ters Fisher Dönüşümü ile elde edilen bir osilatördür.

Mikahekin Mikahekin

Mikahekin göstergesi bir göstergeden ziyade bütün bir analitik bloktur. Çubukların rengi trend yönünü ve yüksekliğini - trendlerin gücünü belirler. Mavi ve pembe noktalar sırasıyla uzun ve kısa pozisyonlar için takip eden stop seviyelerini gösterir.

Sample pine script stochastic divergence Sample pine script stochastic divergence

MQL'e dönüştürülmüş örnek bir çam kodu

Fisher RVI Fisher RVI

Fisher RVI, değerleri RVI (Relative Vigor Index) gösterge değerlerinin Ters Fisher Dönüşümü ile elde edilen bir osilatördür.