Introducing RWA TBCs: Solving for Tokenized RWA Liquidity

Version: 2.0

Last Updated: September 12th, 2023

Author: Robby Greenfield, Finteam Consult (Freddy Teyssieux & @medicyp)


Abstract: Amidst the 2023 bear market, traditional finance (TradFi) remains somewhat disconnected from the benefits of tokenizing real-world assets. This disconnect has stymied the momentum of established RWA protocols, leaving newcomers in search of liquidity, with the private credit sector feeling the pinch most acutely.

Web3 venture firms have carved a niche as early liquidity providers within the tokenized RWA ecosystem, leveraging risks to amplify their portfolios. Yet, larger financial institutions seem wary. A limited number of tokenized RWAs showcase distinct advantages: risk-reduced, high-return opportunities missing in TradFi, tangible cost savings, or agile secondary market liquidity facilitating adaptive investment strategies.

To remedy this liquidity predicament, we present an innovative token architecture: a flatcoin, underpinned by the inaugural Real-World Asset Token Bonded Curve (RWA TBC). This RWA TBC concept interlinks Token A with a less liquid Token B at a consistent exchange rate. This linkage ensures Token B holders can tap into the wider market liquidity of Token A. Integrating this TBC paradigm with tokenized RWAs means Token A not only aligns with the RWAs it's swapped for, but its intrinsic value also witnesses an uptick, especially when grounded in RWAs. The 'flatcoin,' synonymous with Token A, backed by tokenized RWAs, dons a dual hat. It operates both as a governance beacon and as a market barometer for RWAs from its parent protocol, reminiscent of the iconic S&P 500 index. This versatile flatcoin, adaptable across diverse exchanges, provides a gateway for investors to exit positions in RWA markets, such as Goldfinch, Credix, and Maple.

We're committed to harmonizing secondary market liquidity spanning various tokenized RWA protocols. By tethering these multi-protocol RWAs to our flatcoin, we grant liquidity providers from every protocol a pathway to agilely transition their stakes. As this flatcoin evolves to mirror a wider array of assets via its RWA TBC, its bedrock in RWAs becomes more formidable, bolstering its core value. This strategy simplifies the investment landscape, addressing the lingering liquidity quandaries. Envisioning seamless integration across blockchains, our flatcoin is primed to synchronize effortlessly with multiple blockchain infrastructures, leveraging blueprints like LayerZero’s Omni-chain Fungible Token (OFT). You may access a high-level overview of RWA TBCs here.

1.0 A Quick Primer on Flatcoins & Token Bonded Curves

The key to the RWA TBC (Real-World Asset Token Bonded Curve) is using decentralized finance strategies to fix traditional market liquidity problems. In simple terms, a token bonded curve (TBC) lets a new, less popular token (Token B) be easily traded by linking it to an older, more popular token (Token A). This makes Token B as liquid as Token A, making it easier to trade.

When we apply this idea to illiquid markets for tokenized real-world assets (RWAs), we create a system that accepts these RWAs as Token B. The system then uses Token A, backed by these RWAs, to provide stable value. This Token A becomes a "flatcoin," a stable digital currency backed by real assets. Now, let's quickly explain what a flatcoin and a TBC are.

1.1 What are flatcoins?

Flatcoins are often touted as a superior form of money made possible by blockchain technology - one that is both decentralized and can be used as a store of value. Unlike Bitcoin, which is highly volatile, or traditional stablecoins, which can be vulnerable to inflation and regulatory action, flatcoins offer a stable value. They achieve this by being algorithmically tied to consumer price indexes like the U.S. CPI, helping to maintain their purchasing power.

Flatcoins are backed by tangible assets such as bonds, real estate, or commodities, making them less susceptible to volatility. The more decentralized a flatcoin is—especially in terms of its collateral sources and the transparency of those assets—the more suitable it becomes as a universally accepted medium of exchange. This makes it similar to Bitcoin in its decentralized nature but superior as a stable store of value.

1.2 What are TBCs?

Figure 1.0: A Curved Bonded Token with similar buy (in) & sell (out) curves.
Figure 1.0: A Curved Bonded Token with similar buy (in) & sell (out) curves.

