Having a set of news articles (or press releases) about a company (including timestamps of publication) and a time-series of the related company's stock price (at a rather high-resolution, like 1-minute OHLC bars or individual ticks): Is it possible to estimate which news article might have influenced the stock price? For ex. evaluate some kind of score for each news article?

My first approach was to subtract the actual price after publication from the expected price: Something like, $\epsilon = y_{t+n} - E[y_{t+n}]$, with...

  • $\epsilon$ the score of the article,
  • $t$ the time of release of the article,
  • $y_{t+n}$ the actual price after $n$-ticks and
  • $E[y_{t+n}]$ the expected price after $n$-ticks (estimated through the momentum before the publication).

I've implemented a simple Python script to evaluate my assumption and tried different values for $n$ (like 5, 10, 20 minutes...). But, the results didn't look as convincing as I'd had expected (seemingly significant news ranked at low score and completely irrelevant news with high scores).

I also tried to get rid of choosing a value for $n$, by summing and discounting different values of $n$: $\epsilon = \sum_{t} \gamma * (y_{t+n} - E[y_{t+n}])$, with $\gamma = 0.975$ as discounting factor. However, that also didn't help.

I am aware that with my approach would also rate irrelevant articles high, when they are released at the same time as relevant ones. Then there is also a chance that some news might have leaked before the publication of the news, etc. But, I would have at least expected to get somewhat reasonable estimates.

Is there any generally accepted solution to what I am trying to solve? It seems like such a basic issue to me, and I would be very thankful if somebody could point me into the right direction.


2 Answers 2


The approach above is a fairly reliable way to proxy the surprise element of news, because it's that which moves prices.

The problem here is how to gauge the consensus against which the news may generate (or fail to generate) a surprise; and how you try to measure that.

Otherwise it's easy to get into games like the following:

Scenario A - XYZ Inc surprises the market with a collapse in profits, Stock down 10%. OK, simples...

Scenario B - the market rumbles onto XYZ's problems in the weeks before their results reporting, and the stock is down 10% (but with no headlines). Then it confirms the market's fears. Stock unch.

Scenario C - the market cottons on, and overreacts as the market fears a problem worse than it actually is. Rumours are mentioned in the press, but maybe not at exactly the same time as the stock falls 15% in the weeks before results. When XYZ reports a significant but limited and defined problem, relief rally of 5%.

What's the result, the right answer for the "impact", supposed to look like here?

Clearly in all the scenarios, XYZ is worth 10% less than an XYZ without its problem. But how you're supposed to derive that outcome without the counterfactual clean company is unclear. Plus my example above is in a sense a bit simplistic. It's one-dimensional: XYZ has the problem, and the only moving part is the market's (unmeasurable) expectations around thi. Reality is messier, because the probability of actual as well as expectations are fluid. Worse, if one company has a profit warning and the rest of the sector are also down, when does normal market correlation cease and second-order expectation revisions begin. This exercise quickly gets very messy.

If you are happy to allow for news to sometimes explain price shocks - but are happy for this to work sometimes, ie not be consistent or relied upon - it can be done.

If an event occurs that is:

  • credibly unanticipated (mergers being the classic), a known unknown (a fine will be issued, but the size is a genjuine uncertainty) or is materially divergent from a previously published expectation (company results vs analyst consensus the obvious one here; or macro news vs economist expectations).
  • AND the directional price reaction of the shock is consistent with the nature of the shock
  • AND the price move is coincident (lag is seconds or minutes) with the news

Then it is fair to conclude that news "caused" the price move. The move is significant: "something" happened that had signal as well as noise. The correlation/association is evident. The causation is reasonable: regulators didn't fine the company for its stock falling at 1401 last Friday! And there's no superior explanation.

But this is tantamount to accepting that you can capture Scenario A above; and the process gets dirtier once you start relaxing any of the constraints.

Back in the day, we used to have an Excel spreadie. Hit the button to run the macro that would spin a roulette wheel with Vegas-style beeps. This landed on "merger talk", "JP Morgan bought/sold 500", "rumours of MidEast Sovereign Wealth interest", "North Korean Missile Test", "fears about upcoming roadshow" etc. Which was a fun (the clients were in on the gag) alternative to "I don't know, mate. Will let know if I hear anything". But it was also an effective antidote to the "explanatory" rubbish that just must be inserted into the stream of news passing through Bloomberg, CNBC et al.

Nobody denies that news moves prices... just all too often, it seems to do so in mysterious ways.


There are a few papers on the literature on the effects of news on the financial market. Here's a starting paper: https://drive.google.com/file/d/1iige0d6d7ucbDDee8mVrkwcFm-_pERTo/view?usp=sharing

You can go through the literature review on that one and see a few other references as the literature is indeed large.


Your Answer

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

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