Historical data downloading feature should not introduce floating point conversion errors
When viewing stock quotes, e.g. Microsoft (MSFT) on NASDAQ, we can use the "Historical Data" tab to see the historical prices.
It has the "Download" button using which we can download a CSV file containing the data displayed.
However, the downloaded data has slightly different numbers. They have 6 digits at the right of the decimal mark. It shouldn't because NASDAQ stocks with $1 or more stock price have the minimum movement unit of 1 cent.
I guess the values in the CSV are generated by converting raw stock price in USD (i.e. possibly with 2 digits for the cents part) into IEEE 754 single precision (32 bit) floating point value, and then converting it into decimal representation again.
I believe there you should use BCD (Binary-coded decimal) not to lose precision when handling USD values with cents portion.