Initially conceived by Simon de la Rouviere in 2017, a token bonded curve (i.e., TBC) is a mathematical curve that defines a relationship between the price and the supply of a token. In a token-bonded curve model, tokens are minted or burned (created or destroyed) according to their position on the curve. When you buy tokens, you move along the curve, increasing the price for the next buyer. Similarly, when you sell tokens, you move back along the curve, decreasing the price for the next seller.

The curve is often implemented using a smart contract on a blockchain, allowing for a decentralized and automated market maker mechanism. This can be particularly useful for projects that need to bootstrap liquidity or create a market for their tokens without relying on external exchanges.

Here's a simplified example to illustrate:

  • When the first token is minted, it might cost 1 ETH.

  • When the 100th token is minted, due to the curve, it might cost 1.5 ETH.

  • If someone sells back the token, they'll get an amount of ETH based on the current point on the curve, which could be less than they paid if the overall supply has decreased, or more if the supply has increased.

The specific shape and equation of the curve can vary, affecting how the price changes with supply. This allows projects to customize the curve based on their specific needs and objectives.

We contend that a Token Bonded Curve (TBC) can serve as an effective mechanism for linking the value of tokenized Real-World Assets (RWAs) with a stablecoin. In this model, the curve undergoes a monthly adjustment in response to prevailing market conditions. The valuation of the underlying assets is performed using the Discounted Cash Flow (DCF) method, augmented by an additional risk margin to ensure accurate pricing. Moreover, the stablecoin's targeted collateral portfolio is designed to track a macroeconomic indicator, such as the U.S. Consumer Price Index (CPI), to maintain its value stability.

2.0 Tokenization Doesn’t Meant Liquidity

A persistent challenge that has plagued nearly every real-world lending protocol is the issue of secondary market liquidity. Investors in debt or Real-World Assets (RWAs) are initially enticed by the prospect that tokenization will dramatically enhance the liquidity of their investments, enabling them to adjust their financial positions as they see fit. However, the absence of this flexibility forces investors to make a difficult decision: either engage in these high-potential yet illiquid opportunities or opt for traditional, less risky investment vehicles, which often become the more appealing option.

Existing solutions have attempted to address this issue through liquidity queues. As the name suggests, these are essentially waiting lines for investors to access liquidity as it becomes available. However, this is far from ideal; if liquidity requests outnumber the inflows from loan repayments, investors find themselves perpetually stuck in these queues, unable to adjust their investment positions. While this approach is the best available in the current market, it leaves much to be desired.

3.0 The Tokenized Bond Market

In traditional secondary debt markets, debt is mainly provided by banks. After providing a debt, this bank (or “Lender 1”) could contact another bank (“Lender 2”) to sell-down the loan. The Borrower would then need to repay “Lender 2” instead of “Lender 1”. The issue with this secondary purchase is that it is usually hard to sell-down parts of the loan. It creates liquidity issues because the only way for Lender 1 to “get rid” of the loan would be to find a “Lender 2” willing to buy the entire loan. Lender 1 is then limited to a small pool of potential buyers, i.e. it has limited liquidity.

In the context of decentralized finance (DeFi) protocols, this issue manifests as a liquidity bottleneck for lending platforms. Liquidity providers, who hold tokenized Real-World Assets (RWAs), find themselves stranded with no secondary market to offload their investments. This, in turn, makes potential investors increasingly wary of entering the market, exacerbating the liquidity crunch. The end result is a conundrum where existing investors are locked into their debt positions, while lending platforms lack the liquidity to meet the overwhelming demand for borrowing. This creates a self-perpetuating cycle that stifles both investment and borrowing, undermining the efficacy of the entire ecosystem.

Figure 2.0: The Traditional Secondary Bond Market Flow of Funds
Figure 2.0: The Traditional Secondary Bond Market Flow of Funds

Table 1.0, displayed below, provides an overview of the secondary market liquidity of DeFi’s top credit protocols in FY23. Notice that RWA protocols have traditionally provided secondary market liquidity to LPs through liquidity queues & lock-up periods.

Table 1.0: Overview of Credit Protocol Liquidity Provider Token Liquidity

To illustrate a potential solution to the liquidity problem outlined earlier, let's consider a hypothetical credit protocol that we'll call 'Umoja.' This protocol is designed to automatically originate, fund, execute, and tokenize loans on the blockchain. In Umoja's framework, each loan is tokenized into what we term 'uBP' tokens, standing for 'Umoja Borrower Pool' tokens. These uBP tokens confer "fractional ownership" of a specific loan, as well as a "proportional entitlement" to the repayments and yields generated by that loan. This mechanism effectively lowers the barrier to entry, thereby broadening the investor base.

