This document is a basic guide for validators on how to set up an automatic system to periodically vote for the exchange rate of Luna, an important responsibility for validators.
With the Columbus-3 release, every active validator must participate in the Exchange Rate Oracle, voting periodically for the active Exchange Rate of Luna, and not participating in the Oracle process is now a slashing condition.
Exchange Rate Feeder Software
The Terra Core team has provided a reference implementation of a program that pulls the exchange rate of Luna from exchanges and periodically submits it in prevotes and votes following the Voting Procedure. In addition, several validators have also created alternate feeder implementations.
|Terra||Node.js, Python||Official reference implementation|
Guidelines for writing your own feeder
Here are some important things to remember when writing your own Luna exchange rate feeder implementation:
- It may be tempting to design a new pricing model other than getting exchange data direct. Keep in mind that you will be penalized for not voting within the Reward Band of your peer validators, consensus is key!