On the Road to Stability : The First Milestone

StabL aims at creating a Token that has a stable value against a fiat currency. The first round of our trading challenge finished on April 2nd. To register for the next round starting April 24th, please join our Slack or register to our mailing list.

“The Road to Stability (we’re the rabbit)”

The road to stability is paved with good intentions and hard learned lessons, and while no one can claim yet to have achieved the perfect stable token mechanism the Ethereum ecosystem has been longing for, we are proud to say we have successfully reached a first milestone : for 2 weeks, 130 traders placed 2000 bets on the future price of ETH (in USD) on chain.

As Hadrien explained a few months ago in his post, we at StabL believe in an hybrid model that is more scalable than a simple collateral model (i.e. store some money in a vault — virtual or not — to cover price volatility), but more straight to the market than a seignorage share model.

Think of our StabL Token as an on-chain balanced portfolio of financial products the user won’t need to know about. In order to achieve that, we need to create a supply of the said financial products, which are bets on the ETH/USD in our case. This is what VariabL aims to do, and to achieve that, we started the Trading Challenge as our MVP to incrementally build the best on chain derivative market.

The first round of the challenge was based on the following smart contract : two parties bet on the ETH/USD index (computed using the biggest exchanges’ APIs). One party — the Longer — bets on an increase, and the other — the Shorter — bets on a decrease. After a fixed duration (3 days), the contract is liquidated by our bots and users get their balance back according to price evolution.

Our contracts are leveraged: a leverage is a multiplier for your gains and losses in USD. So if you’re a Longer who leveraged x4 and the price goes up +10%, you’ll make +40% gains in USD (but not +40% in ETH since the value of ETH in USD changed).

NB : “Leverage” is used here loosely : one should actually talk about a Return On Investment.

Here is where it gets tricky: balancing offer and demand (because we know that sometimes everybody wants to Long, or Short), we introduced a market to match Longers and Shorters, where “market makers” are able to ask a premium for their position. In other words, if everybody wants to Long, Shorters will ask , say a 10% fee to Longers, thus making longing profitable if the index increases enough (depending on the leverage) to recover that 10% cost.

When we reach market efficiency, we’ll have a prediction market on the future price of ETH. This is the cornerstone to building the more complex financial product that is the StabL Token.

Sound familiar? It’s actually a special case of the general problematic of prediction markets that our sister project Gnosis is bringing to the market soon. They could be a valuable partner to enrich our “StabL” portfolios…

What did we achieve?

Thanks to our lovely participants, who helped us a great deal by playing and giving us feedback thoroughly, we were able to improve the UI greatly. Not only were we able to find a lot of imperfections in the front-end code itself, but more importantly we learned about how users understand our product. It is not easy to understand the premium mechanism, and traders don’t feel comfortable contracting a position they can’t get out of for a fixed duration.

Depending on one’s options, one could create an order in the market book (be a market maker) or directly contract a position against someone (be a market taker). Basically, the market maker asks to pay a price that is lower than the market (the “best price available”), whereas a taker takes whatever price is available (and therefore pays a price equal or higher than the market). Although some experienced traders caught up quickly with the product, some others were confused due to a lack of awareness of what’s going on when one clicks on our “action button”.

As a result, smart traders could then exploit users’ bullishness (or lack of understanding) by creating orders with high premiums, hoping that a reckless “taker” would match it without paying attention. This is what provided for the Shorts in times of bullish market. In a way, it’s a success that some users start taking advantage of Premiums and at the same time provide market liquidity. However, now we need market takers to be aware of the premium they are paying in order to reach real offer/demand equilibrium.

This is the one of the main focus point for the new UI prepared for round 2, because it is crucial to have maximum user awareness (we are, after all, trying to fix finance).

Round 2

To register , please join our Slack.

The second round will be based on the same mechanism : a market for Longers and Shorters to be matched at a given premium and start a bet together on the future ETH/USD Index. After consulting with our users, we decided to change the duration to 1 day, so all of you can have fun everyday ;)

So, what’s new? We want the platform to be as intuitive as possible, and therefore, we changed the User Interface in order to give more information to the user on the consequences of their actions.

There are essentially two types of traders on our platform, and this is why we decided to split the “Order Creation” View in two parts.

Instant Buy

A lot of users just want to do one simple action on VariabL : bet on the evolution of the ETHUSD price. The “State of VariabL” box indicates the prices at which one would be profitable (with the asked premium taken into account) for Short or Long positions at different leverages, if one would only take the best matching order.

“State of the VariabL Market”

Then, if one is satisfied with the profitability price and wants to contract a position immediately, they can click on “Instant Buy” and get a detailed view of the premium they would pay depending on the quantity they require.

“Instant Buy”

Changing the quantity will change the price of the paid premium, as one goes deeper and deeper in the market book, matching against more and more demanding traders. This change is reflected in the Unit Price (1+Premium, the price of placing a 1 ETH bet), the Profitability Price (the ETHUSD price at which one will recover the premium one paid for matching another’s position), and maybe most importantly for the user, the actual Position Cost.

Confirmation Popup

In order to prevent traders from accidentally paying a ridiculously high fee (up to 50% in some cases in round 1), we implemented a popup that summarizes one’s action before sending the Tx (transaction) to Metamask. This window reminds the user of Profitability Price and actual Cost of Position, but also of potential gains and losses.

“Confirmation Popup”

NB on liquidation price

Our financial contract doesn’t have an infinite price range : when one party or the other depletes one’s stake, i.e. if the price goes too low for a Longer or too high for a Shorter, the contract will be liquidated. The validity range depends on the leverage : 25% for x4 and 50% for x2.

So here is an interesting remark : if you reach liquidation price for x4 leverage, that is +/-25%, the gain/loss will be 4x25%=100% (in USD). In the same fashion, for x2 leverage, the gain/loss is 2x50%=100%.

Conclusion : your potential gain is your initial ETH stake at the initial price, and your potential loss is your initial stake (which should be converted to USD at initial price). If you bet $100, you can make up to $100 or lose up to $100.

Beat the market

In order for a market to be efficient, as the theory states, economical agents (in our case traders) should have maximum information. The efficiency of our market therefore relies on traders who will add information to the market. That is, in some cases, not to accept a premium that seems unfair according to their prediction of the future price and instead, place an order with a premium that’s more advantageous to them.

Example :
I want to Long (x2) the index. The current price is $50, and the best premium is 10%, and therefore the Profitability Price is 50 * ( 1 / ( 0.9 ) ) = $55.55.
However, I don’t think the price will rise up to $55.55 in 24 hours but rather up to $52. I should therefore make an order with a Premium of ( 1–50/52 ) = 3.8% at the most.
(NB : calculus of Premium according to Profitability Price can be more complex than that depending on leverage)

This kind of behavior will naturally drive the market price towards the “perceived” future price of ETH/USD. This is why we talk about a “prediction” market.

To choose your “acceptable” Premium, change the “Taker or Maker?” parameter.

“Beat The Market View : setting a custom Unit Price/Premium”

To facilitate market maker’s strategies, you can enter the Profitability Price instead of the Premium when making an order (using “Choose Displayed Price”). However, please note that the initial price of the contract is the price when you are matched with another trader, which might differ from the price when you put the order in the book, therefore changing the Profitability Price.

I hope I made our first milestone and objectives clear, but please do not hesitate to contact me for clarification (antoine_e on the StabL Slack — you’ll get access as soon as you register, or at antoine.estienne@consensys.net)

The second phase of our Alpha, will start this Monday (24 april 9am UTC). Anybody can register by joining our Slack or registering to our mailing list.

We’re looking forward seeing you there!

Curious about when we’ll implement new on chain features? Don’t worry we are working hard on the ability to resell positions and StabL Tokens which are features that could come as soon as during the Round 3.