For instance, consider a loan—let's call it Loan 'A'—valued at 1 million USD. Umoja could issue 1 million 'uBP_A' tokens to represent this loan. Each uBP_A token would signify a claim to one-millionth of both the principal repayment and the interest accrued on Loan 'A.' A holder of even a single uBP_A token would have the option to either await the repayment and yield or to sell the token to another investor willing to assume the repayment risk associated with that particular loan. This model offers a liquidity advantage over traditional bank financing, as it allows for the fractional sale of a loan's total value, enhancing the liquidity of individual investments.

Atomization of loans helps liquidity but the remaining issue is that loans can only be sold to buyers able to analyze this specific loan. In order to further improve liquidity, Umoja is proposing an innovative system made of automatic tokenized RWA pricing and a token bonded curve.
Because buyers always need sellers for a trade of uBP, trade can only happen when there is a match between buyers and sellers. As with other protocols (Uniswap, Sushiswap, etc..), Umoja will act as a market-maker to facilitate trades. But the innovative way of doing this will be through a combination of several “DeFi legos”: “Automated Market Makers”, Liquidity pools and Token Bonded Curves. We will describe these mechanisms one by one.

4.0 Protocols Acting as a Secondary Market-Maker

In the absence of market-making mechanisms, trades involving tokenized Real-World Assets (RWAs) would only occur when there's a perfect alignment of supply and demand for the same uBP tokens—or any tokens compatible with the RWA's Token Bonded Curve (TBC). This bottleneck is not unique to our platform; it's a challenge that plagues other DeFi lending protocols as well. Lenders often find it difficult to manage or exit their loan positions, leaving them entangled in illiquid loans. To address this issue, we propose extending market-making capabilities specifically to the loan market. This addition aims to alleviate the liquidity constraints that currently hinder both lenders and borrowers.

Figure 3.0: No trade because there is no simultaneous needs
Figure 3.0: No trade because there is no simultaneous needs
Figure 4.0: Trade is made possible with Umoja acting as intermediary to bridge the temporary mismatch between Supply and demand
Figure 4.0: Trade is made possible with Umoja acting as intermediary to bridge the temporary mismatch between Supply and demand

The Umoja protocol will actively purchase uBP tokens from lenders wishing to exit their debt positions. This will be done using an automated pricing strategy that adheres to three main principles:

  1. it is guided by a modified version of the Discounted Cash Flow (DCF) formula;

  2. it aligns the buying and selling of tokenized RWAs with a Consumer Price Index (CPI) target, and;

  3. it upholds the structural integrity of a Token Bonded Curve (TBC) by dynamically adjusting the price of Umoja's native and stable tokens, denoted as $UMJA, as more lenders liquidate their uBP tokens. The curve will also be reset periodically to remain responsive to secondary market conditions.

Unlike other protocols such as Uniswap, where the pricing formula is a constant product represented by x * y = k, Umoja introduces a more nuanced approach borrowed from traditional finance. Specifically, loans will be priced based on their discounted value, with an additional safety margin included to mitigate asset mispricing. Detailed explanations of these formulas will be provided later in this paper.

In this example, the lending protocol's native token, $UMJA, will serve multiple functions:

  1. it will be used for governance to determine the economic parameters of the protocol;

  2. it will be staked by underwriters to minimize the risk of collusion between underwriters and borrowers, and;

  3. it will act as a reserve for default insurance, aimed at safeguarding the interests of all protocol stakeholders.

In practical terms, sellers of uBP tokens will effectively trade their low-liquidity assets for a more liquid counterpart, $UMJA. The intrinsic value of $UMJA tokens is fortified by the Umoja protocol's ability to facilitate exchanges between tokenized Real-World Assets (RWAs) and $UMJA, and vice versa (i.e., $UMJA is RWA-backed). This interchangeability allows any $UMJA holder to convert their tokens into yield-generating uBP loans, thereby introducing an additional layer of liquidity to the ecosystem.

Figure 5.0: Umoja After Marketing Making - Selling Loans
Figure 5.0: Umoja After Marketing Making - Selling Loans

