Alım-satım robotlarını ücretsiz olarak nasıl indirebileceğinizi izleyin
Bizi Facebook üzerinde bulun!
Fan sayfamıza katılın
Kodu ilginç mi buldunuz?
Öyleyse bir link gönderin -
başkalarının da faydalanmasını sağlayın
Kodu beğendiniz mi? MetaTrader 5 terminalinde deneyin
Göstergeler

Relative Moving Average Indicator - MetaTrader 5 için gösterge

Görüntülemeler:
17
Derecelendirme:
(3)
Yayınlandı:
MQL5 Freelance Bu koda dayalı bir robota veya göstergeye mi ihtiyacınız var? Freelance üzerinden sipariş edin Freelance'e git

Genel Bakış

Bu, Dr. Daniel Alexandre Bloch'un "RMA ile Sistematik Ticaret Kursu"nda tanıttığı Göreceli Hareketli Ortalama (RMA) çerçevesinin MetaTrader 5'e sadık bir uyarlamasıdır. Klasik bir hareketli ortalama, fiyat penceresini tek bir düzgünleştirilmiş sayıya indirger; bu sayı size seviyeyi gösterir ancak nadirlik derecesini göstermez: yüksek bir kapanış, çevresindeki diğer değerlerden çok uzak olabilir ya da yüksek olmasına rağmen pencere içinde tamamen sıradan olabilir. RMA, ikinci soruyu yanıtlar. Takip eden pencereyi küçük bir dağılım olarak ele alır, mevcut fiyatı bu dağılım içinde sıralar ve bu sıralamayı, her enstrümanda ve her volatilite rejiminde aynı anlama gelen [0, 1] ölçeğinde raporlar.

