Denge işlem hacmi (On Balance Volume - OBV), hisse senedi fiyatındaki değişiklikleri tahmin etmek için hacim değişikliklerini kullanan bir momentum göstergesidir. Alım satım basıncını ölçmek için kullanılır. Joseph Granville tarafından geliştirilmiştir.
Gösterge, hacmin piyasaların arkasındaki temel güç olduğu düşüncesinden yola çıkılarak, hacim değişikliklerine bağlı olarak piyasalarda büyük hareketlerin ne zaman gerçekleşeceğini öngörecek şekilde tasarlanmıştır. Hisse senedi fiyatında önemli bir değişiklik olmadan hacim belirgin bir şekilde arttığında, fiyatın eninde sonunda yükseleceği veya düşeceği kabul edilmektedir.
En son barda, fiyat yükseldiğinde, o bara ait hacim daha önceki barlara ait toplam hacim değerine eklenir, fiyat düştüğünde ise çıkarılır. OBV göstergesinin en son değeri, fiyat eğilimlerini doğrulamak veya tanımlamak veya farklılıklardan sonra fiyat hareketlerini öngörmek için kullanılır.
OBV'nin temel yaklaşımı, akıllı para (kurumsal yatırımcılar) ile küçük yatırımcılar arasındaki farklılığı ortaya koymaktır. Küçük yatırımcıların sattığı hisse senetleri akıllı para tarafından satın alınmaya başladığında, fiyat nispeten aynı seviyede kalsa bile hacim artabilir. Hacmin artması ile birlikte fiyat yükselişe geçer. Fiyatın yükselişe geçmesi ile birlikte büyük yatırımcılar satmaya, küçük yatırımcılar ise satın almaya başlar. Akıllı paranın hareketini takip etmek için OBV hacim değerlerini incelemek gerekir.
OBV verilerini aşağıda belirtilen kurallar çerçevesinde kullanabiliriz:
OBV göstergesini 2 farklı yöntemle kullanabiliriz. Bu yöntemler, göstergenin kendi ortalamasıyla kesişmesini ve uyumsuzluk verilerini kullanmayı içerir.
OBV göstergesi, kendi değeri ile hesaplanan belirli bir uzunlukta hareketli ortalama değeri ile birlikte kullanılarak al ve sat sinyalleri alınabilir.
OBV gösterge çizgisi, hareketli ortalama çizgisini yukarı doğru keserse al, aşağı doğru keserse sat sinyali olarak yorumlanır.
Aşağıdaki grafikte, 10 uzunlukta basit hareketli ortalama çizgisi ile elde edilen al ve sat sinyalleri gösterilmektedir.
Aşağıdaki grafikte, OBV çizgisinin hareketli ortalama çizgisini yukarı doğru kestiği alım noktaları açık yeşil renkli daire, aşağı doğru kestiği satış noktaları açık kırmızı renkli daire ile işaretlenmiştir.
OBV göstergesi ile fiyat grafiği arasındaki uyuşmazlıkları değerlendirerek, al ve sat sinyalleri alabiliriz.
Aşağıda, fiyat hareketleri ile OBV 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, OBV 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 OBV 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, OBV 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
OBV 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:
OBV hesaplaması aşağıdaki esaslara göre yapılır:
OBV değeri aşağıdaki işlemlerin sırasıyla yapılmasıyla elde edilir:
Her bar için:
close_change = ta.change(close)
sign = math.sign(close_change)
obv = ta.cum(sign * volume)
Aşağıdaki grafikte, her bar için kapanış ve bir önceki barın kapanış değeri ile iki değerin farkı, değer farkının işareti, hacim değeri ve OBV değeri barın üstündeki kutucuğa yazılmıştır. Kapanış değeri bir önceki barın kapanış değerine göre artmışsa kutucuğun rengi açık yeşil, azalmışsa açık kırmızı olarak ayarlanmış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("OBV verileri", overlay=true)
close_change = ta.change(close) // close değerinin bir önceki bardaki close değeri ile farkını alır.
sign = math.sign(close_change) // close ve close[1] farkının matematiksel işaretini alır. Fark 0'dan büyükse 1, 0'dan küçükse -1 ve 0'a eşitse 0 değeri alır.
obv = ta.cum(sign * volume) // Tüm barlardaki volume değerlerini toplar
color_label = sign>0 ? color.rgb(110, 151, 13) : sign<0 ? color.rgb(192, 13, 138) : color.silver
label_text = 'Close: ' + str.tostring(close, '0.00') + '\n' + 'Close[1]: ' + str.tostring(close[1], '0.00') + '\n' +
'Change: ' + str.tostring(close_change, '0.00') + '\n' + 'Sign: ' + str.tostring(sign, '0.00') + '\n' +
'Volume: ' + str.tostring(volume) + '\n' + 'OBV: ' + str.tostring(obv, '0.00')
label.new(bar_index, high, text=label_text, yloc=yloc.abovebar, color=color_label, style=label.style_label_down, textcolor=color.white, textalign=text.align_left)
OBV göstergesinin hareketli ortalama yöntemi, uzunluğu ve grafik zaman aralığını kullandığımız platformda sunulan arayüz pencerelerinden değiştirebiliriz:
OBV göstergesinin verdiği sinyallere göre doğrudan işlem yapmak hatalı işlem yapmamıza neden olabilir. Bu nedenle, OBV göstergesinin verdiği sinyali, geciken göstergelerle birlikte kullanmak daha sağlıklı sonuçlar verecektir.