The chart delineates the flow dynamics of uBP tokens within the ecosystem. When a lender wishes to exchange their uBP tokens, they are directed to deposit these into the "Umoja Factory Smart Contract," commonly referred to as 'UFSC' or the "Kiwanda Smart Contract" (with 'Kiwanda' meaning 'Factory' in Swahili). Upon receipt, the UFSC safeguards the uBP tokens and mints a corresponding $UMJA token. Importantly, each $UMJA token represents a diversified stake in the uBP assets stored within the smart contract.

It's crucial to recognize that the intrinsic value of each $UMJA token is anchored to the value of the uBP tokens held within the smart contract. This, in turn, is closely linked to the performance of assets originated by the Umoja protocol. While the initial assets may be tokenized loans, the framework is designed to accommodate a broad range of real-world assets in the future. In summary, $UMJA serves as a utility token backed by Real-World Assets (RWAs). It not only plays a role in governance and economic parameter-setting for the protocol but also offers immediate secondary market liquidity to the protocol's stakeholders.

4.1 Umoja Factory Smart Contract - Minting $UMJA

Figure 6.0: Umoja Factory Smart Contract - Minting $UMJA
Figure 6.0: Umoja Factory Smart Contract - Minting $UMJA

The 'Minting' operation conducted by the Umoja Factory Smart Contract (UFSC) involves the Umoja protocol buying uBP tokens from lenders and issuing native $UMJA tokens in return. This exchange rate between $UMJA and uBP tokens is guided by the UFSC's Token Bonded Curve algorithm. This algorithm evaluates the discounted value of the tokenized Real-World Asset (RWA)—in this case, the uBP token—against the current market value of $UMJA.

This complex valuation incorporates several factors, including the inherent worth of the circulating $UMJA tokens, the anticipated value adjustment due to an increase in the circulating supply of $UMJA, and the default risk associated with the uBP token, among others. The primary objective of the UFSC's minting process is to exercise caution in asset acquisition, thereby ensuring the price stability—or even upward mobility—of the $UMJA token, all while maintaining consistent liquidity within the ecosystem.

4.2 Umoja Factory Smart Contract - Burning $UMJA

Figure 7.0: Umoja Factory Smart Contract - Burning $UMJA
Figure 7.0: Umoja Factory Smart Contract - Burning $UMJA

The 'Burning' operation carried out by the Umoja Factory Smart Contract (UFSC) entails the annihilation of previously acquired native $UMJA tokens, followed by the release of uBP tokens in exchange.

This Burning mechanism enables $UMJA tokens to be redeemable at any moment for a corresponding share of the underlying uBP tokens securely stored within the UFSC. It's important to recall that uBP tokens serve as digital proxies for real-world assets, encapsulating commitments to repay loans in the physical economy.

By participating in this system, holders of uBP tokens can swap their lower-liquidity, fractional Real-World Assets (RWAs) for $UMJA tokens, which offer markedly greater liquidity. Essentially, the $UMJA token functions as an RWA-backed asset, its value underpinned by concrete debt obligations and, prospectively, by other tokenized RWAs within the financial ecosystem.

Figure 8.0: $UMJA is an RWA Backed Flatcoin & Utility Token (i.e., commodity)
Figure 8.0: $UMJA is an RWA Backed Flatcoin & Utility Token (i.e., commodity)
Employing $UMJA as an automated market maker would considerably enhance the liquidity of the corresponding Real-World Assets (RWAs), represented by uBP tokens. However, a pivotal question remains: "What should be the minting ratio between $UMJA and uBP?" Put differently, how do we establish the exchange rate between uBP and $UMJA tokens? To address this, we will adopt a well-established approach from traditional finance: the Discounted Cash Flow (DCF) method.

4.2.1 Loan Pricing Model using traditional valuation method (DCF)

To determine the value of uBP tokens, which in this scenario represent tokenized loans, we recommend utilizing one of the most universally acknowledged methods for loan valuation: the Discounted Cash Flow (DCF) method. It's crucial to employ a valuation technique that is not only rigorous and widely accepted in traditional finance but also sufficiently straightforward for newcomers to grasp. The DCF method meets these criteria, offering a streamlined way to evaluate a broad range of bonds without necessitating complex adjustments or extensive data, thereby simplifying the overall process.

