PreSaga — An initial look into our first Dapp

What is PreSaga?

Meridian Network
Meridian Network
6 min readOct 18, 2020

--

PreSaga is meant to be a community governed platform that aggregates prediction markets. Once the beta is released, LOCK holders will be able to use it, try it and provide feedback for future Dapp updates, although the beta itself will already provide full core functionality.

4 things make up a prediction market: a question, a set of outcomes, an end date and a resolution source. Users participate in a market by buying shares of the outcome they believe will answer the question. Once the end date is due, one and only one of the outcomes must be the answer for the question, otherwise the market is deemed invalid. After a market ends in a valid state, all the shares of the truthful outcome will be worth exactly 10 LOCK. The other shares will be worth 0 LOCK.

Users can buy or sell shares anytime they want. In order to participate in a market, one will have to provide an address with LOCK in it. The price of the shares is determined by a market scoring rule, enforced by an Automated Market Maker (AMM). This means that liquidity is ensured by the AMM and that the price of an outcome share increases if users are buying more of it or decreases if users are selling more of it.

For a market to function properly, and tolerate a fairly big amount of tokens flowing in, it needs to have substantial liquidity. Otherwise, even a small bet on a given outcome would make the price of shares fluctuate wildly. For that reason, liquidity is provided at market creation time and it can also be provided at any time, by anyone. Liquidity providers are rewarded with a small fee of every trade, the percentage of which will be tweaked after testing but should sit around 2%. More information about providing liquidity will be released closer to the launch date of PreSaga.

The betting process

Buying or selling shares of a given outcome is a simple transfer on the blockchain, done against the Automated Market Maker. The shares are ERC-1155 tokens and they are expected to be traceable and discoverable in a block scanner like Etherscan in the near future. Just like any trade on liquidity pool platforms such as Uniswap, you must account for slippage when you are buying. This means that the bigger your bet is when compared to that market’s liquidity, the bigger the impact your sale/buy will have on market price for that outcome. That’s one of the reasons it is important to give incentives to liquidity providers, like the aforementioned fee. Once you acquire shares, you don’t need to wait for the market to close to liquidate them. You can sell them at any time for the market price, eg.g say you bought “Yes” shares for 5 LOCK each, and a few days later they’re selling at 8 LOCK each, you can sell them at 8 LOCK and reap the profit before the market is settled. However, each share will always be worth less than 10 LOCK. If the market ends and your shares represent the truthful outcome, then each share will be worth exactly 10 LOCK.

Let’s walkthrough an example:

Market Question: Will the number of coronavirus cases in the whole world be higher than 500 million by 30th November 2020, at 23:59pm, according to the Wikipedia pandemic data?

Outcomes: — Yes, — No

Imagine that you check this market and the price of “Yes” is 7.2 LOCK and “No” is 2.8 LOCK. You have reasons to believe the pandemic will keep on scaling so the number will indeed surpass the 500 million. Thus, you decide to stake 100 LOCK in Yes. This results in a bit less (due to slippage) than 13.89 (100 LOCK at 7.2 LOCK per share) of the “Yes” token. You now have 13.89 YES.

The end date approaches and we are not yet at 500 million. Some people start selling their YES shares while they still have a high value. You decide not to sell at a loss and remain confident that by the time the market closes, Yes, there will be more than 500 million cases according to the given source.

The market ends valid and now two things can happen: You either have the winning shares or you don’t. If Yes wins, you get 13.89 (your YES shares) multiplied by the value of each share in case of winning (10 LOCK), which equals 13.89 * 10 = 138.9 LOCK. You have a profit of 38.9 LOCK (ignoring fees), equivalent to a ROI of 38.9%. Notice that you bought the YES share when its price was already close to 10 LOCK, meaning that a majority of the people though the same way you did, thus your profit was moderate. Imagine you had bought the “No” shares and “No” would have won. 100 LOCK at 2.8 (the price of “No”) means 100/2.8 = 35.7 “No” shares. “No” wins, you get 10 LOCK per share which amounts to 357 LOCK. A total profit of 257 LOCK, or a ROI of 257%.

Market Creation

At an early stage (beta product) and in order to minimize the chances of a market going invalid, markets will be created by the Meridian Team. Users can suggest markets but these must be curated by the team in order to phrase the question in the most unambiguous way possible, as well as the resolution source. As soon as the platform gains some traction and maturity, new features will be added, like market creation with a smooth UX.

Resolution source

There are two possible approaches to resolving a market:

  1. The resolution source (always public and accessible) is queried by the Meridian Team, who inputs the result manually after the market ends.
  2. An automated oracle is used to feed the result to the prediction market.

At PreSaga, we are working on both solutions as they might be desirable for different types of prediction markets. For example, coin prices can be obtained through a ChainLink Oracle, but the answer to the example above is not so immediately available to be fed to the blockchain. As our Dapp matures, so will the solutions to the so called “Oracle” problem. We will follow them closely and integrate at any iteration of the PreSaga platform, as long as there is no compromise to usability and security. The oracle provider must not be vulnerable to manipulation and must also be always available. If the automated oracle fails at the time of resolving a market, resolution would no longer be possible as the market is tied to the oracle on the blockchain. We are aware of these perks at Meridian and our focus is on developing a consistent, sturdy solution. Another concern is keeping fees to the lowest so any service we attach to the platform must be carefully planned.

Important note: As Chainlink itself ( and most oracles ) currently provide little more than coin price feeds, another potential solution is to develop our own in house oracle which we would link to the appropriate API’s in order to query the results for each of our markets. If we do follow this route, this oracle could potentially be put for use by other projects, depending on the features we implement. We will run a community vote when/if that time comes.

What if a market goes invalid?

Rewards are redistributed to the participants.

Dealing with high gas prices

To deal with this, PreSaga also builds on top of the Conditional Tokens Framework, developed and used by Gnosis, which is a set of optimised and audited smart contracts built around the ERC-1155 standard. This standard considerably lowers the cost of managing multiple tokens (like the shares in a market). Still, we are well aware of this problem and as tests to the platform unfold, the Meridian Team will be carefully studying ways of optimising transactions and reducing them to a minimum.

This is it for now, soon we’ll hopefully have a sneak peak preview of the interface released for the community to have a better idea of the functionality and design we applied to this concept.

Talk to you guys soon!

The Meridian team

Twitter | Website| Telegram | Reddit | Contract | Discord | Github

--

--

Meridian Network
Meridian Network

A Web3 ecosystem of DeFi protocols governed through DAO-implemented mechanisms