Unfamiliar with the utility of the GEN token and DAOstack’s holographic consensus mechanism? Start here.

Joining the GEN Predictors Network

The Prediction Mechanism Design in DAOs Built on DAOstack

--

Welcome to DAOstack’s guide to GEN prediction, the mechanism that plays a central role in holographic consensus, DAOstack’s scalable governance framework. This article will explain the basics of predicting: what it is, how it works, a detailed example, and some recommended best practices for predictors.

What is GEN Prediction?

GEN Prediction is a prediction system embedded in DAOstack’s unique DAO governance protocol, which can be accessed through the Alchemy interface. It plays a vital role in solving a basic problem of governance: how to efficiently make decisions that accurately represent the views of large groups of people.

GEN Prediction is also an opportunity for those knowledgeable about a DAO to be rewarded for their expertise. Here’s how it works: users may place predictions on any proposal submitted to a DAO on Alchemy. The predictions concern whether a proposal will be passed or failed by the DAO voters, and they are made by staking GEN tokens. Anyone can make these predictions — it isn’t limited to DAO Reputation-holders. Predicting that a proposal will pass is called “upstaking”; that it will fail, “downstaking.” When the proposal passes or fails, correct predictors are rewarded, and incorrect predictors lose their stakes.

The GEN Predictors Network (GPN)

The GEN prediction mechanism is currently available for all DAOs in Alchemy, which means predictors are free to place stakes on proposals for as many DAOs as they want. We expect the number of active DAOs to grow quickly over the next few months, and over that same time period, we hope to see the beginnings of the GPN: a group of predictors who help direct voter attention across the DAOstack ecosystem.

The Mechanics of Staking

The three queues within Alchemy: regular, pending, and boosted.

Proposals in Alchemy are sorted into three queues: regular, pending, and boosted. All proposals start life in the regular queue, and they are immediately open for predicting — i.e. they may have GEN stakes placed on them by predictors. These stakes can be of any size, and they can be either upstakes or downstakes.

When a proposal’s ratio of upstake to downstake (its confidence score) is above the boosting threshold¹, it is moved into the pending queue. A pending proposal is still open for predicting, and if its confidence score remains above the boosting threshold for longer than the pending period, anyone can boost the proposal.

Once admitted to the boosted queue, proposals are closed to predictions and will be passed or failed at the close of the boosted period. Once a proposal is passed, anyone can take the execute action on it to trigger whatever actions the proposal specifies (distributing funds, deploying contracts, etc.). To incentivize people to take this executing action, whoever executes a qualified proposal receives a modest GEN reward.²

Pending proposals have the same voting and staking rules as regular proposals.

The most important part of this mechanism for prospective predictors to understand is the staking reward: successful stakers divide the unsuccessful stakers’ loss pro rata to their stakes (minus the portion given to the booster and the executor). As we’ll see, this skin-in-the-game mechanism shapes predictor strategy.

The DAOstake

Regular queue proposals, three of which only have the DAOstake (150 downstake, in this case).

When submitted, every proposal is automatically downstaked by the DAO — we call this the “DAOstake,” and it acts as a subsidy provided by the DAO to the predictors. The DAOstake ensures there is always an incentive for predictors to upstake promising new proposals, since even if no one else downstakes a proposal, the DAOstake can still be claimed.

Note: at creation and via vote, each DAO can set its own boosting difficulty parameter, pending period length, and DAOstake parameters, including setting them to 0. See this specification document for a detailed description of all the protocol’s parameters.

An Example Prediction Cycle

The following example will use these parameters, which are currently in use by the Genesis DAO.

