Skip to content
All library documents

Why Stock OHLC Data Can Show a Close Above the High

Article Quant Q&A · Author: torus12

Summary

The document explains why a stock’s recorded close can exceed its recorded high in historical OHLC data. The apparent inconsistency can arise because data vendors may calculate fields using different trade sets or price definitions. Examples include a closing price that includes after-hours trades, high and low values that omit opening or closing trades, or a closing price based on a different bid-ask convention than intraday extremes.

Other possible causes include canceled trades that were not reflected in recalculated extremes, special trade types affecting only some fields, and genuine vendor errors. Without the instrument, date, values, and vendor methodology, the response cannot determine which explanation applies. Its practical guidance is to ask the data source for precise definitions of open, high, low, close, volume, and related fields before using the data in analysis or models.

Key ideas

  • OHLC fields may be calculated from different sets of trades or price conventions.
  • After-hours trades can affect the reported close without changing the high or low.
  • Canceled trades and special trade types may affect some fields but not others.
  • A vendor error is also possible, but specific data and methodology are needed to diagnose it.
  • Confirm each field’s definition with the data provider before modeling.

Tags

Full text
# Question on OHLC historical data


# Question on OHLC historical data












I am going through some historical stock exchange data and I have stumbled on a few cases where the stock closing price is higher than the recorded high price; is this even possible or is there error in my data?

In case that this is possible, could someone please explain how it is that it is possible?

Edit: I don't understand why downvote a question that seems-to my eyes, at least- rather straightforward and admits an objective "yes/no" answer.

I am really baffled. I'd appreciate some guidance-even if you consider the question 'rubbish'-in order to 'improve' upon it.

I consider it really important to understand your data before starting to model it, otherwise you are just pushing garbage in your process and will undoubtably receive garbage as output.

Also, if the data are literred with measurement errors there are different techniques you need to use in order to get any sensible result.

As a final note consider that if the error-riden data come from prolific distributors then it's highly likely that other consumers of that data have been using inappropriate data and in all likelihood make inferences based on pure fiction!

I am not saying that this is the case but I don' t really know until I can figure out the answer to my question.

In closing, if you can relate to the issues raised in this edit please help me modify the question in a way that is acceptable.

Obviously, if you can answer the question please do.

## Answer by Richard at NorgateData (score 6, accepted)

https://quant.stackexchange.com/a/39469

There are plenty of reasons for data giving inaccurate extremes (highs and lows) versus the open and close.

Without knowing which instrument(s) or specific dates/values, it's difficult to give anything precise.

Some possible reasons include:

- The stock had some busted (cancelled) trades on the close and the high/low wasn't recalculated

- The pricing convention for the stock uses a mid-point of bid-ask, except for the close (some London Stock Exchange systems report in this manner)

- The high and low prices are only calculated throughout the trading day and are not inclusive of the Open and Close trades.

- The close price is not actually the closing price - it is the "last" price of the day inclusive of after-market trades, but the high and low are not affected

- Some trade types (block trades, exchange-for-physical, options exercises, late-reported trade etc.) may affect one data point (eg. high) but are not used for the close

- A genuine data error undetected by your data source

You need to ask your data source to define, in very exact terms, what constitutes all of the data points provided. i.e. Define the methodology used to calculate each of the open, high, low, close, volume and any other fields provided.

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.