It's imperative to adopt a conservative stance in the application of the DCF model, particularly by accounting for the asset's probability of default. A feasible adjustment could involve multiplying each asset's (i.e., each uBP token's) projected cash flow by (1−Asset Default Rate Probability). This factor incorporates credit risk and default considerations into the bond's valuation, thereby offering a more comprehensive assessment of the asset's worth.


  • Loan Amount: 1 M USD

  • Loan Tenor: 12 months

  • Interest Rate: 6% per year (0.5% per month no compounding)

  • Probability of Default: 0.25%

  • Discount Rate: 2% per year (2/12 % per month no compounding)

Each loan's valuation is calculated based on the anticipated future cash flow an investor expects to receive, encompassing both the principal repayment and accrued interest. Factors open for debate could include the discount rate—essentially, the time value of money—which is often represented by the inflation rate or compound inflation rate. Another key consideration is the probability of default.

The Umoja protocol is highly motivated to achieve precise loan pricing. The goal is to align the valuation as closely as possible with either the market value or the intrinsic worth of the loan. This drive for accurate pricing is influenced by the following considerations:

  1. Overvaluing loans diminishes the worth of $UMJA tokens by inflating the circulating supply of $UMJA with assets of lesser value.

  2. Conversely, undervaluing loans enhances the value for $UMJA token holders but may discourage uBP token holders from trading their assets for the liquidity offered by $UMJA tokens.

Utilizing an adjusted Discounted Cash Flow (DCF) model enables the Umoja protocol to sidestep problems related to shifts in the perceived value of loans and erratic trading pressures on the $UMJA token. This is why we have chosen to implement a Token Bonded Curve (TBC) for pricing uBP assets.

As the Umoja protocol evolves, we plan to fine-tune the uBP token pricing model to better align with the expectations of secondary market stakeholders. One such refinement could involve integrating governance feedback on what the minimum default probability for any given uBP token should be at different times throughout the year. Incorporating community sentiment into the algorithm that governs Umoja's RWA TBC will contribute to a more decentralized and collectively intelligent system. However, for the initial iteration, we aim to keep the pricing mechanism straightforward, relying on a widely understood valuation approach.

The overarching objective of Umoja's RWA Token Bonded Curve (TBC)-adjusted Discounted Cash Flow (DCF) pricing model is to value loans as closely as possible to their "fair market value." This takes into account two critical considerations: (1) the protocol's requirement to generate a profit margin by offering immediate secondary market liquidity to uBP token holders, and (2) the necessity for a conservative valuation of the loan based on its likelihood of default.
Having a single fixed price for loans can pose risks, especially if market perceptions diverge from the smart contract's valuation, thus opening the door for tokenized bond arbitrage. For instance, if the smart contract prices $UMJA tokens below their perceived market value, traders could exploit this by purchasing $UMJA tokens from the Factory Smart Contract and then selling them on the open market. To mitigate such risks and establish a more stable framework for minting and burning $UMJA tokens, we will employ a Token Bonding Curve model. This approach aims to align the protocol's pricing more closely with market dynamics, thereby minimizing arbitrage opportunities and enhancing overall stability.

5.0 The RWA Token Bonding Curve

The Token Bonding Curve (TBC) is a key element in Umoja's strategy to provide secondary market liquidity for tokenized real-world assets. Unlike fixed pricing systems that can cause market instability, the TBC enables dynamic pricing based on supply and demand, offering a hands-off yet effective regulatory mechanism.

Traditional economies and many cryptocurrencies struggle with cycles of boom and bust or deflationary pressures. Umoja's TBC model counters these issues by allowing token prices to adjust in real-time according to market conditions. This brings stability and predictability to the market, benefiting both borrowers and lenders.

In terms of tokenized Real-World Assets (RWAs), like loans, the TBC ensures that uBP token prices accurately reflect current market value, minimizing the risks of asset mis-pricing. This fosters a healthier, more sustainable market environment.

For initial implementation, we recommend using two linear functions within the RWA TBC to price uBP tokens in terms of native $UMJA tokens: a Buy-Price function and a Sell-Price function.

The mid-price represents the average of the bid and ask prices for the uBP token. uBP price is expressed in USDC (a stablecoin) for the examples.

The market spread is the gap between the Sell-Price and the Buy-Price function.

5.1 Buy-Price & Sell-Price Functions

Figure 9.0: Chart Issuance of UBP-A and pricing (without Initial Supply Money)
Figure 9.0: Chart Issuance of UBP-A and pricing (without Initial Supply Money)

