Recapitalize and Revive USTC

Josh Franks
16 min readJul 20, 2022

--

This article describes a method to repeg USTC to $1 USD. After losing its peg in May 2022, it is clear that a new system to back the coin is needed. The new method will be capable of functioning as either a partially or fully backed algorithmic stablecoin. Various methods will be proposed to build the reserve and reduce existing USTC coin supply. As the reserve increases and USTC coin supply decreases, USTC should slowly return to its former value.

After the collapse of UST and creation of USTC, it is evident that the following core features of UST should be saved:

  1. The convertible dual-token model.
  2. Decentralized peg maintenance.
  3. No fiat or centralized stablecoin reserve. Fiat and centralized stablecoins can be confiscated or locked. USTC must be decentralized.
  4. The Tendermint consensus. Which worked well under extreme stress.

And will adopt the following features:

  1. Retaining the existing debt. The existing debt (USTC) coins will be retained on behalf of LFG who abandoned their debt obligations, as a result, the community is left to manage this.
  2. Public reserve. Reserve will be visible to the public

According to the Mundell-Fleming Trilemma, small economies can have two of these things at one time but not all three:

  • Free Flow of Capital
  • Fixed Exchange Rates
  • Independent Monetary Policy

Terra v1 tried to have all three with only limited restrictions, but ultimately failed.

  • Independent Monetary Supply: Monetary supply was independently and centrally controlled and improperly managed by the central authorities who kept the exchange rate to high and allowed violent exits to occur.
  • Free Flow of Capital: No restriction on the flow of USTC in or out other than swap fees.
  • Fixed Exchange Rates: No restriction, exchange rates were fixed.

USTC v2 as proposed in this document will have restrictions on all three that adjust dynamically to market conditions.

Independent Monetary Supply: The ability to mint and burn USTC and LUNA will stay under the systems independent control. The system will actively adjust swap fees to preserve an optimal reserve ratio. The interest rate offered to stake USTC will have the capability to vary, but will be slightly restricted by the stablecoin market. Interest rates that far exceed other comparable algorithmic stablecoins dangerously accumulates capital that is at risk of flight. It will be important to only offer higher interest rates for long term lock-up durations.

Free Flow of Capital: The free flow of capital will be partially restricted using daily transaction limits, based on the number of ReserveCoins a user stakes. These transaction limits will be relaxed when the currency is off peg by +/- 3%, but only in the direction that is favorable to the reserve.

Fixed Exchange Rates: Exchange rates will float when USTC is off peg by +/-5% (Reserve Defense State), but will variably fix during the (Peg Defense and Stabilization States). The amount to which the rates are fixed will be small enough to allow swap fees to partially mask the fixing.

Mechanics of the System

In addition to the current USTC and LUNC tokens, three new tokens will be introduced: USTCBOND, ReserveCoin, Call Options (CO)

A Brief description of each token:

USTC: USTC is a stablecoin token on the Terra Classic platform. Its price is tied to the US dollar. The maximum capitalization and supply of USTC is limited by the maximum possible capitalization of USTC tokens. USTC generation is made possible by a system of smart contracts and is carried out manually by Terra Classic users. The decrease of USTC supply is also controlled by the users themselves. Any account on the Terra Classic platform can become a user. Any deviation from $1 is compensated by the arbitration mechanisms described in the next chapters. Their supply is expanded and contracted in order to maintain the peg. It is used to pay transaction fees in the public network.

LUNC: The Base Coin (BC) of the network. It is a deflationary store of value and native to the Terra Classic chain.

USTCBOND: USTCBOND is a utility token of the Terra Classic protocol aimed to stabilize reserves that back the USTC supply. The tokens exist on-chain only and not in user’s wallets and are not liquid. USTCBOND tokens can be generated only via the smart contract and only using a special auction algorithm, the parameters of which depend on the values of the reserve deficit for USTC. Since newly-created bonds are sold on open auction for prices of less than 1 USTC, you can expect to earn a competitive premium or “yield” for your bond purchase. Bonds also receive a portion of seigniorage and/or swap transaction fees. The tokens are issued when Backing Ratio < 1. The tokens are auto liquidated when Backing Ratio (BR) > 1.1 in a proportional manner across all user’s. A user’s USTCBOND holdings give them a higher Maximum Swap Limit per Day. Holders receive voting rights on the USTC Reserve Board. There has been no pre-allocation or premining of this token.

