In order to prevent validators from copying each others' price votes, voting occurs in 2 stages. Firstly, you must pre-commit to a price by submitting a MsgExchangeRatePrevote containing a hash, and then reveal your price in the subsequent vote period.
The vote hash reported in the prevote must match the hash of the vote's data in order for the vote to count. Otherwise, it is automatically a miss.
denom for reporting the exchange rate
validator's feeder account address
validator's operator address