I am looking to store equity price data in a hdf5 table. The use will be purely as a historical archive, not as day-to-day data source.
- One option would be to store base10 significand and exponent separately as e.g. uint64 and uint8. The downside is that it is fairly awkward to handle especially as int do not come out of the box with NaN handling for missing values.
- The other option would be to use float64 which is easier to handle and has NaN support built-in.
My question: Does float64 have sufficient precision to store price data? What is the experience of the number of significant digits required for a price archive?
Note: float64 seems to have 15-17 "significant decimal digits" precision. Not sure whether this means "significant digits" or whether this only refers to the decimal digits.