Skip to main content

Checker / cCHF FAQ

Is cCHF a stable coin pegged 1:1 to the Swiss Franc CHF?#

No. If you take USDT, where 1 USDT is allegedly backed by 1 USD as the company behind it (Tether) claims to do, it can be called a 'stablecoin' pegged to the USD - although that stability is questionable from time to time. cCHF on the other hand is a robocoin token that tracks the price of CHF against XTZ by using the Checker Robocoin System.

The Checker Robocoin System is a piece of software where the code defines a token and implements a financial logic to peg the value of the token to an external reference index, in our case the price of CHF. The robocoin system can have a stabilising effect, but only of a partial nature. The resulting cCHF token can derive from the tracked price 1.) slowly over a long time and/or 2.) short term, depending on the interactions of its users with the cCHF engine.

But is 1 cCHF equivalent to 1 CHF?#

No. The accumulated interest rate (positive or negative) is reflected in the token; therefore, the cCHF and CHF will not keep a peg as you would expect in a so-called stablecoin. 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)

Why is the target ratio set to ~ 2.71828?#

Because it is a beautiful number, also called ℇ - Eulers Number. It has a wide variety of applications. Read more about it on Wikipedia if you wish. This ratio was deliberately set to counter the (false!) expectations that 1 cCHF would always be equivalent to 1 Swiss Franc CHF - because it won’t. It is aimed to keep stability and to track the CHF, but the token value of the robocoin can deviate from its tracked measure of value.

What is a robocoin?#

A robocoin is a cryptographic token (or “coin”) that tracks an external measure of value, by using various feedback mechanisms to algorithmically control its supply.

Where can I learn more about Checker?#

Detailed information about Checker can be found in the Checker Documentation.

Why is the cCHF engine labelled “experimental"?#

We decided to add the experimental status to the cCHF engine due to the lack of long term experience with the Checker system under real market conditions. youves intends to assess the engine's capabilities under various market conditions to determine its level of battle-readiness.

If it’s experimental, is it safe?#

Concerning the technological aspects, we spent a considerable amount of time developing, testing, and auditing the cCHF engine to ensure user funds will not be trapped under any circumstances and cannot be drained by malicious actors using exploits. Nevertheless, due to the advanced complexity of the Checker Robocoin System and smart contract development in general, we refer to the risk section in our General Terms and Conditions, which also applies to the cCHF engine and for the youves platform in general.

Were the smart contracts audited by an external auditor?#

Yes. The cCHF engine smart contract was audited by Inference AG, a company specialised in security assessments in particular for the Tezos ecosystem. The audit feedback has led to several improvements built into the final version which was audited as well. The final audit report is published in the GitHub Repo of Inference.

What is the source of the target price information for the cCHF engine?#

The cCHF engine retrieves the CHF/USD forex price from 1forge.com and the USD/XTZ prices from several cryptocurrency exchanges and combines these into a CHF/XTZ price using Acurast oracles.

What is the cCHFs smart contract address?#

KT1LrEJsaTR5vMdwjvASTtFPUbk2wnX3P166 Is the address of the cCHF contract. Please note that this contract is 1.) the cCHF engine 2.) the token contract and 3.) the cCHF / ctez DEX, all in the same contract.

What is the cCHF token address, token id and how many decimals does it have?#

KT1LrEJsaTR5vMdwjvASTtFPUbk2wnX3P166 Is the address of the cCHF token. It has token id 0 and comes with 12 decimals. Token id 1 is the token id of the cCHF / ctez LP token. cCHF is FA2 compliant.

What is the drift?#

The activities of minters and holders may sometimes be in a state of imbalance (the ratio of circulating kits to outstanding kits ≠ 1). The drift is a fee or reward that increases or decreases the amount of outstanding kit to bring the imbalance closer to 1.

What are kits?#

In Checker terminology, kit is the token that is created by the smart contract. In our case, cCHF is the kit that is minted by the cCHF engine contract.

What is a burrow?#

In Checker terminology, a burrow is a form of a deposit account. In Youves terminology, we refer to it as a vault, similar to the other youves engine vaults. See Checker documentation about Burrows.