The buy-price refers to the cost of purchasing one $UMJA token using uBP, while the sell-price indicates the rate to redeem one $UMJA token for uBP through the Umoja RWA TBC smart contract.

As more $UMJA tokens are issued, the bid-ask spread between the buy and sell prices widens. This spread serves as a revenue source for the market maker, in this case, the Umoja protocol. Consequently, Umoja gains an additional income stream through its role as a broker for uBP transactions.

A specific point to address is that the UMJA native token will have an initial supply of 100 Millions tokens to cover community incentives, secondary market liquidity pools, core team incentives, and, finally, investor incentives. Therefore, the initial market pricing needs to be reconciled with the previous market to avoid any value distortion. The chart here is the reconciliation between both assuming the market price is 1 USD (as a placeholder, this value will be updated as a market value price).

Figure 10.0: Chart Issuance of UBP-A and pricing (with Initial Supply Money)
Figure 10.0: Chart Issuance of UBP-A and pricing (with Initial Supply Money)
After explaining all the mechanisms one by one, we will finish by a proposal on how it could be implemented.

5.2 Assumptions and Mathematical Construction of Buy-Price & Sell-Price Functions

Once the Buy-price and Sell-Price functions are defined in stablecoin (here USDC), we apply a conversion rate to $UMJA. The balancing of the $UMJA-USDC pair will be ensured through a typical Liquidity Pool. As for other Liquidity Pools in crypto, traders would arbitrage the pricing and the smart contract will be able to simply convert using such Liquidity Pool.