ReserveCoin: The market price of NSBT is determined by the dynamics of supply and demand on the cryptocurrency exchanges, as well as on the Neutrino smart contract, where the token can be purchased for minimum USD equivalent in LUNC tokens. This token also provides its holders with voting rights in the USTC Reserve Board.

Call Options: Like USTCBONDs, Call Options (CO) exist completely on-chain and not in a user’s wallet. This allows for automatic liquidation when conditions are met. Call Options require a Strike Price, which is the price of USTC at which the contract will be closed. Any number of CO tokens can be issued at different strike prices. Such as CO25 for $0.25 USD, CO50 for $0.50 USD, CO75 for $0.75 USD, CO100 for $1.00 USD. Call Options have an expiration date.

The BR is then calculated as follows:

BR = R / S

The USTC deficit (D) is found via another formula:

D = 1 — BR

In a state of complete equilibrium between supply and reserves, BR is equal to 1 or (100%). If the reserves are insufficient to cover the entire supply of the stablecoin, at its current peg, exactly by half, then BR is equal to 0.5, and if the capitalization of reserves is higher than stablecoin supply, at its current peg, by 50%, then BR is equal to 1.5.

In this paper we will refer to two different Backing Ratios:

It is important to identify and follow the six major factors that influence the growth of BR:

  • Increase in the market value of LUNC
  • Increase in the number of LUNC tokens in reserve as a result of LUNC -> USTC swap operations
  • Issuance of ReserveCoins (RC) resulting in Increase of LUNC in reserves/Decrease of USTC in circulation
  • Issuance of USTCBONDS resulting in Increase of LUNC in reserves/Decrease of USTC in circulation
  • Issuance of Call Options resulting in Increase of LUNC in reserves/Decrease of USTC in circulation
  • Debt-For-Equity Swaps resulting in the Decrease of USTC in circulation

There are five factors that cause the BR to decrease:

  • Decrease in LUNC market value
  • Decrease in the number of LUNC tokens in reserves as a result of USTC -> LUNC swap operations
  • Liquidation of ReserveCoins (RC) provided that BR is greater than or equal to 1
  • Liquidation of USTCBONDS provided that BR1USD is greater than or equal to 1
  • Liquidation of Call Options provided that the Strike Price of USTC has been met

Description of the new coins: USTBOND, ReserveCoin, Call Options

USTC Bond

USTCBOND tokens exist completely on-chain and are not located in user’s wallets. This allows the tokens to be automatically liquidated by the algorithm at the appropriate time.

The three key characteristics of USTCBOND tokens are:

Auto Liquidation Algorithm will be as follows:

USTCBOND tokens will have the following uses:

  • Hold it to profit when backing ratio goes >= 1
  • Hold to receive all the related benefits of staked ReserveCoin (governance and profit from swap fees/seigniorage).
  • Hold it to increase the value of your other USTC holdings

ReserveCoin

There is a theoretical maximum limit on the supply (M) of ReserveCoin. This maximum supply cannot ever be attained because the formula is a hyperbolic curve. This means that as the supply tends to its max value, the USD Price and the market cap of ReserveCoin should grow exponentially:

ReserveCoins are meant to convey ownership to the holder in the USTC algorithm. ReserveCoin holders are imbued with rights similar to the Board of Governors on the US Federal Reserve and participate in USTC Reserve Governance.

Accumulated fees will be distributed among the ReserveCoin token holders who have staked their tokens. Fees are collected in USTC for LUNC to USTC swaps and in LUNC for USTC to LUNC swaps. Rewards are paid out daily to ReserveCoin stakers’ Terra wallets.

