December TRADERS' TIPS

Here is this month's selection of Traders' Tips, contributed by various developers of technical analysis software to help readers more easily implement some of the strategies presented in this issue.

You can copy these formulas and programs for easy use in your spreadsheet or analysis software. Simply "select" the desired text by highlighting as you would in any word processing program, then use your standard key command for copy or choose "copy" from the browser menu. The copied text can then be "pasted" into any open spreadsheet or other software by selecting an insertion point and executing a paste command. By toggling back and forth between an application window and the open Web page, data can be transferred with ease.

This month's tips include formulas and programs for:

METASTOCK
TRADESTATION / SUPERCHARTS
TECHNIFILTER PLUS
WAVEWI$E MARKET SPREADSHEET
SMARTRADER
 
 

or return to December Contents

METASTOCK

In "High volatility and market turns" in this issue, William Brower uses a historical market lookback to show how volatility readings can help predict turns in the market. The indicator he presents, volatility%, is used to analyze the true range of the Dow Jones Industrial Average (DJIA), and thus compare the historical market with today's market.

In MetaStock for Windows, you can easily recreate the volatility% indicator from Brower's article. First, choose Indicator Builder from the Tools menu in MetaStock. Next, choose New and enter one of the following formulas as appropriate:

Formula for MetaStock 6.5:



Volatility%


Lookback := Input("Time Periods",1,1000,50);


HighVolatility := Input("High Volatility %",.01,100,3);


100 * Sum(100 * ATR(1)/CLOSE > HighVolatility, Lookback)/Lookback
Formula for earlier versions of MetaStock for Windows:


Volatility%


100 * Sum(100 * ATR(1)/CLOSE > 3, 50)/50
Now drag the "Volatility%" indicator from the Indicator QuickList and drop it onto the desired chart, where it will be instantly plotted.
--Allan J. McNichol, Equis International
800 882-3040, 801 265-8886
Internet: https://www.equis.com
GO BACK


TRADESTATION / SUPERCHARTS

In "Identifying trends with volume analysis" in this issue, Stephen Klinger gives a new approach for using volume. The TradeStation Traders' Tip this month is based on the volume oscillator (KVO) presented in the article. For TradeStation and SuperCharts, we'll call the indicator Volume Osc. This indicator can plot both the short-term and long-term versions of the oscillator.

The indicator uses a total of four inputs: FastX determines the length of the faster (shorter) exponential moving average of the volume force; SlowX determines the length of the slower (longer) exponential moving average of the volume force; Trigger determines the length of the exponential moving average used to smooth the KVO line; and Smooth determines the amount of smoothing of the KVO and trigger lines using a summation of the values. The Smooth input allows for the generation of smoothed plot lines for longer-term analysis. If the Smooth input is set to 1 or zero, no smoothing will be in effect.

The process of developing this indicator begins with the creation of two functions, Vforce and KVO. These two functions basically provide supporting calculations, which will allow the oscillator values to be easily referenced from other custom studies. The two functions should be created in the order presented below, using their assigned names.



Type: Function 
Name: VForce


Vars: TSum(0), Trend(0), DM(0), CM(0);


TSum = High + Low + Close; 
IF TSum > TSum[1] Then


Trend = 1


Else


Trend = -1;


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;


Type: Function 
Name: KVO


Inputs: FastX(Numeric), SlowX(Numeric); 
Vars: FXAvg(0), SXAvg(0);


FXAvg = XAverage(VForce, FastX); 
SXAvg = XAverage(VForce, SlowX); 
KVO = FXAvg - SXAvg;
Once the two functions have been created and verified, the indicator can then be created. The indicator should be scaled to "screen."


Type: Indicator 
Name: Klinger Volume Osc


Inputs: FastX(34), SlowX(55), TrigLen(13), Smooth(1); 
Vars: Trigger(0);


Trigger = XAverage(KVO(FastX, SlowX), TrigLen);


IF Smooth <= 1 Then Begin


Plot1(KVO(FastX, SlowX), "KVO");


Plot2(Trigger, "KVO Trigger");


End Else Begin


Plot1(Summation(KVO(FastX, SlowX), Smooth), "KVO");


Plot2(Summation(Trigger, Smooth), "KVO Trigger");


End;


Plot3(0, "Zero");


IF Plot1 Crosses Above Plot2 OR Plot1 Crosses Below Plot2 OR


Plot2 Crosses Above Plot3 OR Plot2 Crosses Below Plot3 Then


Alert = True;
This code is available at Omega Research's Web site. The file name is "KVO.ELA." Please note that all Traders' Tips posted at the Omega Research Web site can be utilized by both TradeStation and SuperCharts software. Whenever possible, the posted techniques will be given in both Quick Editor and Power Editor formats.
--Gaston Sanchez
Omega Research
800 422-8587, 305 270-1095
Internet: https://www.omegaresearch.com
GO BACK