Not: Bu, bazı grafik platformlarının sunduğu "RMA" (Wilder'ın düzeltme yöntemi, bir EMA çeşidi) değildir. Kısaltma aynı olsa da, bu tamamen farklı bir kavramdır. Burada RMA, Bloch'un yapısını ifade eder: kayan ortalamaya göre ölçülen ve normalleştirilmiş getirilerin dağılımına yansıtılan fiyat istatistikleri.

Çerçeve üç katmandan oluşur ve kod da bunları tam olarak yansıtır:

  • W kapanışlarının takip eden penceresininSMA'sı, yerel denge olarak kabul edilir ve sıfıra sabitlenir.
  • RMA ailesi, her pencere işaret noktasının bu denge noktasından sapması, saf sma / x - 1 oranı olarak ifade edilir ve son kapanış, ilk kapanış, orta kapanış ile pencerenin minimum ve maksimum değerlerinde değerlendirilir. Oranlar olduğu için ölçekten bağımsızdırlar ve farklı semboller arasında karşılaştırılabilirler.
  • Fraktiller, pencereyi normalleştirilmiş getiriler (kapanış / SMA - 1) olarak yeniden ifade eder ve bu dağılım içindeki mevcut, minimum ve maksimum elemanları sıralar. Bu, makalenin ekindeki tanımdan aynen alınan basit ampirik CDF’dir ve f_w, aşağı akıştaki her şeyin aslında işlem gördüğü seridir.

RMA yapısı: fiyat aralığı → SMA → normal dağılım → fraktil

Oluşturulma şekli: kapanışlardan oluşan kayan bir pencere bir SMA haline gelir, kapanışlar bu SMA etrafında normalleştirilmiş getirilerin dağılımı olarak yeniden ifade edilir ve mevcut fiyatın bu dağılım içindeki sıralaması, [0, 1] ölçeğindeki fraktili olur.

Bunların yanı sıra, motorla birlikte iki türetilmiş değer de sunulur. Bir rejim dedektörü, en küçük kareler eğimi, bir z-skoru ve bir varyasyon katsayısı ile desteklenen makaledeki Göreceli Ekstremum Oranlarını kullanarak normalleştirilmiş getirilerin dağılımını genişleyen, daralan veya geçiş halinde olarak sınıflandırır. Olumsuz hareket izleyicisi, medyan üzerinden yeniden merkezlenen fraktil olan d_med_w’yi ve son çubuklar arası adımların yükseliş yönündeki payı olan D_k’yi yayınlar; bu, “bu hareket ters yönde ilerliyor” ifadesini bir görüş meselesi olmaktan çıkarıp kesin bir hale getiren yönsel tutarlılık göstergesidir.

İki program dahildir. RMA_Engine her seriyi hesaplar ve on dokuz serinin tamamını tampon olarak yayınlar; böylece bir Uzman Danışman veya başka bir gösterge, matematiksel hesaplamaları yeniden uygulamak ve adımlardan sapmak yerine grafikteki kesin rakamları okuyabilir. RMA_Panel ise hiçbir hesaplama yapmaz: grafiğe zaten eklenmiş olan motoru bulur ve tampon grubunu kendi alt penceresine yansıtır; çünkü rma ailesi yüzde kesirleriyle ölçülür ve d_med_w sıfırın ortasına yerleştirilmiştir, dolayısıyla ikisi de motorun 0-1 ekseninde okunamaz.


Motorun Çizdiği Şey

Motor, dikey ekseni [0, 1] aralığına sabitlenmiş ayrı bir pencere açar ve altı grafik çizer:

Grafik
Görünüm
Ne Anlam İfade Ediyor
Rejim
Her şeyin arkasında tam yükseklikte renkli bir şerit
Genişleme için yeşil, daralma için kırmızı, genişlemenin devam etmesi için sarı, daralmanın başlaması için mavi. Rejim henüz belirsizken hiçbir şey çizilmez, böylece ısınma aşaması "henüz cevap yok" anlamına gelen bir renk dalgasıyla başlamaz.
f_w
Kalın mavi çizgi
Mevcut kapanışın fraktili: en son normalleştirilmiş getirinin kendi penceresi içinde hangi sırada yer aldığı. Bu, birincil seridir.
f_min / f_max
Noktalı kırmızı ve yeşil
Pencerenin minimum ve maksimum fraktilleri, f_w'nin geçtiği zarfın alt ve üst sınırları.
alpha_lo_mean / alpha_hi_mean
Mor ve turuncu çizgiler
Düzeltilmiş quantile seviyeleri: f_w ve onun tamamlayıcısının EMA'sı; f_w'deki bir ani yükselişin bir ani yükseliş olarak okunabileceği daha yavaş bir arka plan sağlar.

İki giriş eşiğinde ve medyan değerde üç yatay kılavuz çizilir. Bunlar, sabit kodlanmış olmak yerine, eşlik eden Uzman Danışmana verilen aynı girdilerden oluşturulur; bu sayede, eşiklerin yeniden ayarlanması, grafiğin kurallarla sessizce uyuşmazlık içinde kalmasına neden olmak yerine kılavuzları da beraberinde hareket ettirir.

Nasıl okunur? Üst kılavuza baskı uygulayan bir f_w, mevcut kapanışın penceresinin gördüğü tüm değerlerin en üstünde olduğu anlamına gelir; bu, aşağı yönlü geçişin tetiklendiği noktadır; alt kılavuzdaki bir f_w ise bunun tam tersi durumdur. Medyan, hareketin hâlâ sağ tarafında kalması gereken seviyedir ve bu seviyenin aşılması doğal çıkış noktasıdır. Renkli şerit bu okumaya bağlam kazandırır; zira makalenin mantığı, genişleme aşamasının başlangıcında pozisyon açmak ve daralma sırasında kapatmaktır.


Önerilen Kurulum

Ayar
Önerilen değer
Not
Sembol
Herhangi biri
Fraktil ölçeği kendiliğinden normalleşir, bu nedenle okumanın anlamlı olması için sembol başına kalibrasyona gerek yoktur. Geliştirme ve aşağıdaki ekran görüntülerinde EURUSD kullanılmıştır.
Zaman aralığı
M30 ila H4
Herhangi bir zaman diliminde çalışır. Pencere, çubuklarla ölçülür; bu nedenle, aynı W değerine sahip daha kısa bir zaman dilimi, sadece piyasanın daha kısa bir dönemini gösterir.
Pencere boyutu (W)
106 çubuk
Varsayılan değer. Makale, pencerenin varlık başına kalibre edilmesini amaçladığından, bu bir öneri değil, bir başlangıç noktasıdır.
Gerekli geçmiş veriler
W + rejim geriye dönük çubuk sayısı
Varsayılan ayarlarla 126 çubuk. Her grafik, kümedeki en uzun ısınma süresinden ziyade kendi modülünün ilk yanıt verebileceği noktadan başlar; bu nedenle, rejim bandından önce fraktiller görünür.


Temel Özellikler

Makaleye sadık

  • Fraktil, makalenin ekinde verilen tanım olan f_i = (1 / |W_i|) * sum_j I( W_ij <= v_i ) şeklindedir ve yazıldığı gibi uygulanır. Makalenin metni ile eki arasında uyuşmazlık olduğu durumlarda, ek öncelikli kabul edilir ve bu uyuşmazlık sessizce düzeltilmek yerine kaynakta belgelenir.
  • Rejim sınıflandırması, Göreceli Ekstremum Oranlarını takip eder; daralma, en katı yorum olduğu ve doğrulama gerektirdiği için önce test edilirken, genişlemeye ulaşmak kasıtlı olarak daha kolaydır.
  • Kaynakta belirtilmeyen hiçbir düzeltme, eşik değeri veya filtre eklenmemiştir.

Diğer programlar tarafından okunabilecek şekilde oluşturulmuştur

  • On dokuz serinin tamamı gösterge tamponları olarak sunulur; bunlardan altı tanesi grafik olarak gösterilirken, on üç tanesi yalnızca hesaplama amaçlıdır. Böylece bir EA, grafikte gösterilen sayıları okuyabilir ve ikisi arasında hiçbir zaman tutarsızlık olmaz.
  • Tampon haritası tek bir paylaşılan başlıkta bulunur; böylece motor, paneller ve tüm kullanıcılar, kimseyi uyarmak için herhangi bir derleme hatası olmadan birbirinden uzaklaşmak yerine tek bir dil kullanır.
  • Matematiksel işlemler tamamen, grafiklere veya emirlere bağımlı olmayan, yalnızca başlık içeren sınıflarda yer alır; böylece aynı kod, hiçbir kısaltma yapılmadan bir komut dosyasını veya test donanımını çalıştırabilir.

Doğru artımlı yeniden hesaplama

  • Her geçiş, prev_calculated değil, prev_calculated-1'den yeniden hesaplama yapar. O indeksteki çubuk, önceki çağrıda hâlâ oluşum aşamasındaydı ve kapanışı ancak şimdi kesinleşti; bu çubuğu olduğu gibi bırakmak, ona bağlı her seriye yarı tamamlanmış bir değeri dondurur ve çubuklar arası fraktil farkı, iki tamamlanmamış sayı arasındaki bir fark haline gelir.
  • Isınma çubukları sıfır yerine EMPTY_VALUE değerini taşır; bu nedenle, ısınma sürecinin ortasında gelen bir tüketici, makul bir sayı yerine "yok" ifadesini görür.
  • Rejim sınıflandırması, geçiş bandı içinde yola bağlıdır; bu nedenle, tek bir koşan alan yerine çubuk başına bir geçmiş tutulur; bu da, artımlı bir geçişin zinciri bir önceki çubuktan yeniden almasını sağlar.

İkinci bir eksen ödünç alan paneller

  • Motor, istenen panelleri otomatik olarak açar; önce grafiği kontrol eder, böylece bunları zaten içeren bir şablon veya bir girdi değişikliğinden sonra yeniden başlatma işlemi, ilk kopyanın arkasına ikinci bir kopya eklemez. Paneller motorla birlikte kaldırılır, ancak yalnızca fiilen kaldırıldıklarında; bu nedenle zaman dilimini değiştirdiğinizde, bıraktığınız düzene geri dönersiniz.
  • Panel, kendi tanıtıcısını oluşturmak yerine grafikteki kısa adını eşleştirerek motoru bulur; böylece asla gerçek hesaplamanın yanına çizilen, farklı parametrelere sahip ikinci bir hesaplamaya ayrılmaz.


Ekran Görüntüleri

EURUSD M30 grafiğinde fraktiller, alfa bandı ve rejim arka planı içeren RMA_Engine osilatör penceresi

EURUSD, M30'daki motor penceresi: f_w, renkli rejim arka planı üzerinde zarfı ve düzeltilmiş quantile ortalamalarıyla birlikte.

EURUSD M30 grafiğinde D_k ve d_med_w değerlerini içeren olumsuz panel

Olumsuz panel: sıfırın ortasına yerleştirilmiş d_med_w ve bunun üzerinde yön tutarlılığı değerini gösteren D_k.

EURUSD M30 grafiğinde rma_w, min ve max değerlerini içeren RMA ailesi geçiş paneli

RMA ailesi paneli: rma_w, pencere minimum ve maksimum değerleri kendi ölçeklerinde, mevcut fiyatın içinden geçtiği zarf.


Kurulum ve Dosya Yapısı

İki gösterge ve dört başlık dosyası. Düzen önemlidir: motor, paneli RMA\RMA_Panel göreceli yolu üzerinden yükler ve başlık dosyaları <RMA\...> olarak eklenir, bu nedenle her ikisi de kendi RMA alt klasörlerinde bulunmalıdır.

Dosya
Rol
Açıklama
Göstergeler\RMA\RMA_Engine.mq5
Ana gösterge
Canlı çubuklar üzerinde üç modülü çalıştırır, on dokuz tamponu bağlar, altı grafiği ve rejim bandını çizer ve panelleri açar. Kendi başına herhangi bir matematiksel hesaplama içermez.
Göstergeler\RMA\RMA_Panel.mq5
Geçiş paneli
Motoru grafikte konumlandırır ve tamponlarından bir grubunu kendi ölçeğine sahip bir alt pencereye yansıtır. İki mod vardır: olumsuz hareket (D_k, d_med_w) ve rma ailesi (rma_w, rma_min, rma_max).
Include\RMA\RmaTypes.mqh
Ortak kelime dağarcığı
Rejim ve çapraz durum numaralandırmaları, tampon haritası ile grafik ve palet sayıları. Motor, paneller ve tüm tüketicilerin üzerinde anlaştığı tek yer.
Include\RMA\RmaCore.mqh
Sayısal çekirdek
SMA, beş üyeli RMA ailesi, normalize edilmiş getiri dağılımı, fraktil fonksiyonu, pencere aralığı ve düzeltilmiş alfa sınırları.
Include\RMA\RegimeDetector.mqh
Rejim sınıflandırması
Eğim, z-skoru ve varyasyon katsayısı ile doğrulanmış ekstremum oranı zarfından genişleme, daralma ve iki geçiş durumu.
Include\RMA\AdverseMonitor.mqh
Yönsel tutarlılık
d_med_w, medyan merkezli fraktil ve D_k, son çubuklar arası adımların yukarı yönlü payı.


Kendi Kodunuzdan Tamponları Okuma

RMA\RMA_Engine üzerinde iCustom ile bir tanıtıcı elde edin ve CopyBuffer ile aşağıdaki herhangi bir indeksi okuyun. 0 ile 6 arasındaki indeksler çizilen seriler, 7 ile 18 arasındaki indeksler ise yalnızca hesaplamaya aittir, ancak on dokuz indeksin tümü okunabilir.

Endeks
Seri
Anlam
0, 1
Rejim bandı, renk indeksi
Arka planın yüksekliği ve renk yuvası. Ölçü içermez, sadece bir renk taşır.
2
f_w
Pencerenin son normalleştirilmiş getirisinin fraktili, [0, 1] aralığında. Birincil seri.
3, 4
f_min, f_max
Pencerenin minimum ve maksimum değerlerinin fraktilleri.
5, 6
alpha_lo_mean, alpha_hi_mean
Alt ve üst alfa sınırlarının EMA'sı.
7
sma
Pencerenin fiyat birimlerinde ifade edilen basit hareketli ortalaması.
8 ila 12
rma_w, rma_1, rma_mid, rma_min, rma_max
RMA ailesi: sma'nın son, ilk, orta, minimum ve maksimum kapanış fiyatlarına bölünmesi ve bir çıkarılmasıyla elde edilir.
13
aralık
Pencerenin normalleştirilmiş getirilerinin dağılımı; rejim dedektörünün okuduğu değer.
14, 15
alpha_lo, alpha_hi
f_w'nin işgal ettiği ham quantile seviyesi ve bunun tamamlayıcısı.
16
rejim
Rejim numaralandırması bir çift tamsayı olarak: 0 genişleme, 1 daralma, 2 devam etme, 3 kırılma, 4 bilinmeyen.
17, 18
D_k, d_med_w
Yönelimsellik ve medyan merkezli fraktil.
Dikkat: Göstergedeki her giriş grubu, değer içermese bile iCustom çağrısında bir parametre yuvası işgal eder. Birini atlarsanız, kalan parametreler bir konum yukarı kayar; bu da yanlış sayılarla yapılandırılmış bir çalışma göstergesinin yüklenmesine ve sessizce hata vermesine neden olur. Girişleri, gruplar dahil olmak üzere, tam olarak bildirildikleri sırayla aktarın.


Giriş Parametreleri

Grup
Parametreler
Varsayılanlar
Pencere
InpWindowSize, InpSmoothingPeriod
106 çubuk, 10
Rejim algılama
InpEpsilonLow, InpEpsilonHigh, InpSlopeThreshold, InpRegimeLookback, InpVariationRatioLow, InpZScoreExpansion, InpRangeHistoryLookback
0,15, 3,0, 0,0001, 20, 0,1, 1,0, 100
Olumsuz hareket
InpAdverseLookback
10 çubuk
Referans çizgileri
InpEntryUpperThreshold, InpEntryLowerThreshold
0,9, 0,1
Paneller
InpAutoAttachPanels, InpPanelAdverse, InpPanelRmaValues, InpAdverseThresholdDown, InpAdverseThresholdUp
true, true, false, 0,3, 0,7
Rejim arka planı
InpShowRegimeBand artı her rejim için bir renk
true, koyu yeşil / kırmızı / kehribar / mavi
Not: Görsel olmayan bir Strateji Testçisi çalıştırmasında paneller otomatik olarak atlanır, bu nedenle çizilecek grafik bulunmayan yerlerde hiçbir şey çizilmez.


Araştırma Temeli

Uygulama aşağıdakileri takip eder:

  • Daniel Alexandre Bloch, RMA ile Sistematik Ticaret Üzerine Bir Kurs, SSRN'de mevcuttur.

Kaynağın kendisinden geldiği için açıkça belirtilmesi gereken bir uyarı vardır: Makalenin Sonuç bölümü gelecekteki çalışmalar olarak bırakılmıştır. Bu makale, ampirik bir performans geçmişi değil, bir çerçeve ve işleyişi sunmaktadır. Bu gösterge size, her yerde aynı anlama gelen bir ölçekte tanımlanmış bir piyasa durumu sunar; bu, kaynaktan devralınan doğrulanmış bir avantajdan ziyade, kendi testleriniz için bir temel oluşturur.

Eşlik eden bir makale, her modülün matematiksel temellerini ve uygulamasını ayrıntılı olarak ele alır ve bu tamponlar üzerinde işlem yapan Uzman Danışman’ı oluşturur: MQL5’te Bloch’un Göreceli Hareketli Ortalama (RMA) Çerçevesi Uygulaması.

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

SMC Entry Using structure SMC Entry Using structure

Market Structure & Smart Trade Tracker (MT5) An advanced all-in-one Smart Money Concepts (SMC) indicator that combines automated market structure mapping, momentum heatmap candles, and institutional trade execution tracking.

Adaptive_MACD Adaptive_MACD

Adaptive MACD is a dynamic momentum indicator that adjusts its smoothing based on market conditions. It calculates a Pearson correlation coefficient between price and bar index over a user-defined period, then uses the resulting R² to blend two different MACD coefficient sets. This makes the MACD line more responsive during strong trends and smoother in sideways markets. The indicator plots a color-coded histogram (strong/weak bullish/bearish) and an optional auto-contrast MACD line that adapts to the chart background. Inputs allow customization of the R² period, fast/slow lengths, signal period, and colors. Suitable for trend-following and detecting momentum shifts.

Trading Panel EA Trading Panel EA

Pro Manager, kendi hesabına işlem yapan şirketler ve profesyonel yatırımcılar için geliştirilmiş, hepsi bir arada bir MT5 işlem asistanıdır. Break-even, Average TP, Magic Number yönetimi ve Auto Grid gibi güçlü araçlarla işlemleri daha hızlı gerçekleştirin, pozisyonları daha akıllıca yönetin, riski verimli bir şekilde kontrol edin ve günlük işlem görevlerini otomatikleştirin.

Broker Execution Diagnostics Broker Execution Diagnostics

A read only MT5 script that reports broker symbol specifications, volume limits, price settings, execution modes, trading permissions, margin requirements and estimated profit values.