All projects

ForwardX

Tokenized FX & equity forwards with Chainlink CRE Auto Settlement. Trade USD/KRW, SAMSUNG, GOOGLE ERC-20 Spot Token on-chain.

DeFi & Tokenization

What it is

The Problem: Traditional FX forward contracts require trusted intermediaries, expensive prime brokerage access, and manual settlement processes. Exotic currency pairs like USD/KRW are inaccessible to retail traders, and existing DeFi protocols focus almost exclusively on spot markets. Crucially, no Chainlink Data Feed exists for USD/KRW or USD/JPY, making on-chain FX derivatives impossible with traditional oracle approaches.
Today's DeFi users remain fully exposed to FX risk even when holding stablecoins, with no on-chain hedging instruments available. Meanwhile, tokenized equities face regulatory roadblocks across jurisdictions, making direct on-chain stock token issuance impractical. These constraints keep DeFi confined to crypto-native assets, stalling its connection to the real economy. ForwardX bypasses these barriers by offering price derivatives (NDFs) instead of direct asset tokenization — providing on-chain exposure to FX and equities without regulatory risk.

How it Works

Core Mathematical Models

 ForwardX operates two trading systems, each with its own
 settlement/pricing math.

 ① P2P OTC Forward (ERC-721 NFTs)

 Both parties agree on a forward rate (F₀) and settle at maturity based on
  the spot rate (S_T):

 PnL(Long) = N × (S_T − F₀) / F₀
 PnL(Short) = −PnL(Long)

 - Linear payoff: % rate change = % return. Zero gamma, zero convexity.
 - Full collateral (no leverage), paired Long/Short ERC-721 NFTs,
 tradeable on built-in marketplace.

 ② Tokenized Forwards (ERC-20 fToken/sfToken)

 Deposit 1 USDC → mint 1 fToken (Long) + 1 sfToken (Short). At maturity:

 fToken redemption = S_T / F₀     (USDC per token)
 sfToken redemption = 2 − S_T / F₀   (USDC per token)
 Always: fToken + sfToken = 2 USDC    (zero-sum guarantee)

 - Linear payoff with clamping: max(0, min(2, ...)) — max loss is 1 USDC
 per token.

 ③ Yield Space AMM (FXPool)

 AMM for fToken ↔ sfToken trading with time-decaying curve:

 Invariant:   x^(1−t) + y^(1−t) = k
 Swap formula: Δy = y − (k − (x + Δx)^(1−t))^(1/(1−t))
 Time param:  t = t_min + (t_max − t_min) × √(T_remaining / T_total)

 - k is recomputed at current t before every swap (not cached)
 - As maturity approaches, t → 0 and the curve converges to x + y = k 
 (linear pricing)

 Dynamic Fee Model:

 Base fee:   baseFee = feeMax × √(T_remaining / T_total)
 Pool skew:  skew = |x − y| / (x + y)
 Drain trade: fee = baseFee × (1 + 4 × skew²)
 Rebalance:  fee = baseFee × max(0.5, 1 − skew)

Links

Created by

  • Huisang Kim
  • Noh yuseong