Kategori
Teknik
Seviye
Başlangıç
Kullanıldığı yer
Strateji tasarımıMT5 kullanımı

Üstel Hareketli Ortalama

Yakın fiyatlara eskilerden daha fazla ağırlık veren ve bu yüzden basit ortalamadan daha erken dönen bir hareketli ortalama. EA'ların trend filtreleri ve kesişim girişleri başka hiçbir göstergede olmadığı kadar sık onun üzerine kurulur.

ayrıca: EMA, üstel ortalama

Güncellendi · İncelendi

Sade bir dille

Az önce olana, bir süre önce olandan daha fazla dikkat eden bir yakın fiyat ortalaması. Basit bir ortalamadan daha hızlı döner; bu da onu trend içinde daha kullanışlı, yatay bantta ise daha geveze yapar.

Neden önemli

EMA, bir EA'nın trend mantığının varsayılan yapı taşıdır: ADX gibi göstergelerin bilinçli olarak vermediği yönü o sağlar. Aynı zamanda bireysel EA'ların en çok kullanılan ve en çok aşırı optimize edilen bileşenidir; çünkü bir kesişim kuralı yazması kolaydır ve iki periyodu, herhangi bir geçmiş kârlı görünene kadar ayarlanmaya elverişlidir.

  • Stratejiye bir işaret verir. Trend gücü ve oynaklık yönsüzdür; kuralların içine yukarıyı ve aşağıyı sokan şey, fiyatın ortalamaya ya da hızlının yavaşa karşı kıyaslanmasıdır.
  • Basit ortalamadan daha hızlı tepki verir ve bu, dönüş noktalarında önemlidir — bir trend stratejisinin sonucunun büyük kısmı orada belirlenir.
  • Yapısı gereği gecikmeli bir ölçüdür. Her hareketli ortalama olup bitmiş olanı anlatır, dolayısıyla bir kesişim öngörmez, teyit eder.
  • İki periyot iki parametre demektir ve bunlar üzerinde yapılan bir ızgara araması, herhangi bir pencerede mükemmel görünen bir çift mutlaka bulur. EA tasarımındaki klasik aşırı uyum tuzağı budur.

MetaTrader 5'te

MT5'te nerede görünür

  • Ekle → Göstergeler → Trend → Moving Average, ardından Method'u Exponential yapın
  • MA özellikleri penceresi uygulanan fiyatı da belirler — Close alışılmış seçimdir ve değerleri gözle görülür biçimde değiştirir
  • Grafikler onu ana pencerede, fiyat ölçeğinde çizer; ATR ya da ADX'ten farklı olarak
  • Strateji Test Cihazı → Girdiler — hızlı ve yavaş periyot, aşırı optimize edilmeye en yatkın iki girdidir

EA'lar nasıl kullanır

  • Handle'ları OnInit içinde oluşturun — iMA(_Symbol, PERIOD_CURRENT, 21, 0, MODE_EMA, PRICE_CLOSE) — her periyot için bir tane, ve EA'nın ömrü boyunca saklayın.
  • Yön filtresi olarak: yalnızca fiyat ya da hızlı EMA yavaşın üzerindeyken alış, altındayken satış alın.
  • Kesişim girişi olarak: hızlı EMA'nın yavaşı kapanmış bir barda kesmesi; bu, durumu değil kesişimi yakalamak için hem 1. hem 2. barın okunmasını gerektirir.
  • Takip referansı olarak: fiyat seçilen bir EMA'nın öbür tarafında kapandığında çıkın — trendin kendi temposuna uyum sağlayan bir takip kuralı.
  • Üst zaman dilimlerinin EMA'ları aynı çağrı ve farklı bir periyot argümanıyla okunur; bir M15 EA'sının yönünü H4'ten alması böyle olur.

Tipik ayarlar

Ayar Tipik değer Not
Hızlı/yavaş çifti, kısa vadeli 8 / 21 Hızlı tepki verir; çok sayıda kesişim üretir ve bunların çoğu trend değildir.
Hızlı/yavaş çifti, orta vadeli 50 / 200 Herkesin izlediği çift. Az sinyal verir, verdikleri de geç gelir.
Tek trend filtresi giriş zaman diliminde EMA 200 Giriş olarak değil, yön kapısı olarak kullanılır.
Uygulanan fiyat Close Alışıldık ve istikrarlı. Medyan ya da tipik fiyat daha da yumuşatır ve her backtest sonucunu değiştirir.
Sinyal barı en son kapanmış bar Oluşmakta olan barı okumak, bar içinde belirip kaybolan kesişimler üretir.

