Daily data, such as open and close prices, is often available for much longer periods than high-frequency data. However, whenever backtesting any strategy that examines instruments traded in different time zones and at different exchanges, one faces the problem of how to account for market movement while one exchange was open and the other closed. In other words, the open and close prices recorded by the exchanges and reported by most data providers do not line up. Thus if major market-moving news comes out during the US day time but after Asian or European markets have closed, then the impact of that news will be reflected in the same day's returns, but won't be reflected in Asian/European markets' returns until the following day. Consequently, any signals generated simultaneously from both markets' returns and/or open/close prices will be biased.

For example, suppose US markets rally strongly going into the close. Then US markets may appear overvalued relative to European and Asian markets judging by index prices as of the US close, although in reality the latter markets have moved as well (as ETFs traded on US exchanges would clearly indicate). Since no trading has occurred (yet) in non-US markets, index prices are not representative of true market prices.

What methods should one use to reconcile the open and close prices to be on a similar timescale? Would it be better to simply ignore the much longer history which has daily data but no high-frequency data? If you choose to interpolate, should you use the interpolated points to calculate other statistics, such as volatilities, as well? Suppose one is dealing with a relatively short-horizon signal (decaying over 5-10 days), so that smoothing out these differences by looking at longer return periods (e.g. weekly) is not feasible.

  • 1
    $\begingroup$ Just to make sure I (and everybody) understand. You mean that some markets will be closed while other will be open, and since your strategy is spread over different markets, you're "struggling" to compute the statistics of the returns is that right? $\endgroup$ – SRKX Dec 18 '11 at 20:56
  • $\begingroup$ @SRKX I'm struggling to correct my trading signals for market-moving news that occurred while one market was closed and another was open. $\endgroup$ – Tal Fishman Dec 18 '11 at 21:05
  • $\begingroup$ From what I understand, you wanted to be able to predict or adjust the opening price base on other market close and news occurred pre-market? $\endgroup$ – teng Dec 19 '11 at 1:26
  • $\begingroup$ @tedteng that would be one way of doing it. Or you could adjust the close to remove the effect of news after the other market closed. There may be many ways to do it. $\endgroup$ – Tal Fishman Dec 19 '11 at 1:32
  • $\begingroup$ Many futures markets remain open well-past regular trading hours. Perhaps you could use information from the futures markets to re-calibrate the expected opening prices of markets that are closed. $\endgroup$ – Ram Ahluwalia Dec 19 '11 at 14:21

The blog post http://www.portfolioprobe.com/2011/11/21/asynchrony-in-market-data/ explains a bit more about the problem and it also points to a paper that shows that a moving average model is the way to make the adjustment that Tal is seeking.

The paper is presented in the context of a multivariate garch model. That is gratuitous, really -- the MA estimate is going to be just about the same whether or not garch effects are taken into account.

I would think that getting one MA estimate for each pair of markets would be sufficient (and probably better) than an estimate for each pair of assets.

Caveat: the adjustment gives you an average. So even if the MA estimate were perfect, it would still only give you the adjustment on average rather than (perhaps) a few big moves and lots of basically zero moves. So I think you would want to do this for a reasonably long timespan if you do it at all.

  • $\begingroup$ Great blog post (from just 1 month ago, what a coincidence) on how to estimate correlations. You essentially answered half my question, as to whether you should use interpolated values to calculate other statistics. Wondering if you have any thoughts on the main question, which is how to adjust the levels (at each point in time, not on average). $\endgroup$ – Tal Fishman Dec 20 '11 at 15:22
  • $\begingroup$ Tal, I'm confused. The referenced paper says how to get "synchronized" returns so you get a useful return at each point in time, but the adjustment is based on an average. If you want to get an adjustment for each day separately, then I think you would have to use something like news analytics (as in an even more recent blog post portfolioprobe.com/2011/12/12/news-analytics ). But if you have that data, there is probably better uses of it and your time that this exercise. $\endgroup$ – Patrick Burns Dec 20 '11 at 17:31
  • $\begingroup$ Sure, you get a return at each point in time, and it is useful for calculating summary statistics, but not really good for trading signals. The news analytics is an interesting idea, but I think more often than not there was no major news. $\endgroup$ – Tal Fishman Dec 21 '11 at 12:03
  • 1
    $\begingroup$ Tal, Agreed. Essentially you're saying you have a hard problem. $\endgroup$ – Patrick Burns Dec 21 '11 at 15:43

You need to know timezone for each instrument. Then for each instrument convert its time data from local to UTC (or to any other timezone that is convenient to you).

Implementation hint: use the freely available Olson database. Timezone conversion routines are easy to find for every serious programming language.

  • $\begingroup$ OK, I edited for clarity. $\endgroup$ – Tal Fishman Dec 18 '11 at 21:03
  • $\begingroup$ +1 for Olson database suggestion - led me to some good reading $\endgroup$ – ghostJago Dec 20 '11 at 11:52

Probably not the best solution, but an alternative approach would be to look at the data weekly, e.g. weekly open and close, hence eliminating the 'time zone bias'.

Here is a plot of varying markets over a week, just for fun... enter image description here

  • $\begingroup$ How would weekly open and close reconcile the time zone differences? You still have the same exact problems, just reducing the proportion of mismatch relative to total volatility. $\endgroup$ – Tal Fishman Dec 18 '11 at 20:26
  • $\begingroup$ @Tal Sometimes that's a usable workaround. Just switch from thinking in terms of DD/MM/YYYY to week of year. $\endgroup$ – wburzyns Dec 18 '11 at 20:52
  • 1
    $\begingroup$ @wburzyns and sometimes its really not usable. Suppose the signal decays relatively quickly, perhaps over 5-10 days. Going from daily to weekly data will likely kill whatever predictive power the signal ever had. So let's stick to the situation where it's not usable, and I need a solution, not a workaround. $\endgroup$ – Tal Fishman Dec 18 '11 at 20:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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