Na ja, wenn das Deine Erfindung ist, dann weißt Du ja nun auch, wo die 'Schwachstelle' ist. Alternativ hätte man auch einfach unsigned 32-bit fixed point mit festen 4 Decimals nehmen können: Damit hätte man immerhin Kurse bis 429496,7296 Darstellen können. Mit anderen Worten: Der Kurs wird als 10000stel cent als Cardinal dargestellt, da braucht man dann gar keine Umwandlung mehr. Und Rundungsfehler gibt es, zumindest bei der Addition auch nicht mehr. Nur beim Rechnen müsste man auf 64 bit erweitern...
Na egal, hinterher ist man immer schlauer.