BG MVC Model View Controller eğitim serisi yayında...

Ana sayfa > Borsa > Teknik analiz > Göstergeler > MFI

MFI

MFI hakkında

MFI (Para Akışı Endeksi), bir finansal varlığa belirli bir zaman süresince giren ve çıkan para miktarını ölçen bir momentum göstergesidir. Alım ve satım baskısını ölçmek için kullanılır. Bu işlem, hem fiyatı hem de hacmini analiz ederek yapılır.

MFI değeri yükselmesi satın almada, düşmesi ise satışlarda artış olduğunu gösterir.

MFI göstergesi, RSI (Göreceli Güç Endeksi) göstergesine benzer. RSI, momentumu ölçmek için kullanılan öncü bir göstergedir. MFI ise, temel olarak hacim eklenmiş RSI'dır. RSI ile olan benzerliği nedeniyle, MFI çok benzer bir şekilde kullanılabilir.

MFI göstergesi 0-100 aralığında bir değer alır.

MFI, etkinliğini artırmak için diğer göstergeler veya teknik analiz araçlarıyla birlikte kullanılmalıdır.

MFI göstergesi para giriş çıkışını gösterir.

Yatay trendlerde çok verimli olmasına rağmen, yükseliş ve düşüş trendinde istenen sonuçları vermez.

MFI gösterge değerinin hesaplanmasında kullanılan ön tanımlı uzunluk 14'tür.

Bir hisseye ait, 1 günlük grafik periyodunda ve 14 uzunlukta MFI grafiği aşağıda gösterilmektedir:

MFI kullanım kuralları

MFI bantlarını aşağıda belirtilen kurallar çerçevesinde kullanabiliriz:

  1. MFI çizgisi, üst bant değeri 80'i geçtiğinde aşırı alım (satış fırsatı), alt bant değeri 20'nin altına geçtiğinde aşırı satış (alım fırsatı) kabul edilir. Orta değer olan 50'yi gösterirse, MFI nötr olarak kabul edilir.
  2. Piyasa trendleri güçlü olduğunda, MFI uzun süre aşırı satış veya alış bölgesinde kalabilir.
  3. Diğer indikatörlerle birlikte kullanılmalıdır.
  4. MFI normal periyodu 14'tür.

MFI göstergesini kullanma yöntemleri

MFI göstergesini 3 farklı yöntemle kullanabiliriz. Bu yöntemler, MFI göstergesinin aşırı alım ve satım çizgilerini, 50 çizgisini, hareketli ortalama değerini, trend çizgilerini ve uyumsuzluk verilerini kullanmayı içerir.

Aşırı alım ve satım göstergesi olarak kullanma

MFI çizgisi alt sınırın altına geçtikten sonra tekrar alt sınırı yukarı kestiğinde alım için, üst sınırın üstüne geçtikten sonra tekrar üst sınırı aşağı kestiğinde satış için uygun zaman olarak değerlendirilir.

Aşırı alım ve satım göstergesi olarak kullanılır, ancak diğer göstergelerden ve teknik analiz yöntemlerinden onay almadan işlem girişi yapılmamalıdır.

20'li seviyelerde hisse ucuz iken alındığında, daha uzun sürede, daha çok kar edilir. 40, 50, 60'lı seviyelerde hacimli artışlarda hisse pahalı alındığında, daha kısa sürede, daha az kar edilir.

Aşağıdaki grafikte, MFI çizgisi aşırı alım çizgisinin üzerine çıktıktan sonra tekrar aynı çizgiyi aşağı doğru keserek altına geçtiği noktalardan sonra hisse fiyatının düşüş trendine girdiği, MFI grafiğinde daire fiyat grafiğinde ise dikdörtgen şeklinde kırmızı renkle işaretlenmiştir. MFI çizgisi aşırı satış çizgisinin altına geçtikten sonra tekrar aynı çizgiyi yukarı doğru keserek üzerine geçtiği noktadan sonra hisse fiyatının yükseliş trendine girdiği, MFI grafiğinde daire fiyat grafiğinde ise dikdörtgen şeklinde yeşil renkle işaretlenmiştir.

