Mechanism Design

The goal of mechanism design is to establish the rules and constraints that govern the ecosystem (i.e. how the market works), in order to align the incentives of the various participants.

These rules are either embedded via:

  • Code (i.e smart contracts, node software)

  • Behavioural (i.e. voting protocols)

Rules embedded via code reduce information asymmetry, while behavioural rules reduce the effects of incomplete contracts.

Mechanism design may be broken down into three categories:

  • Governance

  • Non-financial incentives

  • Structure

Governance

Governance is about how decisions in the system are made, and how issues are resolved. Decisions in GoraNetwork have two main mechanisms:

  • Automated consensus protocols

  • Non-automated consensus protocols.

Non-financial Incentives

Non-financial incentives are ways participants can influence or participate in the ecosystem to their own advantage. For example, GoraNetwork's voting protocol allows individuals to influence the direction of the GoraNetwork ecosystem to their advantage. The allocation mechanisms for the rewards that are distributed give participants a clear picture of how they can maximize profits and minimize losses. Allocation mechanisms is automated via smart contract rules.

Structure

Finally, the structure of the mechanism will outline how participants interact with each other, and how the information about participants is shared with each other.

For example, how are prices set by feed providers? Are customer able to bargain, or does the system determine everything? This is described in the bargaining protocol of the Gora ecosystem.

In the ecosystem, feed providers must provide honest and reliable data. Node runners must have uptime and participate in consensus honestly. For rewards to be handed out fairly, this information needs to be known. Furthermore, participants of the ecosystem should have reliable access to this information. How this information is disseminated will be automated through smart contract and node runner code.

Last updated