Subscribe to DSC Newsletter

New pattern to predict stock prices, multiplies return by factor 5

This pattern was found on recent price activity for the 500 stocks that are part of the S&P 500 index. For each day between 4/24 and 5/23, I looked at companies that experienced the most extreme returns - among these 500 companies - comparing today with yesterday close.

Then I looked at the daily performance the following day (again comparing day-to-day close prices), for companies who ranked either #1 or #500 today. Companies that ranked #1 today also experienced (on average) a boost in stock price the next day. The boost was more substantial for companies experiencing a 7.5% (or more) price increase today. And the return boost on the next day was statistically significant, and quite large. So big indeed, that the total (non compound) return based on this predictive signal would have been 20% over 30 days, vs. 4.5% for the overall performance of the S&P 500 index itself.

By statistically significant, I mean that

  • It happened throughout the time period in question (not just on a few days), 
  • It was not influenced by outlier data (a spectacular return one day on one stock and small losses all other days) 
  • It involved a bunch of different companies (not just 3 or 4).

The return the following day, for these companies, was positive 15 times out of 20.

Stock trading advice and caveats

These numbers were computed on a small time period, and it happened during a growth (bull market) period. However, I believe that

  • Patterns never last longer than a few weeks as they end up being detected by multiple traders, and then evaporate
  • Any trading algorithm can benefit from detecting and treating period of growth, decline, flat and stable, flat but volatile, separately, using the bumpiness coefficient for detection.

Sometimes, when a pattern stops working because of over-use, reversing the strategy (swapping buy and sell, e.g. after one week with 5 very bad daily returns) allows you to continue enjoying good return for a few more weeks, until once again you need to reverse the strategy, creating consecutive, periodic cycles where either the strategy or the reverse strategy is used. Indeed I would expect this pattern not to work anymore by the time you read this article, as everyone will try to exploit it. But maybe the reverse strategy will work!

Strategy reversal to continue enjoying good returns over a longer time period

You might be able to further increase the return by considering smaller time windows for buy/sell: intraday, or even high frequency, rather than one buy/sell cycle per day. However, the return on a smaller time window is usually smaller, and the profit can more easily be eaten by

  • trading (transaction) fees 
  • spread: difference between bid and ask price (usually small, reasonable for very fluid stocks like S&P 500)
  • taxes
  • trading errors
  • error in data used to make predictions 
  • numerical approximations

Note that by focusing on the S&P 500, we are eliminating much of the stock market volatility. We also work with very liquid, fluid stocks: this reduces the risk of being victim of manipulations, and guarantees that our buy/sell transactions can be achieved at the desired price. You can narrow down on stocks with price above $10 to stay in an even more robust, predictable environment. You can also check whether looking at extreme daily returns per business category might increase the lift. The s&p 500 data is broken down into about 10 main categories.

It is a good idea to do some simulations where you introduce a bit of noise in your data, to check how sensitive your algorithm is to price variations. Also, you should not just rely on back testing, but also do walk forward to check whether a strategy will work in the future. This amounts to performing sound cross-validation before actually using the strategy. We will soon publish a new coefficient, much more robust than metrics that are currently used, to measure the power of any predictive system, to help you better identify the best strategies. 

How to get stock price data?

You can get months of daily prices at once for all the five hundred S&P 500 stocks, from StockHistoricalData. You need to provide the list of all 500 stocks in question. That list, with stock symbols and business category for each S&P 500 company, is available in our spreadsheet as well as on Wikipedia.

On a different note, can you sell stock price forecast to stock traders? How would you price these forecasts? What would you do with unhappy clients aggressively asking refunds when your forecast fail?

Related articles

Views: 22450


You need to be a member of AnalyticBridge to add comments!

Join AnalyticBridge

Comment by Thomas Lincoln on February 27, 2015 at 5:49am

 a header hunter tried to get my son to interview, but declined saying that his dad would love the job!

Comment by Thomas Lincoln on February 27, 2015 at 5:20am

Did you account for slippage in the return calculation?  Vincent, I do have movement market model in which the pattern was detected out of ten years of data, and i still use today. day to day is not as predictable as specific multi day / weeks per year.  BTW slippage is application of the model in real life when your order has to get in line behind others for the order execution and the actual price at which you are executed is not the same as the model!  my latest trade last week executed 5 cents lower on the sell than when the order went in.   If you want to really find a pattern with a high probability of repetition, pm me and I will send you contact information.

Comment by Brandon Zingsheim on February 22, 2014 at 7:14am
I was very intrigued by your assessment, and while I agreed with your presumption that these kinds of analyses (especially so simple) can wash themselves out quickly when traders get ahold of them, I wasn't quite so convinced that bumpiness coefficients were altogether necessary.
To test my theory that different markets could benefit similarly from this model, I walked forward using your analysis from February-March 2008, a notable downturn in the market. I performed the same analysis as you, identified the top and bottom  performer each day of the month across the S&P index, and then analyzed the day + 1, 2, and 3 performance to see whether similar patterns could be identified.
Instead of seeing similar results, my results were quite the opposite. It appears that while the S&P index dropped by 5% for the month, buying the top performer near close and selling the next day returned a net NEGATIVE 20%. This drop in performance continued all three days subsequent to the top performance, leaving a total three day performance of -33.17%. 
This contrasts significantly with your results in what was a bull run. In fact, this represents a nearly 7-fold decrease in return compared to the index!
Meanwhile, I found a more interesting observation when evaluating the bottom performers. Turns out, that while these stocks fell a collective 134% on the day of their infamous tag, their next day returns were actually positive (1.9%). In fact, 9 of the 17 performers actually went up the next day. Perhaps this is knee jerk reaction to the fall out the day before?  In any case, even a 1.9% is much more palatable than the S&P performance for the month!
Comment by Koos Brandt on June 9, 2013 at 6:17am

Interesting call. This is good thinking. What I particularly like about this is that you can set a strategy for the next day. It sort of takes the view that if it is going up fast, it is going to go up some more. If your measurement window is 1 day, then the investment period is 1 day. If you make the window 2 hrs, then maybe the investment window should be 2 hrs. Are these shorter period prices typically available?

I know that we can read a lot into something like this, and that the analysis is without too much effort.

On a slightly different note:

We know that co-variance beta (market and multivariate models) looks at the company tracking the market or other factors. We also know that management sometimes have a fundamental influence on price, and so does actual specific other fundamentals, and also the company performance. For example, the closer one gets to dividend payout, the higher the price (actually last cum-div date), etc.

Anyone done studies to exclude major fundamental influences, and then recalc the betas, and compare back to original? For some big companies, their actions actually sometimes drive the markets, and if excluded, it could have a rather different pattern.

Comment by Sandro Saitta on May 28, 2013 at 9:13am

You can add the sentence that is present on most hedge funds contracts: "Past performance is no guarantee of future returns." or transform it accordingly: "Forecasting performance is no guarantee of future returns." :-)

Comment by Carol Hargreaves on May 27, 2013 at 5:27pm

On a different note, can you sell stock price forecast to stock traders? How would you price these forecasts? What would you do with unhappy clients aggressively asking refunds when your forecast fail?

Very good questions, Vincent!

I would like to know what others are already doing in this regard. What are the stumbling blocks? What proportion of clients aggressively ask for refunds when forecasts fail? How can we safeguard ourselves against forecasts that fail?

On Data Science Central

Follow Us

© 2018 is a subsidiary and dedicated channel of Data Science Central LLC   Powered by

Badges  |  Report an Issue  |  Privacy Policy  |  Terms of Service