ET News & Sponsor Info
General Topics
Markets
Technical Topics
Brokerage Firms
Company Specific
Tools of the Trade
Trading for a Living
Community Lounge
Site Support

# Historical Volatility Equation?

Discussion in 'Technical Analysis' started by cashonly, Apr 2, 2004.

1. ### cashonlyBright Trading, LLC

I'm looking for an equation to calculate the historical volatility of a stock based on a close to close basis.

I know websites where I can find the actual volatility numbers.

But, what I want is the equation to calculate these. Does anyone have it or can you point me in the right direction?

Thanks,

Cash

2. Here is the formula for the historical log-normal vol. It can be used as an input to Black-Scholes. It's directly from McMillan's "Strategic" book, but written in Pascal-like WealthScript. Easy to convert to C.

function LogVol(xdays, currentBar: integer):float;
begin

var AvgOfLns, SumOfAvgs: float;
var count, i, endloop: integer;

var Pratio: array[0..500] of float;
var LNratio: array[0..500] of float;
var Avgarray: array[0..500] of float;

count := currentBar;
AvgOfLns := 0.0;
SumOfAvgs := 0.0;
endloop := xdays - 1;

for i := 0 to endloop do //Get ratio of Closes
begin
Pratio := PriceClose(count)/PriceClose(count - 1);
count := count - 1;
end;

for i := 0 to endloop do //Take the LN and get average
begin
LNratio := LN(Pratio);
AvgOfLns := AvgOfLns + LN(Pratio);
end;

AvgOfLns := AvgOfLns/xdays;

for i := 0 to endloop do //Square difference and get average
begin
Avgarray := Sqr(LNratio - AvgOfLns);
SumOfAvgs := SumOfAvgs + Sqr(LNratio - AvgOfLns);
end;
//Result is normalized to 1 year and expressed as a percent
Result := Sqrt(SumOfAvgs/(xdays-1)) * Sqrt(250.0) * 100.0;

end; //End LogVol function

3. Cash, try my software system's site linnsoft.com. They might have it there under volatility wherein it explains indicators and how it is computed. Also, try peter hoadley's site. He is an options guru and has TONS of formulas.

Gabby

4. If price variation is supposed to be log normal (hmm, hmm... ) it's simply the standard deviation of it : you can use STDEV in excel or for purist STDEVP (which just substract 1 day to the denominator of variance but if number of days is quite large above 100 it doesn't really make a practical diff), the formula of STDEV is no secret I think it's even in Excel Help file. Then multiplying by SQRT(250) days is strictly useless statistically speaking but it is the tradition in finance.

ET IS FREE FOR TRADERS BECAUSE OF THE FINANCIAL SUPPORT FROM THESE SPONSORS: