Introducing Checker
Checker is a generic and open-source piece of software or an engine that enables the creation of robocoins. Robocoins are referred to as kit in the context of Checker. Arthur Breitman originally came up with the concept of Checker to allow synthetic assets of any sort to be brought on-chain. The Checker terminology is significantly different from that of youves conventional synthetic assets, such as uUSD and uBTC.
The detailed description of checker can be found on https://checker.readthedocs.io/en/latest/.
The Checker system aims to bring together two parties: the minters who lock collateral to mint and sell/short kit and the holder who buys/long kit. In other words, the minters get the short kit exposure while the holders get the long kit exposure.
#
Please NoteThe checker tokens are not pegged, the mechanics aim to track the movements of the reference asset reasonably well. However, the value of checker can drift away from the reference asset over time. This drift depends on several factors. Read more here: The instantaneous drift.
#
Initial ValuesThe implementation on the youves platform has certain parameters set at different values than described in https://checker.readthedocs.io/en/latest/. The below list shows the parameters and their values on youves.
# | Parameter | Value on youves | Value in Readthedocs |
---|---|---|---|
1 | LP fee share | 50% of fee | 100% of fee |
2 | Touch reward low bracket | 0.0001 kit/min | 0.1kit/min |
3 | Touch reward high bracket | 0.001 kit / min | 1kit/min |
4 | CHF/cCHF target ratio | 1:~2.71828 (ℇ, Eulers Number) | n/a |
#
What Are RobocoinsRobocoins are cryptographic tokens that track an external measure of value by employing multiple feedback mechanisms to control its supply algorithmically.
#
What Is DriftThe activities of the minters and holders (the two parties involved in the Checker system; the minters lock collateral to short kit and the holder buys kit) can be in a state of balance. In a case where this balance is not achievable, Checker begins to demonstrate its strengths through its drift feature. The drift basically finds and automatically corrects the imbalance.
Overview of the Checker System
The Checker system consists of the Checker engine, which mints the kit token, and an integrated CFMM. Outside the Checker engine is the collateral token and the oracle responsible for data feed. These components are pluggable into the Checker system.
#
Burrow (Vault)This is where you can have control over a pool of assets while still segregating them. On youves we use the term 'vault'. The burrow has the following characteristics:
- Holds collateral.
- Allows for individual Baker selection with the tez collateral.
- Is governed by Checker rules.
- On youves we call a burrow a vault to stay consistent with youves terminology
#
Constant Function Market Maker (CFMM)The CFMM is currently a constant product market maker which is prebuilt with the Checker source code. It receives part of the burrow fees as an incentive. This is where the price of the kit token is observed.
#
Liquidations and AuctionsThe Checker system contains a liquidation mechanism that executes liquidations using auctions that are independent of oracle feeds. The liquidations on the Checker system has the following advantages;
- Begins at the current CFMM price.
- Ensures that the collateral is sold at the highest price the market is ready to pay. Lowers price over time until someone accepts the collateral at that price
- Protection against oracle failures.
- Highly gas efficient since you just need to make one transaction to participate in the auction and get the price without others repeatedly bidding and cluttering the network.
More details can be found in the Liquidations section.
#
Checker EngineThis brings everything together. It’s at the heart of the Checker system and regulates the drift depending on the degree of pegging. If the price falls below the peg, the drift will catch up, and liquidations will take place at some point during this event. The fact that there is a chance of liquidation creates a number of arbitrage possibilities, which adjust the price in the direction of the peg and this is what makes Checker really elegant. One advantage with the Checker engine is that you don’t need to choose between getting the interest rate that the minter is paying or providing liquidity because the interest rate is accrued inside the token so you can basically earn the interest rate while providing liquidity.
#
Use Cases for Checker- The Checker system is already used for the ctez token. Learn more about how it works here.
- Another application that is being worked on is [kvadrat.finance], also see their testnet instance.
#
Important Clarifications on CheckerThe accumulated interest rate (positive or negative) is reflected in the token or kit price, therefore the cCHF and CHF will not keep a constant peg as you would expect in a so called stablecoin.
In order to counter the (false!) expectation that cCHF is a 1:1 pegged stablecoin to the Swiss Franc, we deliberately set the target ratio of CHF / cCHF to be ~ 2.71828 : 1 (ℇ, Eulers number). This means that the tracked price of CHF/XTZ is multiplied by ℇ before being set as the
index
value.cCHF is not a stablecoin, it’s a robocoin that tracks an external measure of value. cCHF is not expected to keep a peg to the tracked measure of value which is CHF. The peg can deviate over time, but ideally remains stable, depending on how often the parameters of the engine are updated (eg. calling the
touch
entrypoint)The cCHF engine has no minting fee but a one-time vault creation fee of 1tez is paid when creating a vault.
cCHF minters will also receive YOU tokens as a reward, similar to most other youves engines (except the ones with 0% minting fee).
Minters need to constantly monitor the peg from the market and take action especially when dealing with a low liquidity market. The Checker system differs from others in that you can be liquidated above or below the price at which you began due to the drift.