<p>AFAIK, Currency type in Delphi Win32 depends on the processor floating point precision. Because of this I'm having rounding problems when comparing two Currency values, returning different results depending on the machine.</p>

<p>For now I'm using the SameValue function passing a Epsilon parameter = 0.009, because I only need 2 decimal digits precision.</p>

<p>Is there any better way to avoid this problem?</p>

To avoid possible issues with currency rounding in Delphi use 4 decimal places.
This will ensure that you never having rounding issues when doing calcualtions with very small amounts.
```
"Been there. Done That. Written the unit tests."
```