November 30


Open Up!

By Matt Haines

November 30, 2020

System open range breakout

This is kind of a weird one.

I was mulling over the question of what happens when the market opens up, i.e. above its previous close. Is the day likely to be an up day? A down day? I got out of my data and started poking around. I looked at all “open-up” days with an open at least 0.25% above the previous day’s close. I looked at only days that opened up after a previous close-to-close down day. And the reverse.

The statistics were not significant, although it appeared there was something of a shorting opportunity there. I therefore put together a backtest for shorting at the open and holding to the close, and that looked like utter garbage.

So I flipped it. Hmm, getting something interesting here. I made a few tweaks (making sure to only look at my in-sample data while doing so). I came up with an impractical* system that looks good in the out-of-sample testing as well.

Here’s the system:

  • After the close, calculate the 5-day Average True Range of SPY.
  • If it’s greater than than the value 10 days ago:
  • Multiply the current ATR(5) value by 0.4, and add that to the closing price.
  • Set your buy-stop-at-open** order for that value.
  • Sell at the close, not holding overnight.

I find it interesting that this system does OK during bull markets, and does even better – on the long side! – during bear markets.

*Why is this system impractical? It only traded 262 times. That’s only 6% of the total trading days where an order actually placed. That’s what I call a fussy little system. You would not be placing a buy-stop-on-open** order every day… only on the days where your ATR signal appeared. I don’t know how many days that would be, because I can’t be bothered to count them.

OK fine, I’ll count them. 2,055 days. Roughly half of all trading days. Ten percent-ish of the time, you get a trade. I’d want that automated, thank you very much.

**Not to mention, “buy-stop on open” isn’t a real order type (that I know of). You’d have to have your buy-stop in place, and then cancel it immediately after the open. Or you’d have your robot monitor the price just as the market opens, and put a quick buy in. There would be slippage and missed buys and possibly buys when you really didn’t want to.

I present this to you because it might generate ideas of your own. The system is checking for an increase in ATR, which means volatility is increasing. Does that mean “open-up days” tend to have momentum when volatility is higher? Is this a result of slightly longer term mean-reversion during periods of higher volatility? Get your slipsticks out and figure it out for yourself!

–by Matt Haines from Throwing Good Money

Matt Haines

About the author

  • {"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}

    Learn To Code & Build Strategies
    Using EasyLanguage.