Sık görülen işletim sorunları

  • Olayı (hızlı yavaşı kesti) değil durumu (hızlı yavaşın üstünde) sınamak; bu, trend sürdüğü müddetçe her barda yeniden giriş yapar.
  • 0 indeksini okumak; böylece kesişim her tikte titreşir ve canlı işlemin yeniden üretemeyeceği backtest sonuçları çıkar.
  • OnTick içinde oluşturulan handle'lar, iMA INVALID_HANDLE döndürene kadar sızdırır.
  • Yavaş periyodun yeterli geçmişi olmadan başlangıçta çağrılan CopyBuffer, kesişim gibi kıyaslanan sıfırlar döndürür.
  • Her iki periyodu tek bir pencerede optimize edip zirveyi yayımlamak — bir EA'nın testte mükemmel görünüp hemen ardından çökmesinin en yaygın yolu.

İlgili MT5 fonksiyonları

iMA(symbol, timeframe, period, shift, MODE_EMA, applied_price)
Handle'ı oluşturur; onu basit değil üstel yapan şey MODE_EMA'dır.
CopyBuffer(handle, 0, start, count, array)
Ortalamayı tek tamponundan okur.
ArraySetAsSeries(array, true)
0 indeksini geçerli bar yapar; kesişim kodlarının çoğunun varsaydığı düzen budur.
iTime(symbol, timeframe, 0)
Tik başına değil bar başına bir kez hareket etmek için kullanılır.

Örnek

Bir durumu okumakla bir olayı okumak arasındaki fark — EA kodundaki en yaygın EMA hatası.

Bar 2 — hızlıya karşı yavaş
hızlı yavaşın altında
Bar 1 — hızlıya karşı yavaş
hızlı yavaşın üstünde
Bunu bir koşul değil bir kesişim yapan şey, okumaların çifti olmasıdır.
Durum sınamasının sonucu
her barda tetiklenir
Trend sürdüğü sürece, her seferinde bir pozisyon daha ekleyerek.
Olay sınamasının sonucu
bir kez tetiklenir

Testte güçlü bir trend içinde iki sürüm de kârlı görünür. Bunlardan yalnızca biri amaçlanan stratejidir.

Hesaplama if (fast[2] <= slow[2] && fast[1] > slow[1]) → yukarı kesişim

Sonuç Bar başına değil, kesişim başına bir giriş

Nasıl kullanılır

Bir EMA kuralını yazmak da ona uydurmak da kolaydır. Kontrol etmeye değer her şey, parametrelerin oynatılmaya dayanıp dayanmadığıyla ilgilidir.

Aralık Anlamı
Bir periyot %10 oynatıldığında sonuç çöküyor Test penceresine uydurulmuş. Sağlam bir ayarın, işe yarayan komşuları da vardır.
Geniş bir periyot çifti aralığı benzer biçimde çalışıyor Etki, uydurulmuş olmaktan çok yapısal olabilir; bir optimizasyon yüzeyindeki platonun anlamı da budur.
Rejim filtresi olmayan kesişim Sinyaller yatay bantlarda da tetiklenir ve orada çoğunlukla kaybederler. ADX ya da bir oynaklık filtresi genelde bunu düzeltmek için eklenir.
Oluşmakta olan barda okunuyor Yeniden üretilemez. Aynı piyasa, tiklerin zamanlamasına göre farklı girişler üretir.
  • Periyotları seçerken zirve yerine platoyu tercih edin. Bir backtestin en iyi tek sonucu, tekrar etme olasılığı en düşük olandır.
  • Kesişimi bir rejim filtresiyle eşleştirin. Filtresiz bir trend kuralı, en kötü işlemlerini tam da en zayıf olduğu koşullarda yapar.
  • Kesişimleri tek bir kıyaslamayla değil iki barla saptayın ve yalnızca kapanmış barlarda işlem yapın.
  • Hareketli ortalamanın fiyatı izlediğini unutmayın. Önden gidemez; dolayısıyla üzerine kurulan strateji bir tahmin değil bir katılım stratejisidir.

Hareketli ortalamalara ilişkin `/indicators` sayfası hesaplamayı ve SMA karşılaştırmasını ele alır; bu madde ise EMA'nın bir EA mantığına nasıl bağlandığıyla ilgilidir.

Sık yapılan hatalar

Durumu olayla karıştırmak

Hızlı EMA'nın yavaşın üstünde olup olmadığını sınamak trend boyunca doğrudur. Kesip kesmediğini sınamak bir önceki barı da gerektirir ve ikisi arasındaki fark, bir giriş ile onlarca giriş arasındaki farktır.