For reference, here is a detailed description of the lifecycle of a proposal in the Genesis DAO, from the perspective of a predictor:

  1. Address “0x1…bC3” submits a proposal to the DAO titled “Cape Town DAO meetup.” The regular queue voting time of 30 days starts counting down, and the proposal is now open for both votes and predictions.
  2. The DAO automatically places a downstake of 150 GEN (the DAOstake = 0.1 multiplied by the average total downstake on currently boosted proposals, or a constant minimum, whichever is larger).
  3. As a predictor, you think the proposal has a good chance of passing, so you upstake 350 GEN, giving the proposal a confidence score of 2.33 (350 upstake / 150 downstake). This is higher than the current boosting threshold of 2.07 (with four currently boosted proposals, the confidence threshold for boosting = 1.2⁴ = 2.07), so the proposal is moved to the pending queue. If the confidence score stays above 2.07 for longer than 1 day, it will become eligible for boosting. The regular queue voting time of 30 days continues to count down, but it cannot expire while the proposal is pending. Alchemy lets users know how much additional upstake is needed to move a proposal to pending, so no need to do these calculations yourself.
  4. While it is pending, someone downstakes the proposal with 200 GEN! This lowers the confidence score to 1 (350 upstake / 350 downstake), below the previously set boosting threshold of 2.07. The proposal returns to the regular queue, where its voting time continues to count down.
  5. Luckily for you, some more predictors upstake 500 more GEN on the proposal. This puts the confidence score back above the threshold (850 upstake / 350 downstake = 2.43 > 2.07), so the proposal moves back to pending. The 1 day pending timer starts again, and this time, it ends with no more downstakes placed. The proposal can now be boosted.
  6. Someone boosts the proposal. The boosted voting period of 4 days begins. No more staking is allowed.
  7. People vote on the proposal, the voting time ends, and just as you predicted, the proposal passes. It can now be executed.
  8. Someone executes the proposal, and now rewards may be redeemed. Since the executor and booster of the proposal both acted quickly, they each receive the minimum 1% (3.5 GEN) of the reward pool (350, leaving 343). You receive 141 GEN (your upstake of 350 / 850 total upstake * the remaining reward pool of 343).

Predictor Confidence

A predictor’s confidence in their knowledge about proposals plays a major role in their strategy. Gaining this confidence is key to successful predicting, so here are a few ways one might gain confidence in whether a given proposal will pass or fail:

  • Existing votes — What do the votes Reputation-holders have already placed on the proposal reveal?
  • Past outcomes — How have DAO Reputation-holders, especially those who hold large amounts of Reputation, voted on similar proposals before? What patterns have past predictors followed in placing stakes on similar proposals?
  • DAO voter preferences — From your interactions with voters outside of the voting process, what do you know about their values and tendencies?
  • DAO policies and norms — Has the DAO established any policies or conventions that might affect the outcome of the proposal?

One way to look at predictor strategy is as a relationship between the predictor’s confidence and a proposal’s current confidence score. If a proposal has a confidence score of 3.0 (there is three times as much upstake on it as downstake), that means the DAO “believes” the proposal’s chance of passing is 3 to 1. If you, as a predictor, believe the proposal has a greater than 3 to 1 chance of passing, you should consider upstaking; if you think the proposal’s chance of passing is lower than 3 to 1, you should consider downstaking.

What Next

The core of the GPN (GEN Predictors Network)

The prediction strategy described here is a starting point, but it will undoubtedly develop as more predictors gain real experience participating in various DAOs. We also expect to see clever predictors finding ways to automate their predictions (something we see as a positive, further increasing the scalability of DAOs).

Let this guide serve as a jumping off point for anyone interested in joining the GEN Predictors Network. We welcome anyone to try predicting today: just head over to Alchemy and give it a shot!

Learn More and Get Involved

Footnotes

¹ The boosting threshold is dynamic and grows as the number of boosted proposals grow: C > α^N_B, α > 1, where C is the proposal’s confidence score, a is a constant greater than 1, and N_B is the number of currently boosted proposals.

² t / 10 % of the proposal’s upstake, up to 10% maximum, where t is the number of blocks passing since the block the boosting criteria was first satisfied. Note that this action can be completed by bots, and this is in fact already happening, helping to drive this arbitrage to a minimum.

--

--

Ezra Weller
DAOstack

co-founder of Groupmuse, communicator at DAOstack, M0ZRAT sometimes