Bu yöntem piyasa trendlerinin güçlü olduğu dönemlerde hatalı sonuçlar verebilir. Herhangi bir geriye dönüş sinyali almadan işleme girmek çok büyük kayıplarla sonuçlanabilir. Bunun önüne geçmek ve hatalı sinyalleri ayıklamak için genellikle ana trendin sonlandığını teyit eden bir fiyat hareketi ya da destekleyici bir teknik gösterge kullanılır. Örneğin, MFI 20 seviyesinin altına geçtiğinde direkt alım yapmak yerine bu seviyelerde gerçekleşen ilk yükseliş barından sonra veya MFI'ın yeniden 20 seviyesinin üzerine çıkmasını bekleyerek alım yapmak hatalı işleme girmemizi engelleyebilir.

Fiyatların aşırı alım veya satım bölgelerini gösteren çizgileri geçmesi, fiyatların hemen ters yöne döneceğini göstermez. Güçlü yukarı veya aşağı trendlerde fiyatlar aynı bölgelerde uzun süre (günler, haftalar ve aylar) kalabilir.

Bir hisse fiyatının, aşırı alım çizgisinin üzerine çıkacağı veya aşırı satış çizgilerinin aşağısına geçeceği kesin bir durum değildir. Aşağıdaki günlük grafikte, 34 gün boyunca, yükseliş trendi nedeniyle, aşırı alım çizgisi olan 80 değerinin altına düşmemiş bir hissenin fiyat hareketleri görülmektedir:

<

Aşağıdaki günlük grafikte, 28 gün boyunca, düşüş trendi nedeniyle, aşırı satış çizgisi olan 20 değerinin üstüne çıkmamış bir hissenin fiyat hareketleri görülmektedir:

Orta seviye çizgisini kullanma

MFI çizgisi 50 değerini yukarı doğru geçince al sinyali, aşağı doğru geçince sat sinyali verir.

Piyasa yukarı ya da aşağı doğru bir trend içindeyse (piyasa yatay değilse), bu yöntem çalışır, aksi takdirde fayda sağlamaz.

Aşağıdaki grafikte, MFI çizgisi 50 değerini aşağı doğru keserek altına geçtiği noktalardan sonra hisse fiyatının düşüş trendinin devam ettiği, MFI grafiğinde daire fiyat grafiğinde ise dikdörtgen şeklinde kırmızı renkle işaretlenmiştir. MFI çizgisi 50 değerini yukarı doğru keserek üzerine geçtiği noktadan sonra hisse fiyatının yükseliş trendinin devam ettiği, MFI grafiğinde daire fiyat grafiğinde ise dikdörtgen şeklinde yeşil renkle işaretlenmiştir.

Satış işlemini MFI çizgisi, aşırı alım çizgisini aşağı doğru kestiğinde yapmak, 50 değerini aşağı doğru kestiğinde yapmaya göre daha az zarar etmemizi sağlar. Aynı şekilde, alış işlemini MFI çizgisi, aşırı satış çizgisini yukarı doğru kestiğinde yapmak, 50 değerini yukarı doğru kestiğinde yapmaya göre daha fazla kar etmemizi sağlar. Farklı bir ifade ile, MFI çizgisi aşırı alım çizgisini aşağı doğru kestiğinde ve aşırı satım çizgisini yukarı doğru kestiğinde işleme girmek daha avantajlıdır.

Uyumsuzluk göstergesi olarak kullanma

Momentum, belirli bir zaman aralığında fiyatlarda meydana gelen değişikliğin gücünü ölçer. Genelde fiyat ve momentumun uyumlu hareket etmesi beklenir. Ancak, bu her zaman gerçekleşmez ve uyumsuzluklar meydana gelir.

Momentum değişimleri gösterge yardımıyla gözlenir. Momentum göstergelerinin en önemli görevi fiyatın yükselişindeki veya düşüşündeki dengesizlikleri ve bu dengesizliklerin normalleşme hızını ölçmesidir.

Uyumsuzluk, momentumun fiyat hareketini onaylamamasıdır.

MFI uyuşmazlığı, fiyat ile MFI arasında bir fark olduğunda ortaya çıkar. Bu farklılıklar yaklaşan bir uyuşmazlık olarak yorumlanabilir. Fiyat ile MFI arasında oluşan uyuşmazlıklar potansiyel dönüş noktalarının sinyalidir. Çünkü momentum fiyatı onaylamamaktadır.

MFI ile fiyat grafiği arasında uyumsuzluk gördüğümüzde, doğrudan işlem açmak yerine fiyat hareketi ile onay almak daha sağlıklı bir yaklaşım olacaktır.