The profitability of ReserveCoin staking depends on the volume of LUNC-USTC swaps and a user’s staking balance’s share in the total amount of staked ReserveCoins. The Calculating Period is 14,440 blocks, which corresponds to approximately 24 hours. Upon the expiration of 14,440 blocks, swap fees begin to be distributed among ReserveCoin stakers. The distribution system uses the IPB (income per block) parameter. To calculate it, Total Period Income (total income for the Calculating Period) is divided by 14,440 blocks:

IPB = Total Period Income / Calculating Period.

To calculate the IPB share (the share of income per one block), the distribution system determines the staking balance of each user in each block and divides this value by the sum of all staking balances:

IPB share = User Stake Balance in Block / Total Staked in Block

The share available for ReserveCoin stakers varies based on the number of USTCBONDs in circulation based on the chart below:

In the beginning, ReserveCoin can be sold at a fixed price for ~30 days. At the end of thirty days set the Max ReserveCoin Supply (M) to a level that sets the ReserveCoin price higher than the initial fixed price and begin the formula to set the price from that point on.

Call Options

Like USTCBONDs, Call Options (CO) exist completely on-chain and not in a user’s wallet. This allows for automatic liquidation when conditions are met. Call Options require a Strike Price, which is the price of USTC at which the contract will be closed. Any number of CO tokens can be issued at different strike prices. Such as CO25 for $0.25 USD, CO50 for $0.50 USD, CO75 for $0.75 USD, CO100 for $1.00 USD.

When the price oracle indicates that USTC has reached the strike price, call options are liquidated. CO25 would be liquidated for 1 USTC when it is valued at $0.25 USD, as an example.

To prevent a situation in which the Call Option Queue grows so long that speculators no longer value new call options at the end of the queue, we also give call options an expiration. The longer the Call Option Queue grows, the longer it takes for new call options at the end of the queue to get paid out. This causes the price of new call options to drop since speculators start demanding a higher return for the extra time and risk that they take on. But if the price of new bonds drops to 0, the system cannot contract supply anymore. To prevent this from happening, all call options that have been in the Call Option Queue for more than 4 years forcibly “expire”, even if they have yet to be redeemed.

Call Option tokens are sold on open auction for prices that are generally less than their USTC strike price. In return, they promise a future payout of 1 USTC when the system is expanding and when there are no older outstanding call options.

Call Options can be created in the following ways:

  • Rewards for staking USTC
  • Periodic auctions with timing and quantity determined by Terra Classic or USTC Reserve Board Governance.
  • Available for purchase in a dApp with pricing based on an algorithm
  • Used in Debt-For-Equity Swaps

Call options may have an effect in addition to their sell and strike price value, as traders will be incented to drive the price higher with additional capital.

The system will need an algorithm to determine when, how many, and at what price to purchase call options in the continuous auction.

Variable Transaction Fee

1. Buy SCs — Mints new stablecoins increasing reserves but decreasing reserve ratio.

2. Sell SCs — Burns stablecoins paying back from reserves; increases the reserve ratio.

3. Buy RCs — Mints new ReserveCoins increasing both reserves and reserve ratio, but dilutes relative shares of existing ReserveCoin holders.

4. Sell RCs — Burns ReserveCoins paying back from reserves; decreases the reserve ratio and enlarges relative shares of existing ReserveCoin holders.

The following subsections define precise prices for particular types of operations.

The trading logic will have three states:

  • Reserve Defense: Prioritize the protection of the reserve and de-prioritise targeting a specific peg value for USTC
  • Peg Defense: Prioritize the protection of the peg and de-prioritise the protection of the reserve.
  • Stabilization: Prioritize holding the peg in a tight range while preserving the reserve.

Various technical analysis tools should be used to determine if LUNC/USD and BTC/USD trading pairs are Bullish or Bearish and this should be quantified and used in what is effectively a trading bot. Some indicators that could be used are:

  • Relative Strength Index (RSI)
  • Average Directional Index
  • MACD
  • 8/20 Exponential Moving Average

Reserve should be monitored and when reserve reduces to a certain threshold over a given time, trading strategy can be adjusted to a more conservative level. Each state should have its own threshold level.

Swap Limitations

