Skip to main content

Klinger Volume Oscillator for Amibroker (AFL)

aresty almost 7 years ago Amibroker (AFL)

  • Rating:
    5 / 5 (Votes 1)
  • Tags:
    amibroker

The Klinger oscillator was developed by Stephen Klinger to determine the long-term trend of money flow while remaining sensitive enough to detect short-term fluctuations.

https://www.mail-archive.com/amibroker@yahoogroups.com/msg17396.html

Indicator / Formula

Copy & Paste Friendly
// Klinger oscillator indicator 
signal_period = Param("Signal Period",13,0,300,1); 
hlc      = High + Low + Close; 
dm       = High - Low; 
cm       = 0; 
trend    = 0; 
for( i = 1; i < BarCount; i++ ) 
{ 
   newtrend = trend; 
   if (hlc[i] > hlc[i-1]) 
      newtrend = 1; 
   if (hlc[i] < hlc[i-1]) 
      newtrend = -1; 
   if (trend == newtrend) 
   { 
      cm       = cm + dm[i]; 
   } 
   else 
   { 
      cm       = dm[i-1] + dm[i]; 
      trend    = newtrend; 
   } 
   if (cm == 0) 
   { 
      vf[i] = 0; 
   } 
   else 
   { 
      vf[i] = Volume[i] * abs(2*((dm[i]/cm)-1)) * trend * 100; 
   } 
} 
kvo    = EMA(vf, 34) - EMA(vf, 55); 
kvosig = EMA(kvo, signal_period); 
Plot(kvo,"Klinger Osc.",colorRed, styleLine); 
Plot(kvosig,"Klinger Osc. Signal",colorBlue, styleLine); 

0 comments

Leave Comment

Please login here to leave a comment.