Any currency related entity has its own currency. The main principle is that anything is calculated into the shopcurrency and is then displayed by the selected currency. Additionally to that we have also a payment currency.
So when a product is edited and is given the product price in a different currency than the shop currency, it is meant as the purchasing currency. The finalprice is directly displayed in the shop currency (currency of the vendor).
There exists two settings for the rounding of the displayed currency. The general settings in the vm config and the shoppergroup specific settings. Important is to the rounding. The value -1 means to use the rounding set in the currency, any other value overrides the specific rounding by currency. Usually the -1 is correct value.
You can easily define your own currency with a fixed exchange rate for dynamically adjusting your price for imports. You can also create currencies for raw materials, like gold, silber, ...