While tempting to see the variable swap fees as a tool that traders could use to arbitrage USTC between exchanges and a contract. The main goal must be to ensure the stability of reserves of the contract itself.

Key Requirements to protect the reserve are as follows:

  • Users without ReserveCoin staked, USTC staked, or USTCBOND Holdings have a $1,000 maximum daily transaction limit in the on-chain swap mechanism
  • Users with ReserveCoin staked, USTC staked, or USTCBOND Holdings have a maximum daily transaction limit given by the equation and chart below in the on-chain swap mechanism
  • A swap operation takes 1 block
  • A user can swap (either LUNC → USTC or USTC → LUNC) only once every ~6 hours (3600 blocks)

In order to determine equivalency:

  • One USTCBOND is valued at $1 USD. The quantity of a user’s USTCBONDs is divided by the current price of one Reservecoin in USD to determine ReserveCoin Equivalents for the purpose of this transaction limit.
  • The quantity of a user’s Staked USTC in USD is divided by the current price of one ReserveCoin in USD to determine ReserveCoin Equivalents for the purpose of this transaction limit.

where:

ReserveCoinAmount is the user’s amount of staked ReserveCoin

a is minimum amount that can be adjusted by voting

b is the rate that can be adjusted by voting affecting smaller ReserveCoin stakers

c is the rate that can be adjusted by voting affecting larger ReserveCoin stakers

e is Euler’s number to power of 1

For example:

a = 2000

b = 20

c = 0.00000003

USTC Staking

USTC should have the ability to be staked for variable amounts of time: no required time, 1 month, 3 month, 6 months, etc. with APYs that motivate users to stake when there is too much USTC in circulation and lower APYs when there is not enough USTC in circulation.

The staking rewards can be:

  • X% minting of USTC
  • X% USTCBONDs
  • X% ReserveCoins
  • X% Call Option Strike $0.25 (CO25)
  • X% Call Option Strike $0.50 (CO50)
  • X% Call Option Strike $0.75 (CO75)
  • X% Call Option Strike $1.00 (CO100)

There should be at least a ~24 hour (14400 blocks) unlocking period, to allow the system’s transaction fees to recalibrate in the event large moves occur.

Auction Mechanics

Both USTCBONDs and Call Options, in addition to having an algorithmic price, can be sold at auction. Likely a continuous auction would be best, but a dutch auction could also be an option.

In a continuous auction bidders specify a bid and bid size for new USTCBONDs and Call Options. In other words, auction participants specify how much they want to pay for each token and how many tokens they want to buy at that price. For example, one can specify that they would like to purchase 100 USTCBONDs for $0.90 USD equivalent LUNC/USTC per token. When the system decides to contract USTC supply, it chooses the orders with the highest bids and converts the holders’ coins into USTCBONDs/COs until sufficient USTC has been burned.

As an example:

The system wants to sell 10,000 USTCBONDs and there are three buy orders on the order book:

  • One bid for 6,000 USTCBONDs at $0.90 USD equivalent LUNC/USTC
  • One bid for 5,000 USTCBONDs at $0.80 USD equivalent LUNC/USTC
  • One bid for 8,000 USTCBONDs at $0.70 USD equivalent LUNC/USTC

The system will compute the clearing price, which is a single price at which all offered tokens would have been purchased. Here, the clearing price is $0.80 USD. The system will fill the winning bids at the clearing price. The first user will receive 6,000 USTCBONDs in exchange for 6,000 * $0.80 = $4,800 USD, and the second user will receive 4,000 USTCBONDs in exchange for 4,000 * $0.80 = $3,200 USD. The system requires a floor price of tokens in order to ensure that it doesn’t borrow too heavily.

Users could use staked USTC to place bids for COs and USTCBONDs and avoid the 24 hour unlocking period. The amount that could be used in this way could vary based on ReserveCoin holdings of each user.

Debt for Equity Swaps

It is fairly evident that the system intended to back UST is bankrupt. Unfortunately, there is no court that can make a ruling on this. Therefore debt-for-equity swaps should be instituted to restructure the debt (USTC). The debt-for-equity swaps could be mandatory or voluntary.