Her iki periyodu optimize edip en iyi çifti yayımlamak

Pürüzsüz bir yüzey üzerindeki iki serbest parametre her zaman etkileyici bir backtest üretir. Değerli olan, komşu çiftlerin de benzer davranıp davranmadığıdır; etki ile uydurma arasındaki fark budur.

Piyasa koşulları için filtresiz bir kesişim kullanmak

Hareketli ortalamalar yatay bantlarda sürekli kesişir ve bu kesişimlerin neredeyse tamamı kaybettirir. Filtre, stratejinin bir optimizasyonu değildir — stratejiyi uygulanabilir kılan şeydir.

EMA'nın SMA'dan kesinlikle üstün olduğunu varsaymak

Daha hızlı tepki verir ve bu iki tarafı da keser: gerçek trendlerde daha erken girişler, gürültüde daha çok yanlış sinyal. Hangisinin yeğleneceği stratejiye bağlıdır ve aradaki fark, periyot seçiminden daha küçüktür.

Ayrıntılı olarak

Yayımlanan EA’lar yön için bunun yerine neyi kullanıyor

Burada on dört EA, kapanmış işlemlerinin tam kaydıyla birlikte yayımlanmış durumda. Hiçbiri yönünü üstel hareketli ortalamadan almıyor.

Yön mekanizmasıEANedir
Ichimoku Tenkan/Kijun kesişimi5Kestrel Hover, Orrery, Peregrine, Tessera, Zerqon
Üst üste binmiş basit hareketli ortalamalar1Lanternfish — M30’da SMA 25/50/75, girişler M5’te
Bir üstel hareketli ortalama0
Kesişim dışında bir şey8RSI uçları, zarf bandından dönüşler, mum formasyonları

Bu beşi kesişimi korudu, ayarlamayı bıraktı: Tenkan/Kijun periyotları bir ızgara aramasından değil, göstergenin tanımından gelir. Beşi de kapanmış bir bar okur ve Orrery ile Peregrine yalnızca sinyal barının gövdesi yakın ortalamasının bir katını aştığında işlem yapar — çıplak bir kesişimin ihtiyaç duyduğu rejim filtresi budur. Kâr faktörleri 1,27 ile 1,46 arasında; kataloğun geri kalanıyla aynı bantta.

Strateji Test Cihazı’nın Girdiler sekmesi her periyot için bir Start, Step ve Stop değeri alır. En üst satırı değil, sonuç kümesinin tamamını okuyun: komşu çiftlerden oluşan bir plato bir etkidir, tek başına duran bir zirve ise uydurmadır. Bu, aşırı uyumun pratikteki hâlidir ve ADX gibi bir filtrenin, ayarlanacak bir periyottan önce gelmesinin sebebidir.

Sıkça sorulan sorular

MT5 EA'ları hangi EMA periyotlarını kullanır?
Kısa vadeli sistemlerde 8/21 çifti, orta vadeli trend tespitinde 50/200 en yaygın olanlardır; tek bir EMA 200 ise çoğu zaman salt yön kapısı olarak kullanılır. Belirli sayılar, o sayılar oynatıldığında stratejinin hâlâ çalışıp çalışmadığı kadar önemli değildir — tek bir kesin çifte bağlı bir sonuç, test penceresine uydurulmuştur.
EA'lar için EMA, SMA'dan daha mı iyidir?
EMA daha hızlı tepki verir; bu da gerçek trendlerde daha erken girişler, gürültüde daha çok yanlış sinyal demektir. Hiçbiri evrensel olarak üstün değildir ve ikisi arasındaki fark, genelde aynı tür içindeki iki periyot seçimi arasındaki farktan küçüktür.
EMA kesişimli EA'm neden bu kadar çok pozisyon açıyor?
Neredeyse her zaman, kod hızlı EMA'nın yavaşı az önce kesip kesmediğini değil, onun üstünde olup olmadığını sınadığı için. İlk koşul trend boyunca doğru kalır ve her barda tetiklenir; kesişimi saptamak bir önceki barla da kıyaslamayı gerektirir.
Bir EMA trend dönüşünü öngörebilir mi?
Hayır. Zaten gerçekleşmiş fiyatların ortalamasıdır, dolayısıyla zorunlu olarak arkadan gelir. Bir kesişim, bir değişimin yaklaştığını değil gerçekleştiğini teyit eder; o gecikme de yumuşatmanın bedelidir.