RICONOSCERE IL TREND COL KLINGER VOLUME OSCILLATOR - parte 1

Enrico Malverti - 06/02/2009 9.56.00

Una delle prime regole del trader di successo recita "Ride the trend" letteralmente "cavalca il trend". Riconoscere velocemente le fasi laterali da quelle a tendenza definita è quindi una delle priorità per massimizzare i guadagni e limitare i falsi segnali. L'indicatore più noto per segnalare l'inizio di una tendenza dei prezzi di borsa è l'adx, che deve assumere valori superiori ad una soglia che la letteratura più blasonata stabilisce essere 35. Purtroppo questa soglia definisce con chiarezza il trend ma serve ad identificarlo quando è già iniziato e non consente di cavalcarlo interamente. Analizziamo in questa sede che può essere utile come complemento dell'adx: il Klinger Volume Oscillator (KVO). Il KVO è un oscillatore che prende il nome dal suo ideatore Stephen J. Klinger che lo illustrò per la prima volta in un articolo del 1994 intitolato "Identifying trends with volume analysis" pubblicato dall'MTA Journal. L'approccio di Klinger è innovativo perché fa un uso particolare dei volumi di contrattazione impiegati infatti per definire la forza del trend. L'obbiettivo dell'ideatore era quello di ottenere un buon strumento sia per individuare i trend di breve termine sia per i trend di lungo periodo con una combinazione di prezzi, trading range e volumi che aiuti ad individuare massimi e minimi di mercato. L'importanza dei volumi è data dal fatto di esercitare un grande impatto sui prezzi, a causa delle diverse pressioni innescate dalle forze in acquisto e in vendita. L'oscillatore è calcolato incrementando di una unità la variabile "trend" ogni volta che la somma di massimo, minimo e chiusura è maggiore della barra precedente, nel caso contrario la variabile è decrementata di una unità. Questo valore viene moltiplicato per i volumi e per la quantità 2 x ((dm / cm) - 1) dove dm = (massimo - minimo) e cm = (cm[barra precedente] dm) nell'ipotesi che il valore assunto dalla variabile trend sia uguale a quello della barra precedente oppure cm = (dm[barra precedente] dm) nell'ipotesi che i valori della variabile trend differiscano da una barra all'altra. Dal valore così ottenuto si calcola la differenza tra la media mobile esponenziale dei volumi a 34 giorni e quella a 55 giorni e, a parte, si calcola una media mobile esponenziale del KVO (trigger) a 13 giorni che viene utilizzata per prendere le decisioni operative. In sintesi la formula del KVO è data da:

00 Proseguiamo con la disamina di questo utile strumento di screening: Nello scorso articolo ( http://www. Smooth(1). SlowX).Trigger = XAverage(KVO(FastX. Oggi vedremo il codice: {********************************************* KVO-INDICATOR OmegaResearch.com **********************************************} Inputs: FastX(34). "KVO"). SlowX(55).RICONOSCERE IL TREND COL KLINGER VOLUME OSCILLATOR .26.com/ttm/riconoscere-trend-col-klinger-volumeoscillator-parte-1) avevamo visto la teoria di base e la formula matematica alla base dell'indicatore. Plot2(Trigger.toptrader-mag. SlowX). Vars: Trigger(0).parte 2 Enrico Malverti . TrigLen(13).11/02/2009 10. IF Smooth <= 1 Then Begin Plot1(KVO(FastX. "KVO Trigger"). TrigLen). .

IF TSum > TSum[1] Then Trend = 1 Else Trend = -1. "Zero"). Smooth).End Else Begin Plot1(Summation(KVO(FastX. Trend(0). IF Trend = Trend[1] Then CM = CM Range Else CM = Range Range[1]. IF CM <> 0 Then VForce = Volume * AbsValue(2 * (DM/CM) -1) * Trend * 100. Plot3(0. IF Plot1 Crosses Above Plot2 OR Plot1 Crosses Below Plot2 OR Plot2 Crosses Above Plot3 OR Plot2 Crosses Below Plot3 Then Alert = True. SlowX). CM(0). End. "KVO"). Plot2(Summation(Trigger. SlowX(Numeric). {******************************************* Function – KVO *******************************************} Inputs: FastX(Numeric). TSum = High Low Close. DM(0). . {***************************************** Function – VForce *****************************************} Vars: TSum(0). Smooth). "KVO Trigger").

FXAvg = XAverage(VForce. Klinger programmed by Enrico Malverti *****************************************} Inputs: FastX(34). Il Klinger Oscillator può essere impiegato in due modi: nel primo modo se il trend è ascendente bisogna prendere una posizione al rialzo quando l’oscillatore scende sotto lo zero e poi risale incrociando la trigger line.Vars: FXAvg(0). . Nella codifica dell’indicatore gli input FastX e SlowX determinano la lunghezza (rispettivamente più corta e più lunga) della media mobile esponenziale della forza esercitata dai volumi mentre Trigger è la lunghezza della media mobile esponenziale del KVO. SlowX). ossia il trading system compra quando il KVO incrocia. Klinger = KVO(FastX. 10) > Average(C. Trigger = XAverage(KVO(FastX. Vars: Trigger(0). SlowX). Abbiamo creato un signal in linguaggio Easy language di Tradestation che prende posizione sul mercato rispettando la logica appena descritta. SlowX(55). Klinger(0). TrigLen).SXAvg. 50) and Klinger > 0 Then Buy on C. {**************************************** KVO Signal by Stephen J. SlowX). Viceversa per l’apertura di una posizione ribassista. la trigger line e contemporaneamente la media mobile a 10 periodi è maggiore della media mobile a 50 periodi. TrigLen(13). KVO = FXAvg . {Long entry} IF marketposition = 0 and Klinger Crosses over Trigger and average(C. superandola. FastX). SXAvg = XAverage(VForce. SXAvg(0).

Inc. {******************************************************************* Description Provided By : Modified Parabolic Long Exit : Omega Research. 3) * FirstBarMultp. End Else Begin StopPrice = StopPrice AF * (HighValue . If High > HighValue Then HighValue = High. HighValue = High. HighValue(0). 10) < Average(C. If MP = 1 Then Begin If MP[1] <> 1 Then Begin StopPrice = Low . 50) Then Sell on C.StopPrice).2 Then . AF(0). AF = Acceleration. StopPrice(0).{Short entry} {IF marketposition = 0 and Klinger Crosses under Trigger and average(C. (c) Copyright 1999 ********************************************************************} Inputs: Acceleration(.} Per testare velocemente gli ingressi l’uscita dalla posizione rialzista è stata realizzata con un trailing stop basato sul parabolic denominato Parabolic ModStop Lx implementato dagli sviluppatori di Omega Research.5). FirstBarMultp(1. MP(0). If HighValue > HighValue[1] AND AF < 0.Average(TrueRange.2). MP = MarketPosition. Variables: SAR(0).

AF = AF MinList(Acceleration. testata su dati giornalieri chiude in utile sulla maggior parte dei titoli azionari italiani senza alcun adattamento al time frame e senza un risk management particolarmente sofisticato. If StopPrice > Low Then StopPrice = Low. 2 sul titolo Stmicroeletronics. l’oscillatore consente spesso di entrare in acquisto sulla base di un movimento direzionale massimizzando i guadagni. If MP = 1 Then ExitLong ("PM") Next Bar at StopPrice Stop. End. Come si vede anche dalla fig.parte 3 Enrico Malverti . . Si veda ad esempio il grafico N.16/02/2009 22. RICONOSCERE IL TREND COL KLINGER VOLUME OSCILLATOR . anche se non è esente da qualche falso segnale di troppo che potrebbe essere limitato ad esempio aggiungendo l’ulteriore condizione che l’oscillatore. Nel prossimo articolo Proveremo ad applicarlo su dati storici reali. End.AF). 1. al momento dell’incrocio col trigger sia maggiore di zero.15.00 Il secondo modo per utilizzare l’oscillatore è quello di individuare le divergenze per identificare quando i prezzi ed i volumi non stanno confermando la direzione del movimento.2 . Una situazione in cui il KVO si dimostra particolarmente efficace si ha quando l’indicatore diverge con il movimento del prezzo del titolo o quando esso incrocia la trigger line in condizioni di ipervenduto. La strategia di base. 0. quindi la base di partenza data dal Klinger Volume Oscillator è certamente valida.

L’acquisto è tempestivo e riesce a cogliere quasi tutto il movimento rialzista.Fig. . La linea orizzontale corrisponde allo zero. Esempio di un trade basato sul Klinger Volume Oscillator su Banca Popolare di Milano. 1. Nella parte sottostante al grafico a barre è rappresentato l’andamento dell’oscillatore e della sua media mobile (trigger) usata per i segnali operativi (delle due la più smussata).

2.com . Il punto evidenzia con precisione un minimo di mercato di medio periodo. Enrico Malverti info@lombardreport.Fig. Nel punto evidenziato dalla freccia il Klinger Oscillator incrocia al rialzo la linea di trigger in una fase di forte ipervenduto rappresentata nella parte bassa del grafico da un RSI a 14 periodi inferiore a 30.