TECHNIFILTER PLUS

Here's a TechniFilter Plus, version 8, report based on Stephen Klinger's article "Identifying trends with volume analysis." The article elsewhere in this issue describes how to use volume statistics to judge the strength of a price move.

Formula 2 in the TechniFilter Plus report given here computes the trend (T), and formula 3 computes the daily measurement (DM) as described by Klinger. Formula 4 is a recursive formula that computes cumulative measurement (CM) by adding up the last two daily measurements if the trend changes, or by adding the current daily measurement to yesterday's cumulative measurement if the trend stays the same. Formula 5 computes the volume force (VF). Formulas 6 and 7 compute exponential averages of the volume force. Formula 8 computes KVO, and formula 9 computes the trigger.

Trends with Vol report

NAME: Trends with Vol

UNITS TO READ: 120

FORMULAS

[1] Symbol

[2] T

((H+L+C)-TY1)U1
[3] DM
H-L
[4] CM
( [2]<>[2]Y1 ) * ([3]+[3]Y1) + ( [2] =[2]Y1 ) * (TY1 + [3])
[5] VF
V * ( (2*[3]/[4])-1)U0 * [2] * 100
[6] 34 EMA
[5]X34
[7] 55 EMA
[5]X55
[8] KVO
[6]-[7]
[9] 13 Trigger
[8]X13
This TechniFilter Plus strategy can also be downloaded from RTR's Web site.
--Clay Burch, RTRSoftware
919 510-0608, E-mail: rtrsoft@aol.com
Internet: https://www.rtrsoftware.com
GO BACK

WAVE WI$E MARKET SPREADSHEET

The following WAVE WI$E formulas implement Stephen Klinger's volume oscillator as described in "Identifying trends with volume analysis."

WAVE WI$E spreadsheet formulas

A: DATE
@TC2000(c:\tc2000\data,DJ-30,DOW JONES INDUSTRIALS,DB)
B: HIGH

C: LOW

D: CLOSE

E: OPEN

F: VOL

G: Psum

HIGH+LOW+CLOSE
H: Trend
@IF(PSUM>PSUM[-1],1,@IF(PSUM<PSUM[-1],-1,TREND[-1]))
I: DM
HIGH-LOW
J: CM
@IF(TREND=TREND[-1],@CUM(DM),DM+DM[-1])
K: VF
VOL*(@ABS(2*(DM/CM)-1))*TREND*100
L: EMA34
@EAVG1(VF,34)
M: EMA55
@EAVG1(VF,55)
N: KVO
EMA34-EMA55
O: Trigger
@EAVG1(KVO,13)
P:

==========End Formulas

--Peter Di Girolamo, Jerome Technology
908 369-7503, E-mail: jtiware@aol.com
Internet: https://members.aol.com/jtiware
GO BACK

SMARTRADER

The volume oscillator (KVO) described by Stephen Klinger in "Identifying trends with volume analysis" is easily implemented in SmarTrader using a combination of conditional expressions, user formulas and preprogrammed studies and functions.

The SmarTrader specsheet implementing Klinger's oscillator is shown in Figure 1. Row 8 sums today's high, low and close. Row 9 is an if-statement that assigns a "+1" value to T (trend) if today's sum is greater than yesterday's. The false condition assigns a "-1" value to T. Row 10 is a conditional statement that returns a "1" if the trend is continued from the prior day or "0" if it is not. Row 11 returns a "1" if today begins a new trend or a "0" if it does not.

Row 12 (DM, or daily measurement) is the difference of the high and low for the day. Row 13 computes the value of CM (that is, cumulative measurement) if a new trend is started today. Row 14 reports yesterday's CM plus today's DM if the trend is continued, or a new CM if the trend today is new. Row 15 is a user formula creating a partial calculation of VF (volume force). Row 16 extracts the absolute value of the previous row using the Abs_val function. Row 17 is a user row that calculates the final VF result.

Rows 18 and 19 are 34- and 55-day exponential moving averages of VF. Row 20 creates the KVO oscillator. Row 21 is the 13-day exponential smoothing of the KVO trigger.

Row 22 uses the "accumulate" function to create a cumulative KVO. We added a 13-period exponential moving average of the KVOacum as a trigger for the KVOacum.

This specsheet file is available from Stratagem's Web site.

--Jim Ritter, Stratagem Software International
504 885-7353, E-mail: Stratagem1@aol.com
Internet: https://members.aol.com/stratagem1
 

FIGURE 1: SMARTRADER. This SmarTrader SpecSheet implements Stephen Klinger's volume oscillator.
 
 

GO BACK


Return to December Contents