Aşağıda, fiyat hareketleri ile MFI göstergesi arasında düzenli boğa uyumsuzluğu oluşan bir günlük grafik yer almaktadır. Fiyat hareketleri, bir önceki seviyeye nazaran daha düşük bir dip yapmasına rağmen, MFI göstergesi bir önceki seviyeye göre daha yüksek bir dip yapmıştır. Bu durum boğa uyumsuzluğu sinyalidir. Bu sinyalden sonra fiyatlar, göstergenin verdiği sinyal doğrultusunda yükselmiştir.

Boğa uyumsuzluğu diplerde, ayı uyumsuzluğu tepelerde aranmalıdır.

Aşağıda, fiyat hareketleri ile MFI göstergesi arasında düzenli ayı uyumsuzluğu oluşan bir günlük grafik yer almaktadır. Fiyat hareketleri, bir önceki seviyeye nazaran daha yüksek bir tepe yapmasına rağmen, MFI göstergesi bir önceki seviyeye göre daha düşük bir tepe yapmıştır. Bu durum boğa uyumsuzluğu sinyalidir. Bu sinyalden sonra fiyatlar, göstergenin verdiği sinyal doğrultusunda düşmüştür.

Uyumsuzluklarla ilgili uygulama prensipleri

MFI göstergesini fiyat ile uyumsuzluklarda kullanırken aşağıda belirtilen konuları dikkate almak yaptığımız işlemlerin daha sağlıklı olmasına katkı sağlayacaktır:

  • Piyasadaki bir trend esnasında fiyat ile gösterge arasında birçok defa uyumsuzluk meydana gelebilir.
  • Uyumsuzlukların oluşması trendin o yöndeki gücünü gösterir.
  • Uyumsuzlukların anlamlı hale gelmesi için önemli bir destek veya direnç hattında oluşmasını beklemek daha doğru bir yaklaşımdır.

MFI hesaplama

MFI değeri aşağıdaki işlemlerin sırasıyla yapılmasıyla elde edilir:

Her bar için:

  1. Önce en yüksek (high), en düşük (low) ve kapanış (close) değerlerinin ortalaması alınır.
  2. 
    hlc3 = (high + low + close)/3
    
    
  3. Bu değerin bir bar önceki değerine göre farkı 0'a eşit veya 0'dan küçükse 0.00 değeri değilse hlc3 değeri hacim değeri ile çarpılarak aktif barın üst değeri hesaplanır.
  4. 
    float upper_bar = volume * (ta.change(hlc3) <= 0.0 ? 0.0 : hlc3)
    
    
  5. Aktif barda dahil olmak üzere geriye doğru 14 barda hesaplanan üst değer toplanarak toplam üst değer hesaplanır.
  6. 
    float upper = math.sum(upper_bar, 14)
    
    
  7. Bu değerin bir bar önceki değerine göre farkı 0'a eşit veya 0'dan büyükse 0.00 değeri değilse hlc3 değeri hacim değeri ile çarpılarak aktif barın alt değeri hesaplanır.
  8. 
    float lower_bar = volume * (ta.change(hlc3) >= 0.0 ? 0.0 : hlc3)
    
    
  9. Aktif barda dahil olmak üzere geriye doğru 14 barda hesaplanan alt değer toplanarak toplam alt değer hesaplanır.
  10. 
    float lower = math.sum(lower_bar, 14)
    
    

    Her barda hesaplanan ve o bara ait üst veya alt değerden birisi mutlaka 0 değeri almaktadır.

  11. Toplam üst değer toplam alt değere bölündükten sonra elde edilen sonuç 1.0 değerine eklenir. 100 değeri elde edilen sonuca bölünür. Elde edilen sonuç 100 değerinden çıkarılarak MFI değeri elde edilir.
  12. 
    mfi = 100.0 - (100.0 / (1.0 + upper / lower))
    
    

hlc3 değeri bir önceki bara göre artmışsa,

src1 = hlc3

src2 = 0.00

Upper_bar = hlc3 * volume

Lower_bar = 0.00

Bu barda, 14 barın toplamını veren Upper değerine eklenecek değer oluşur, Lower değerine ise eklenecek değer oluşmaz.

hlc3 değeri bir önceki bara göre azalmışsa,

src1 = 0.00

src2 = hlc3

Upper_bar = 0.00

Lower_bar = hlc3 * volume

Bu barda, 14 barın toplamını veren Upper değerine eklenecek değer oluşmaz, Lower değerine ise eklenecek değer oluşur.