The swap could be USTC -> ReserveCoin or USTC -> USTCBOND.

The amount of compensated ReserveCoins/USTCBOND should be calculated iteratively for every sold stablecoin, as the price of each ReserveCoin/USTCBOND increases as each stablecoin is sold.

Call Options could also be included.

USTC Reserve Board Governance

The USTC Reserve Board will be tasked with governing the stablecoin algorithm. The USTC Reserve Board will have powers that Terra Classic Governance delegates to it. With their extreme focus on the algorithm the board will have the capability to quickly perform parameter changes, pause and restart the swap mechanism, and manage the reserve, all within limitations set by Terra Classic Governance.

Terra Classic Governance will prevail over the USTC Reserve Board in cases where there is a conflict.

Terra Classic Governance shall set ranges for all parameters within which the USTC Reserve Board is allowed to adjust.

USTC Reserve should have the capability to propose and vote in a rapid manner, significantly shorter than the 7+ days in Terra Classic Governance.

There should be “Standard” proposals that have time for longer deliberation, and “Emergency” proposals that can be proposed and enacted within 24 hours or less. As an example, “Emergency” proposals could be enacted within 24 hours if they receive a minimum quantity of “Yes” votes and less than an extremely low quantity of “No” votes within 24 hours. Otherwise time is extended.

Frivolous “Emergency” proposals would result in blacklisting certain wallets from making future “Emergency” proposals. There should be a significant fee for frivolous “Emergency” proposals.

USTC Reserve Board should institute an emergency alert system that anyone can join to be alerted of votes.

A supermajority (66%) of all votes voting in favor of an emergency proposal automatically enacts a proposal regardless of elapsed time.

Prior to ReserveCoin launch and proper distribution, a caretaker should be appointed with the power to pause and unpause the swap mechanism.

Peg Defense Strategy Under Normal Conditions

Under normal operations, a USTC peg will be set and the system will attempt to stabilize the USTC price around this peg using the methods and logic described below. The ranges listed below are a starting point and will be adjusted in the future.

Roadmap to Repeg

There are ~9.8bn USTC in circulation today, with a market cap of [$600M] USD, collateralized by 6.9 trillion LUNC with a market cap of [$800M] USD. The delta between the $9.8bn of notional debt outstanding and the market cap of LUNC is $9.0bn USD. The debt must be restructured to create a path forward for USTC/LUNC investors. The system described in this paper accomplishes this task and provides a bright future for the USTC/LUNC system.

Initial steps:

  1. Restart the swap mechanism in some manner, not necessarily with all features described within this document.
  2. Operate in “Reserve Defense” state initially and allow USTC price to rise.
  3. Build and startup the continuous auction of USTCBONDS and COs.
  4. Sell ReserveCoin at a fixed price for ~30 days. At the end of thirty days set the total supply to a level that is some factor higher than the original fixed price and begin using the formula contained within this document to set the price from that point on.
  5. Build and institute USTC staking and lockups
  6. Hold periodic USTCBOND and CO auctions
  7. Perform Debt-For-Equity swaps
  8. Setup USTC Reserve Board of Governance
  9. Fine tune and and fully implement variable swap fee mechanism

References

Spreadsheet with Calculations Contained in this Document: https://docs.google.com/spreadsheets/d/1SrhCwukLnVkO20rbd3j1UZxnPt6hGc9uQvhNagmJ79U/edit?usp=sharing

Terra Classic documentation. https://classic-docs.terra.money/

Terra Classic fees documentation. https://classic-docs.terra.money/docs/learn/fees.html

Terra Classic whitepaper. https://assets.website-files.com/611153e7af981472d8da199c/618b02d13e938ae1f8ad1e45_Terra_White_paper.pdf

Djed Whitepaper: https://iohk.io/en/research/library/papers/djed-a-formally-verified-crypto-backed-pegged-algorithmic-stablecoin/

Neutrino Protocol Whitepaper: https://wp.neutrino.at/

Neutrino Protocol Documentation: https://docs.neutrino.at/

Appendix A — Variable Definition

Variable Definition:

--

--