Klinger Goslin Volume indicator for radar screen?
Posted: Sun Feb 11, 2007 7:13 pm
TRO... do you think you could take a stab at coding this indicator into a radar screen indicator? It's a little over my head. It seems to be giving good results, especially with the trigger added. Thanks for any help. -C nicehall@hotmail.com
[LegacyColorValue = true];
{KlingerVolOsc + Chick Goslin: Two codes below combined by Layne aka Trend39 @ts
www.tradestationworld.com/discussions/T ... c_ID=26605
www.tradestationworld.com/discussions/T ... c_ID=25839
The Klinger Oscillator is a construct which is
intended to illustrate when price changes are confirmed by volume.
See write-up here:
www.paritech.com/paritech-site/educatio ... linger.asp
Indicator plots a brigher color
at times where the Goslin Trigger is firing.
}
Inputs: Price(C),AV1(3),AV2(10),AV3(16),
FastX(34),
SlowX(55),
TrigLen(13),
Smooth(1),
UpColor(Darkgreen),
DwnColor(Darkmagenta);
{KlingerOsc}
value1 = KVO_rd(FastX, SlowX);
value2 = Summation(value1, Smooth);
if Smooth <= 1 then begin
value3 = value1; end
else value3 = value2; {Value 3 = KlingerOsc}
{KlingerTrigger}
Value4 = XAverage(Value3, TrigLen);
Value5 = Summation(Value4,Smooth);
If Smooth <=1 then begin
value6 = value4; end
else value6 = value5; {Value6 = KlingerTrigger}
{GOSLIN Osc}
Value7 = AVERAGE(price,AV1)-AVERAGE(price,AV2);
{Goslin Trigger}
Value8 = AVERAGE(AVERAGE(price,AV1) - AVERAGE(price,AV2),AV3);
Plot1(value3, "KVOsc");
plot2(value6, "Kling Trig");
Plot3(0, "Midline");
{COLOR CHANGES}
If value7 crosses above value8 then begin
plot1[1](Plot1[1],"KVOsc", Green);
plot1(plot1,"KVOsc",Green);
end else begin
If value7 crosses below value8 then begin
plot1[1](Plot1[1],"KVOsc", Magenta);
plot1(plot1,"KVOsc",Magenta);
end else begin
{
If Plot1>Plot1[1] then begin
plot1[1](Plot1[1],"KVOsc",upcolor);
plot1(Plot1,"KVOsc",upcolor);
end else begin
plot1[1](Plot1[1],"KVOsc",dwncolor);
plot1(Plot1,"KVOsc",dwncolor);}
If Plot1>Plot1[1] then begin
plot1[1](Plot1[1],"KVOsc",upcolor);
plot1(Plot1,"KVOsc",upcolor);
end else begin
If plot1<plot1[1]then begin
plot1[1](Plot1[1],"KVOsc",dwncolor);
plot1(Plot1,"KVOsc",dwncolor);
end; end; end; end;
IF Plot1 Crosses Above Plot2 OR Plot1 Crosses Below Plot2 OR
Plot2 Crosses Above Plot3 OR Plot2 Crosses Below Plot3 Then
Alert = True;
[LegacyColorValue = true];
{KlingerVolOsc + Chick Goslin: Two codes below combined by Layne aka Trend39 @ts
www.tradestationworld.com/discussions/T ... c_ID=26605
www.tradestationworld.com/discussions/T ... c_ID=25839
The Klinger Oscillator is a construct which is
intended to illustrate when price changes are confirmed by volume.
See write-up here:
www.paritech.com/paritech-site/educatio ... linger.asp
Indicator plots a brigher color
at times where the Goslin Trigger is firing.
}
Inputs: Price(C),AV1(3),AV2(10),AV3(16),
FastX(34),
SlowX(55),
TrigLen(13),
Smooth(1),
UpColor(Darkgreen),
DwnColor(Darkmagenta);
{KlingerOsc}
value1 = KVO_rd(FastX, SlowX);
value2 = Summation(value1, Smooth);
if Smooth <= 1 then begin
value3 = value1; end
else value3 = value2; {Value 3 = KlingerOsc}
{KlingerTrigger}
Value4 = XAverage(Value3, TrigLen);
Value5 = Summation(Value4,Smooth);
If Smooth <=1 then begin
value6 = value4; end
else value6 = value5; {Value6 = KlingerTrigger}
{GOSLIN Osc}
Value7 = AVERAGE(price,AV1)-AVERAGE(price,AV2);
{Goslin Trigger}
Value8 = AVERAGE(AVERAGE(price,AV1) - AVERAGE(price,AV2),AV3);
Plot1(value3, "KVOsc");
plot2(value6, "Kling Trig");
Plot3(0, "Midline");
{COLOR CHANGES}
If value7 crosses above value8 then begin
plot1[1](Plot1[1],"KVOsc", Green);
plot1(plot1,"KVOsc",Green);
end else begin
If value7 crosses below value8 then begin
plot1[1](Plot1[1],"KVOsc", Magenta);
plot1(plot1,"KVOsc",Magenta);
end else begin
{
If Plot1>Plot1[1] then begin
plot1[1](Plot1[1],"KVOsc",upcolor);
plot1(Plot1,"KVOsc",upcolor);
end else begin
plot1[1](Plot1[1],"KVOsc",dwncolor);
plot1(Plot1,"KVOsc",dwncolor);}
If Plot1>Plot1[1] then begin
plot1[1](Plot1[1],"KVOsc",upcolor);
plot1(Plot1,"KVOsc",upcolor);
end else begin
If plot1<plot1[1]then begin
plot1[1](Plot1[1],"KVOsc",dwncolor);
plot1(Plot1,"KVOsc",dwncolor);
end; end; end; end;
IF Plot1 Crosses Above Plot2 OR Plot1 Crosses Below Plot2 OR
Plot2 Crosses Above Plot3 OR Plot2 Crosses Below Plot3 Then
Alert = True;