Therefore, the main exercise is to calculate the “decrease/growth rate” (or “steps”) of the Buy-Price and Sell-Price functions. To do this, the initial approach is guided by simplicity: we would go for a linear function. This function would define how the price would evolve based on the amount of uBP already bought by the smart contract. The starting point of the function is simply the point where no uBP was bought and in such case the price is “mid-price” (i.e. it is the point of (x,y) coordinate (“0 USDC”,”mid price”). The end point for the Buy-Price function is the point of coordinate (“maximum amount tradable”,”maximum Buying spread”). And it works following the same principle for the Sell-Price function. The curve is adjusted on a monthly basis following the typical repayment periodicity of the loan.

Our starting parameter is to have no more than 20% of the loan authorized to be traded. It means that for a 1m USDC loan, there is no more than 200k USDC (20%*1M) to be traded by the Smart Contract. We put a limit because we don’t want the protocol to simply buy the entire loan. The protocol is here to support the trading activity and not to fully replace the Lenders by buying-back all their debts with $UMJA.

After setting the maximum amount tradable, assuming a 20% of market spread (gap between Buy and Supply function),we were able to assess the maximum amount of buying & selling spread for the period.

From there, we basically got the maximum point ((i.e. this point with x,y coordinates are "Maximum Buying spread" & "Maximum Account tradable").

After determining the maximum point, we assume 5 steps on the pricing , each step will help to build a pricing for the marginal brackets (last marginal bracket between the maximum, there are only 5 brackets). Brackets can be obtained by dividing the maximum amount tradable by the number of steps to have the same quantity on each bracket (215/5=43)

For our previous example, the brackets would be : [0;43058];]43058;86115];]86115;129173];]86115;129173];]129173;172231];]172231;215288[

Selling price will be established on the same basis as the buying function following the exact same logic. Once, the marginal pricing for each bracket is established of uBP in USDC and then we can convert directly to $UMJA. We assume steps for the moment for simplicity but it is likely that we would have a linear formula when we implement this in order to avoid threshold effects.

To build the buy and sell price functions, we eventually need only 4 assumptions :

  • Currency exchange : USDC - $UMJA

  • Maximum amount tradable (set here as a starting point as 20%)

  • Maximum market spread (set here as a starting point as 20%)

  • Number of “steps” (set as 5 as a starting point).

uBP Mid-price will be established through loan valuation and the entire token bonded curve will be derived.

If you have a linear function linking two points (A and B) with the following formula : f(x) = ax + b

In this case, the buying function will be : B(x) = [(Mid-Price) * ( 1 - Maximum Buying Spread) / Maximum Tradable Amount] * x + Mid-Price

Applying the same method for the selling price and the selling function will be S(x) = B(x) = [(Mid-Price) * ( 1 + Maximum Selling Spread) / Maximum Tradable Amount] * x + Mid-Price

5.3 Initially Proposed Implementation

Each month, the protocol issues pricing grids for each uBP. Pricing is made following the formula of DCF written above and the curve of pricing follows the TBC above.

Example Month 1: uBP-A price token expressed in $UMJA

The pricing grid indicated here is based on the number of tokens issued (i.e. the buy-price will be 0.95 $UMJA per uBP-A from 1 to 99 and then change to 0.94).

(*) The added advantage of this mechanism is that the Protocol will receive a stream of income through each trade. This will further help the protocol to gain in value and to have the option to build “cash” reserves which can be used at a later stage.

High Level design to be translated into code

The below is a high-level step-by-step proposal for the trading workflow.

Step 1: A User wants to sell uBP for $UMJA. The User connects to the Umoja website and sees the latest pricing grid.

Step 2: If the User is fine with the pricing, this user will authorize the trade in its wallet (say Metamask). Authorizing this trade will pre-authorize the smart contract to perform the below Step 3 & 4. This is exactly the same process as with trades in Uniswap for example. In Uniswap, when a User wants to swap one ERC20 (say Apecoin) for another ERC20 (say Shiba Inu), this User pre-authorize 2 transactions in its wallet: Apecoin->ETH & ETH->Shiba Inu. In that case, ETH is the “settlement currency”.

Step 3: The smart contract will swap uBP for a stablecoin. For simplicity, we can use USDC as an example. But Umoja would actually use a range of stablecoins depending on the currency of the loan. The stablecoin will be the “settlement currency” which has two key advantages:

  • Pricing will be shown in stablecoin as well which will make it far easier to understand for the seller. In reality, one uBP for a loan in USD has a theoretical value linked to USD because the value is equal to the discounted value of the repayment and yield of a USD-loan. If we were showing pricing in $UMJA only or in ETH, it would make it difficult for users to clearly understand the value of their position. Therefore doing so would strongly help adoption, especially for people who are not crypto-native. Stablecoin will serve as a unit of account.

  • The pair “$UMJA to stablecoin” will very likely be far more liquid than “$UMJA to each uBP”. Therefore we would avoid liquidity issues there and it fully removes the need for oracle pricing. If we were not doing it like that, we would need to have an oracle to show the pricing of $UMJA in each uBP. Having oracles would introduce potential exploits into the protocol so we would like to avoid them if not strictly necessary.

Step 4: The stablecoin received by the wallet will automatically swap to $UMJA. This swap will be made through a $UMJA-Stablecoin Liquidity Pool. Such a Liquidity Pool will be exactly the same as any liquidity pool used in crypto. We would therefore reuse a well-proven mechanism of exchange. Pricing will be adjusted through arbitrage by traders as in any other liquidity pool out there. This, again, fully removes the need for an oracle.

Step 5: The User will end up with $UMJA in their wallet. In order to burn $UMJA for uBP, the process would be exactly the same as above but in the inverse order of steps.

Next step: translate high level design into pseudo code

5.4 Flatcoin Token Pricing Dynamics

$UMJA is initially anchored to the protocol and the market's anticipated success. As time progresses, the value of newly issued $UMJA becomes increasingly correlated with real-world assets originated on the protocol (i.e., tokenized bonds). These debts offer predictable cash flows, provided that the default rate remains consistently low.

When new $UMJA tokens are minted at their fair value, correlating with uBP tokens (Umoja Borrower Pool or loan tokens), the $UMJA price doesn't surge instantly. Instead, the ratio of $UMJA tokens backed by RWAs, represented by uBP tokens, increases. This real-world asset collateral is expected to stabilize $UMJA, making it less susceptible to volatility than many cryptocurrencies, thus aligning it with flatcoin characteristics.

As the protocol matures, $UMJA's volatility should decrease - particularly if RWA TBC trades occur with spreads. Consider a loan of $100 million: if it's traded at $20 million with a 5% spread on a single trade, the protocol would collect 5% of $20 million and the value of $UMJA non-tied to RWA should increase as the protocol is safer and earns more revenues.

The theoretical Market Price for $UMJA should mostly rely on the protocol’s ability to collect TBC trade fees. If we consider a conservative approach, the theoretical Market Price for $UMJA will likely converge to the discounted  collected spread over time from the amount traded. You may access our analysis simulating the model here.

Subscribe to Robby Greenfield
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
This entry has been permanently stored onchain and signed by its creator.