TIP-10 - Economic Modeling

TIP-10 - Economic Modeling


Adam Novak (Novak Distributed)


In response to the need for interactive models of the ESD system, Novak Distributed has created a prototype of a stochastic, agent-based computer model for ESD system dynamics, and has already used it to analyze the long-term effects of EIP-16 coupon expiry mechanics. If improved, this model could help the ESD community to predict the effects of new policies before adopting them. This proposal funds Novak Distributed to continue this modeling work.

Value Proposition

  • ESD governance participants currently are forced to reason ad hoc about the potential impacts of system changes, which can lead to poor decision making and negative impacts on the project.
  • An accurate model of the ESD system could allow governance participants to reject harmful proposals, and allow proposal authors to support their proposals with evidence.

Preliminary Work

To demonstrate the feasibility of this project, and the utility of a model, Novak Distributed has already created a prototype. Written in Python 3, the prototype includes simplified models of the ESD epoch advancement, DAO bonding, interest, and coupon mechanics, as well as the Uniswap exchange. Agents use weighted, randomized strategies to choose between available actions in response to market conditions. The model and associated plotting script are available here.

Using this model, Novak Distributed has produced two hypothetical histories of ESD system dynamics, under two conditions: old-style coupon expiry, where the underlying ESD and premium both expire and are destroyed, and newer EIP-16-style coupon expiry, where only the premium expires and the underlying ESD is returned. These results are preliminary, and the prototype model still lacks many important features. In particular, the agents currently lack much ability to rationally predict the consequences of their actions. However, under the model, original-style coupon expiry appears to maintain the $1.00 peg better than EIP-16-style coupon expiry does.

System Behavior with Old-Style Expiry


With old-style expiry, the model predicts that the ESD price (second row) will not tend to fall beneath a minimum value.

System Behavior with EIP-16-Style Expiry


When only premiums expire, the model predicts that the ESD price (second row) will continue falling to lower lows as time goes on.

While a better model with smarter agents would better represent the game-of-chicken dynamics of the old-style coupon system, and so overestimates the degree to which the old system managed to keep the peg, it is clear from these results that EIP-16 dramatically changes system behavior.

Proposed Features

The existing model prototype has several shortcomings. For example, it does not currently model the Target-Weighted Average Price (TWAP) mechanic, or liquidity provider rewards. It has limited predictive power, especially for answering quantitative, rather than qualitative, questions about ESD system behavior.

By the end of February 2021, Novak Distributed proposes to extend the model with the following missing features:

  • The ability for agents to act based on the consequences of their own actions, learn strategies, and respond to perverse incentives
  • Implementation of EIP-18 Pro-Rated Premium mechanic
  • Model of incentives for liquidity providers
  • Target-weighted Average Price (TWAP) mechanic
  • Documentation for how to use the model to test the effects of proposed mechanic or parameter changes

If time permits, the following features are also desirable. If not, they can be proposed again after the current development period ends.

  • The ability to read system constants from the Solidity code
  • Lockup mechanics in DAO bonding and fluid/frozen states
  • Improved models of expansion and coupon mechanics
  • Model of proposed ESDv2 mechanics
  • Model of exchange fees
  • Model of Ethereum gas prices
  • Improved model of the real economy and ESD demand

These priorities may change in response to community input.

About Novak Distributed

Novak Distributed is a blockchain development and consulting company. Previously, Novak Distributed has done smart contract auditing work for Rivetz, a trusted-hardware company (which has since failed for non-smart-contract-related reasons). The biggest current Novak Distributed project is Macroverse, a procedural universe generation system on the Ethereum blockchain.

Funding Request

20,000 ESD to 0xBf226Ce4F5EC177B31a1a6BDD2FEa98ADb3655eb to be paid at the end of the successful vote.

Snapshot Poll: TBD

Yes, fund through Feb 2021
No, do not fund


I’ve now posted this on Snapshot: you can vote here.

I played with this a bit more and I managed to get some less wimpy and more realistic-looking expansion periods. It looks like the redemption of coupons from the newly minted ESD, instead of just all at once, is quite important there, along with the on- and off-rates for bonding and unbonding. I’ve dropped the epoch counter plot and added a plot of how much of the supply is bonded in the DAO, and one of how many coupons have ever expired.

My sense now is that smarter agents are going to be really important: the behavior changes a lot when I tweak the somewhat artificial action probability rules, because agents changing their behavior is I think where we get our oscillations. So making sure that agents can learn effective responses to stimuli should help the overall behavior be more realistic.

1 Like

Hi Vamoose,

My collaborators and I are interested in doing some modeling of ESD and would love to set up a chat to hear more about what you are planning and how we could contribute. Is this something you would be open to?

Michael Neuder

Hey @mikeneuder!

Currently I want to get the real ESD contracts running on a local testnet and model agent behavior against that, so that the model matches the real system exactly. @cinquemb has been working on this too, and you can find both of us in the #modeling channel on Discord.