Well, if your form is database bound (which I'm assuming it is - unless you are using a different approach to submit the data to a DB?) there will be data validation on those currency and date fields based on the data type in the database - which, in my opinion, is a good thing.
Rather than mix data types, why not have an additional field for the reason why a field is blank?