Aşağıdaki grafikte, her bar için kaynak değerleri, üst ve alt değerler barın üstündeki kutucuğa, aktif bardan başlamak üzere, geçmiş 14 barın üst ve alt değerlerinin toplamı ve MFI değeri barın altındaki kutucuğa yazılmıştır.

Yukarıdaki grafiğin çizilmesini sağlayan gösterge kodları aşağıdadır:


// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Niteya
//@version=5
// Bu indikatör sadece eğitim amaçlı olarak verilmiştir. Yatırım kararlarınızda kullanmayınız.
indicator(title="Money Flow Index verileri", shorttitle="MFI verileri", overlay=true, format=format.price, precision=2)
length = input.int(title="Length", defval=14, minval=1, maxval=2000)
src = hlc3 // En yüksek (high), en düşük (low) ve kapanış (close) değerlerinin ortalaması alınır (high + low + close)/3

src1 = ta.change(src) <= 0.0 ? 0.0 : src // hlc3 değerinin bir bar önceki değerine göre farkı 0'a eşit veya 0'dan küçükse 0.00 değeri değilse hlc3 değeri alınır.
src2 = ta.change(src) >= 0.0 ? 0.0 : src // hlc3 değerinin bir bar önceki değerine göre farkı 0'a eşit veya 0'dan büyükse 0.00 değeri değilse hlc3 değeri alınır.

// Para akışı hesabı
upper_bar = volume * src1 // src1 değeri hacim değeri ile çarpılarak aktif barın üst değeri hesaplanır.
lower_bar = volume * src2 // src2 değeri hacim değeri ile çarpılarak aktif barın üst değeri hesaplanır.

float upper = math.sum(upper_bar, length) // Aktif bardan başlamak üzere geriye doğru length değeri kadar barda hesaplanan üst değer toplanarak toplam üst değer hesaplanır.
float lower = math.sum(lower_bar, length) // Aktif bardan başlamak üzere geriye doğru length değeri kadar barda hesaplanan üst değer toplanarak toplam altt değer hesaplanır.

// Toplam üst değer toplam alt değere bölündükten sonra elde edilen sonuç 1.0 değerine eklenir. 
// Son 14 bar için, hlc3 değerinin bir önceki bara göre yükseldiği barlarda upper değerine, düştüğü barlar  
// 100 değeri elde edilen sonuca bölünür.
// Elde edilen sonuç 100 değerinden çıkarılarak MFI değeri elde edilir.
// Para oranı = 14 bar için positif para akışı / 14 bar için negatif para akışı = upper / lower

mfi = 100.0 - (100.0 / (1.0 + upper / lower))

color_label = src1>0.0 ? color.rgb(110, 151, 13) : src2>0.00 ? color.rgb(192, 13, 138) : color.silver

label.new(bar_index, high, text='hlc3 : ' + str.tostring(hlc3, '0.00') + '\n' + 'Src1 : ' + str.tostring(src1, '0.00') + '\n' + 'Src2 : ' + str.tostring(src2, '0.00') + '\n' + 
          'Upper : ' + str.tostring(upper_bar, '0.00') + '\n' + 'Lower : ' + str.tostring(lower_bar, '0.00'), 
          yloc=yloc.abovebar, color=color_label, style=label.style_label_down, textcolor=color.white, textalign=text.align_left) 

label.new(bar_index, low, text='Upper : ' + str.tostring(upper, '0.00') + '\n' + 'Lower : ' + str.tostring(lower, '0.00') + '\n' + 'MFI : ' + str.tostring(mfi, '0.00'), 
          yloc=yloc.belowbar, color=color.rgb(205, 146, 35), style=label.style_label_up, textcolor=color.white, textalign=text.align_left) 

MFI gösterge arayüz değerleri

MFI göstergesinin grafik zaman aralığı, MFI uzunluğu, aşırı alım, aşırı satım ve orta seviye değerlerini kullandığımız platformda sunulan arayüz pencerelerinden değiştirebiliriz:

Diğer göstergelerle kullanımı

MFI göstergesinin verdiği sinyallere göre doğrudan işlem yapmak hatalı işlem yapmamıza neden olabilir. Bu nedenle, MFI göstergesinin verdiği sinyali, trend gücünü gösteren ADX göstergesi ile birlikte kullanmak daha sağlıklı sonuçlar verecektir.