Try naming the model in your controller to something else other than currency, i.e. try changing:
public ActionResult EditCurrency_POST(CURRENCY currency)
to
public ActionResult EditCurrency_POST(CURRENCY myCurrencyModel)
An then obviously change the rest of the content in the controller.
I think naming the incoming variables the same as your class and underlying members of this class maybe causing issues.