The (generalized version) of the problem I'm trying to solve: Say you're observing the surface of a puddle while it's raining. There are various sized ripples occurring wherever a raindrop hits the puddle, which happens with a regular frequency. Now imagine you throw a pebble at the puddle; how would you determine, by watching the waves, the probability of whether the pebble landed inside the puddle (creating ripples stronger than a raindrop would make) or outside (creating no ripples)? In other words, can you calculate the probability of whether an event (a pebble was thrown in) occurred?

In more concrete terms, I have market time series data with each entry containing a high and low for that day. So, first I calculate the average true range (an exponential moving average) and divide by the median (high-low) price to get an average daily price movement in percent. I then calculate the average standard deviation of the movement using a simple moving average. On the day of the event, I measure the movement and calculate the probability using...Z-scores? This is the part I've gotten to and I'm not sure if it's in any way reasonable to look at it like this.

Is this a valid way to solve the problem? Are there better ways? I'm looking for a big picture view, not necessarily something which would be extremely accurate but at least which would be a valid interpretation.


1 Answer 1


Your approach is parsimonious and would be accurate under the assumption that the daily price range is normally distributed.

A permutation test would allow you to make an inference without assuming the normality of the daily price range. At its simplest, the idea is to rank the price ranges in order from highest to lowest, and look into what percentile the event day price range falls. One minus this percentile is a comparable statistic to the p-value associated with the z score you are thinking of calculating.

If you think the moving averages are meaningful, then instead of using price ranges, you could use deviation from the 50-day moving average of the price range as your statistic. You could also control for the price range of the market as a whole, say by regressing daily price range on the market's daily price range and running the permutation test on the residuals from this regression.

Why are you interested in the range, rather than the daily change, i.e. closing minus opening price? Your approach implies that you think your event predominantly affects intraday variance rather than change in price. If you were thinking of some kind of event (like earnings announcements), I would think daily price change would be a better statistic to examine.

In the latter case, there are standard methodologies to control for movement of the market on event days. MacKinlay (1997), "Event Studies in Economics and Finance" is a good reference.

  • $\begingroup$ Thanks for the suggestions. I'll do some research on applying a permutation test, and making it beta neutral is also a good idea. As far as using the range, my thinking was along the lines of trying to get a baseline for the average movement of a stock and compare that to the movement seen on the day of the event. Essentially, trying to see if that event actually had any impact on the price regardless of direction. What I'm looking at is events which could be related, but aren't necessarily; things like macro events, published articles, etc. $\endgroup$ Jan 23, 2014 at 16:03
  • $\begingroup$ If you think these events will move the price in a particular direction (even if some events move it up and some move it down), then absolute price change might be a good metric. Suppose a stock falls 2% and then rises 4%, so at the end of the day it is up 2%. Do you want to think of that as a 2% change or a 4% change? $\endgroup$
    – pnj
    Jan 23, 2014 at 19:31
  • $\begingroup$ Let me offer an example of an event: any time after an article is published, the price can theoretically be affected by it. I'm only looking at daily data at the moment so I make some cutoff times to determine whether to look at day of or day after, and then use that day's values to check if the price exhibited uncharacteristically high movement. Since this is only one data point in a set of events the trend should show even if some events are false positive. To answer your question, does it actually matter so long as I'm consistent? Presumably the price would be consistent accross metrics $\endgroup$ Jan 23, 2014 at 23:08
  • $\begingroup$ in principle it doesn't matter whether you use range or abs(price change) - but many more people have used price, so you'll find more relevant references to that method. If the answer is useful, please upvote or accept it. $\endgroup$
    – pnj
    Jan 24, 2014 at 2:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.