Collateral is held as USDC on dYdX. The notional value of a position, collateral pools and funding payments are all measured in USDC. Thus, in the event of a USDC depeg, dYdX will continue to function as normal, but all user positions, collateral, funding payments and the insurance fund will all be worth less in USD, proportional to the change in USDC-USD price. Leverage and liquidation status will not change as a result of USDC-USD price changes. dYdX will function as described in this article regardless of the USDC-USD price.
USDC has maintained a very stable price band around $1 since its inception. However, it is possible that the price of USDC may diverge from $1. How would this divergence affect dYdX?
How Does USDC Work?
USDC is a fully collateralized stablecoin. Circle, which is the company that manages USDC, accepts USD and mints USDC in exchange at a 1:1 ratio. Circle is a US entity and is audited regularly by an accounting firm.
How does dYdX use USDC?
Collateral is held as USDC on dYdX.
The notional value of positions on dYdX are measured in USDC. When users set their order size (such as 1 ETH in the example below), the notional value of their position will be the following:
(asset order size) * (ETH price in USD) in units of USDC
In the example below, the notional value of the position is: 1 * 1500 USDC.
If the price of ETH in USD increases to 3000, the notional value of position changes to: 1 * 3000 USDC.
User positions are not denominated in USD. dYdX does not have price feeds for USDC and does not track the USDC-USD price by design.
What happens if USDC ≠ USD?
In the example above, if a user opens a position with an order size of 1 ETH when the price of ETH in USD is 1500, then the starting notional value of the position is 1500 USDC. If 1 USDC = 1 USD, then the notional value in USD would also be 1500. Calculating notional value in USD is solely for the purposes of explaining the concepts in this article. dYdX cannot and does not track notional value in USD.
If the price of USDC falls to 0.5 USD, the position in USDC will remain as 1 * 1500 USDC. However, the notional value of the position in USD would drop to 750 USD.
If the user had opened the above position using 3x leverage, which means that the user used 500 USDC as collateral (i.e., 1500 / 500 = 3), when the price of USDC in USD falls to 0.5, the value of the collateral in USD would fall to 250 USD and, as described above, the notional value of the position in USD would fall to 750 USD, so the user would remain 3x leveraged in USD terms. Similarly, the notional value of the position and collateral in USDC remains 1500 USDC and 500 USDC, respectively, so the user also remains 3x leveraged in USDC terms. USDC-USD price changes do not affect user leverage or liquidation status.
If the price of USDC falls to 0.5 USD and the price of ETH in USD rises to 3000, the notional value of the position and collateral would be 3000 USDC (or 1500 USD) and 2000 USDC (or 1000 USD), respectively. The user is now 1.5x leverage in both USDC and USD terms.
If the user decides to close the position and withdraw, the user would receive 2000 USDC, which would be worth 1000 USD.
Will prices on dYdX diverge from pairs quoted against USD?
Not more than usual. dYdX uses USD markets as oracles, which means funding will always push markets back towards USD prices. See the funding rates section below for more detail.
There is also no fundamental reason why prices should diverge. The dYdX perp market on ETH is not the ETH / USDC market. It does not allow users to exchange USDC for ETH. It is a market on the ETH / USD price, where positions are margined and sized in USDC. A long position on the dYdX ETH market is expressing a view that the ETH / USD price will go higher. The size of the position is measured in USDC.
Let’s understand exactly what that means a little more. What exactly does it mean if a trader is long 1 ETH on dYdX as in our example from the previous section?
It means that the trader has a position worth (ETH / USD price) USDC. If ETH is currently worth 1500 USD and USDC is currently worth 1 USD, then the trader is long 1500 USDC worth of ETH or 1500 USD worth of ETH.
If the price of USDC falls to .5 USD, then the trader is still long 1500 USDC worth of ETH. However, their exposure in USD terms is now lower (750 USD). There is no mechanism by which the price of ETH has to double to keep their USD exposure the same. Their position size in USDC is constant assuming ETH / USD is constant, but their position size in USD can change as USDC / USD changes. Position sizes will change, market prices will follow the oracle price (ETH / USD).
What about funding rates?
In any perp market, funding rates are the mechanism that guarantees the market price tracks the oracle price over the long term. All markets on dYdX use oracle prices from underlying markets paired with USD (and not USDC), which means that the prices on dYdX will continue to track the USD prices of each asset.
If the prices deviate from the underlying USD market prices, funding will be paid as normal. Funding on dYdX is paid in USDC, and funding rate calculations are independent of USDC-USD prices. Thus, funding payments will be calculated based on the notional size of open positions (measured in either USD or USDC) and proportional to the divergence between the perpetual price and the oracle price.
You can read more about our authors here.