Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
i have a set of financial data that i would like to use to find its
historical volatility. I know the equation for determining volatility but i was wondering if there is an excel addin that would speed up the process so i dont have to do everything manually |
#2
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
"JELLO" wrote:
i have a set of financial data that i would like to use to find its historical volatility. I know the equation for determining volatility but i was wondering if there is an excel addin that would speed up the process so i dont have to do everything manually I would be very interested in learning your definition of historical volatility and the equation that you use. I wonder if there is more than one definition. My definition is the standard deviation of the price changes. The following is the "template" that I use to compute historical volatility. Consider a history of 100 price points. A1: price1 A2: price2 ..... 'etc through A100 B2: A2/A1 - 1 'percentage change C2: LN(A2/A1) 'log return ..... 'copy B2:C2 down through B100:C100 C101: EXP(AVERAGE(C2:C100)) - 1 C102: EXP(STDEV(C2:C100)) - 1 C103: EXP(STDEV(C2:C100)/SQRT(COUNT(C2:C100))) - 1 C101 is the average return; it can also be computed using =(A100/A2)^(1/COUNT(A2:A100)) - 1. C102 is the standard deviation, the definition of volatility that I use. C103 is the standard error of the average, which is useful for determining a confidence interval around the average. Does that help? |
#3
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
JELLO wrote:
i have a set of financial data that i would like to use to find its historical volatility. I know the equation for determining volatility but i was wondering if there is an excel addin that would speed up the process so i dont have to do everything manually ----------------- There is a Yahoo group devoted to Excel's use in stock market issues such as this. You can find it at: http://groups.yahoo.com/group/xltraders/ Bill |
#4
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
Thanks for the help guys,
The equation i use is straight forward, Take the natural log of the price change: LN(closing price/previous close) Use as many price changes as you would like, i used 21 days. Take the standard deviation of the natural log of all the price changes...multiply this figure by the square root of 250 (this annualizes the volatility). I plan to use an advanced form of measuring volatility (GARCH method) but my hope was someone would have an excel addin they could share. Thank again for your guys help, yahoo excel financial trading site will be useful too "Bill Martin" wrote: JELLO wrote: i have a set of financial data that i would like to use to find its historical volatility. I know the equation for determining volatility but i was wondering if there is an excel addin that would speed up the process so i dont have to do everything manually ----------------- There is a Yahoo group devoted to Excel's use in stock market issues such as this. You can find it at: http://groups.yahoo.com/group/xltraders/ Bill |
#5
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
As I recall, you're supposed to use the sqrt of the number of days of data
you've used to annualize it -- not simply the sqrt(250). In the example you cited it would be sqrt(21). Also you're supposed to *divide* by the sqrt(time period), not *multiply* by it which makes quite a difference. Using the volatility over a longer period of time tends to reduce the calculated volatility. If you multiply it will artificially increase it instead. Here's a simple reference. It has the equations near the bottom. http://en.wikipedia.org/wiki/Historical_volatility And also here are two links from the other board I referenced. The software does provide plug ins that do a bunch of technical analysis stuff including historical volatility. One provides documentation, the other the actual software. Note that I have not tried it myself. docs: http://tadoc.org/ softwa http://ta-lib.org/ Bill ----------------------- JELLO wrote: Thanks for the help guys, The equation i use is straight forward, Take the natural log of the price change: LN(closing price/previous close) Use as many price changes as you would like, i used 21 days. Take the standard deviation of the natural log of all the price changes...multiply this figure by the square root of 250 (this annualizes the volatility). I plan to use an advanced form of measuring volatility (GARCH method) but my hope was someone would have an excel addin they could share. Thank again for your guys help, yahoo excel financial trading site will be useful too "Bill Martin" wrote: JELLO wrote: i have a set of financial data that i would like to use to find its historical volatility. I know the equation for determining volatility but i was wondering if there is an excel addin that would speed up the process so i dont have to do everything manually ----------------- There is a Yahoo group devoted to Excel's use in stock market issues such as this. You can find it at: http://groups.yahoo.com/group/xltraders/ Bill |
#6
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
"Bill Martin" wrote:
As I recall, you're supposed to use the sqrt of the number of days of data you've used to annualize it -- not simply the sqrt(250). In the example you cited it would be sqrt(21). I disagree. You scale based on the relationship between the units of time, not the sample size. If you have a daily volatility, you scale by 21 for to get monthly volatility and by 252 to get annual volatility. It has nothing to do with how many days -- the sample size -- that you used to determine daily volatility. Of course, the computation of the daily volatility statistic -- standard deviation -- depends on the number of days (data points) in the sample. But not how you subsequently annualize it. Example references, none of which mention sample size in determining the scale factor: http://en.wikipedia.org/wiki/Historical_volatility http://www.riskglossary.com/link/volatility.htm http://www.riskmetrics.com/courses/m...risk/time.html Also you're supposed to *divide* by the sqrt(time period), not *multiply* by it which makes quite a difference. I disagree. You divide by the sqrt of time as a __fraction__ of a year to convert a shorter-period volatility to annual volatility. Conversely, you multiply by the sqrt of time as a __fraction__ of a year to convert annual volatility to a shorter-period volatility. But operative word is "fraction". Those rules are the same as multiplying by the sqrt of time in units per year and dividing by the sqrt of time in units per year, respectively. This is confirmed by the Wikipedia article you cite, as well as the additional articles I cite above. Using the Wikipedia examples .... To convert daily volatility (vd) to annual volatility (va): va = vd / sqrt(1/252). That is the same as va = vd*sqrt(252). Proof: va^2 = vd^2 / (1/252) = 252 * vd^2 va = vd * sqrt(252) Conversely, to convert annual volatility (va) to monthly volatility (vm): vm = va * sqrt(1/12). That is the same as vm = va / sqrt(12). Proof: vm^2 = va^2 * (1/12) = va^2 / 12 vm = va / sqrt(12) |
#7
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
(This is not the place for the following discussion. But I cannot
resist the temptation. Forgive me!) "JELLO" wrote: Take the natural log of the price change: LN(closing price/previous close) Use as many price changes as you would like, i used 21 days. Hmm, at first I wondered why you use so few data points. Then it hit me: a one-month moving average, perhaps for Bollinger bands? Oy! Take the standard deviation of the natural log of all the price changes...multiply this figure by the square root of 250 (this annualizes the volatility). On second thought, there would be no need to annualize daily volatility for Bollinger bands. In any case, my point is: IMHO, 21 data points is far too few for any serious understanding of daily price volatility -- unless you have very small volatility to begin with. Suppose you want to know the mean +/- 100% with 95% confidence. With only 21 data points, that would mean that volatility (sd) must be only 2.3 times the average [1]. I have not seen such low daily volatility, at least not in the stock market. In fact, in one article available on the web [2], during a 10-year period ending Jan 30 2004, the S&P500 had a daily average change of 0.04% and a daily volatility of 1.14%. Thus, the daily volatility was 28.5 times the average! If that were based on just 21 data points, you would only know the mean +/- 1225% (0.04 +/- 0.49) with 95% confidence. Even with only 68% confidence, you would only know the mean +/- 625 (0.04 +/- 0.25)%. In contrast, the article relied on 2520 data points to know the mean +/- 111% with 95% confidence (0.04 +/- 0.0445). I plan to use an advanced form of measuring volatility (GARCH method) GIGO, IMHO. ----- Footnotes [1] 100%*mean = 1.96*sd / sqrt(21) = 1.96*mean*x / sqrt(21) x = mean*sqrt(21) / (1.96*mean) = sqrt(21) / 1.96 [2] http://www.investopedia.com/printabl.../04/021804.asp states that the annual average return was 10.6% and the annualized volatility was 18.1%. So the daily average return is: (1 + 10.6%)^(1/252) = 0.04% and the daily volatility is: 18.1% / sqrt(252) = 1.14% That computed daily volatility matches the text of the article. |
#8
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
Clarification ....
I wrote: If that were based on just 21 data points, you would only know the mean +/- 1225% (0.04 +/- 0.49) with 95% confidence. Since the mean value is itself a percentage, it is confusing to write "mean +/- 1225%". I meant 1225% of the mean, i.e. mean +/- 12.25*mean. Also, where I write "0.04 +/- 0.49", I should have written "0.04% +/- 0.49 points", i.e. -0.45 <= mean <= 0.53. |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Formula to capture historical data from data that changes daily | Excel Worksheet Functions | |||
Specific date stock quotes (historical) in excel??? | Excel Discussion (Misc queries) | |||
Automatically preserving historical data | Excel Discussion (Misc queries) | |||
volatility | Excel Discussion (Misc queries) | |||
Formating fractions so they read like a measuring tape | Excel Discussion (Misc queries) |