Is there an interest rate paid by the minters?#

The cCHF engine does not have a set interest rate, but it has a Burrow fee with similar properties: While a burrow has outstanding kits (cCHF), it continuously incurs a compounding burrow fee. This is an amount added to the outstanding kit balance, but this amount does not represent kits given to the burrow owner. The result of this is that over time slightly more kits (cCHF) are required to be burned in a burrow in order to release its collateral. Please refer to Burrow Fee in the Checker documentation.

Is there a minting fee to be paid for minting?#

The cCHF engine has no minting fee like the other youves engines. But there is a vault creation fee of 1 tez that is paid when the vault is created for the first time. A vault that has no outstanding cCHF can be deactivated and the vault creation fee will be returned. Under some circumstances, the vault creation fee can be liquidated away, please refer to the Checker documentation where this fee is called Burrow creation deposit here.

What is the touch entrypoint and why is it important?#

The touch entrypoint is important for this engine, because when called, it:

  1. updates the system parameters
  2. accrues the burrowing fees to the cfmm
  3. updates liquidation auction related information and starts/ends auctions
  4. processes liquidation slices (the collateral parts in an auction lot)
  5. updates the index with the target price from the oracle

Because it is important for the cCHF engine that the touch entrypoint is called from time to time and because it can cost quite some gas, depending on the processing done, calling touch is incentivized with a reward in an amount of cCHF. The size of the reward is dependent on the time passed since the last time the touch entrypoint was called.

The amount paid as touch reward is specified here: Initial values

Will a minter of cCHF receive rewards in YOU tokens?#

Yes, cCHF minters will also receive YOU tokens as a reward, similar to most other youves engines (except the ones with 0% minting fee).

What are the benefits of the cCHF engine compared to other youves engines?#

  • With the cCHF engine, you can earn the interest rate the minter is paying while providing liquidity because the interest rate is added inside the token.
  • The liquidation mechanism used by Checker ensures the collateral is sold at the highest price the market is willing to pay. This is beneficial to the minter.
  • Short-term price spikes of the target price are dampened and do not lead to immediate liquidation, see Protected Index in the official Checker Documentation.

How does the liquidation auction work?#

The liquidation auction is completed in a series of steps:

Before an auction can take place:#

Once a vault can be liquidated as it is undercollateralized (or overburrowed in Checker lingo) it can be marked for liquidation by anyone (by calling the mark_for_liquidation entrypoint).

The user marking the vault for liquidation, let’s call him the ‘marker’, will immediately receive 1 tez (the vault creation fee) + 0.1% of the marked vault's total collateral. The next time the touch entrypoint is called, the collateral is put into the auction queue. If there is no auction already running, a new auction will start now.

When the liquidation auction starts:#

In the liquidation auction participants can bid an amount of cCHF for the collateral that is up for auction. One auction lot can contain a maximum of 10’000 tez (XTZ) from one or several vaults. At the start of an auction, the price of the collateral decreases until the first bid is made. Once the first bid is made, the auction price enters ascending mode, and a countdown of 20 minutes begins (or 20 blocks, whatever takes longer). Every new bid must be higher than the current bid, and each new bid resets the countdown. This continues until the countdown runs out without a new bid. Once the countdown runs out, the auction can be closed by calling the touch entrypoint again.

When the auction closes#

When an auction closes, the following happens 1.) The cCHF of the bid will be burned from the liquidated vaults relative to the size of their collateral in the auction lot, 2.) the bidder can claim the collateral he was bidding for and 3.) If more cCHF was bid than can be burned from a vault, the excess cCHF is paid back to the vault owner.

As soon as the auction closes, a new auction starts if there is more collateral queued for auction.

You can find a more detailed walktrough here: Liquidation Auctions

Note#

There is no frontend implementation of the auction for auction participants. We assume this will be a task carried out by advanced users; most likely their bots, as it is the case for other youves engines as well. Due to the competitive real time action happening around a liquidation, it is difficult to create a responsive frontend that can be used by anyone without causing frustration.