Selay DOCS · CHAIN 4663 Launch app →
Documentation

Selay protocol

Selay is a peer-to-peer lending market for tokenized stocks. A borrower posts stock tokens as collateral and names the maximum rate they will pay; lenders name their price and fund a slice each. Whatever overlaps settles as a fixed-rate, fixed-term loan on Robinhood Chain.

Chain
4663
Settlement asset
USDG
Terms
7–90 days
Rate
Fixed

Overview

Pooled money markets price credit with a utilisation curve: everyone borrows at the same rate and everyone shares the same bad debt. Selay replaces that curve with a negotiation.

Loan lifecycle

  1. RequestA borrower posts collateral, the USDG principal they want, a maximum APR, a term and a fill deadline.
  2. OfferLenders sign offers off-chain. No gas, cancellable at any time, either targeted at one request or left standing across a whole tier like a limit order.
  3. SettleOne transaction verifies the signatures, escrows the collateral, pulls USDG from each lender and mints a position per slice.
  4. AccrueSimple interest at the agreed fixed rate, per second. Repayment is allowed once the minimum interest period has passed.
  5. RefinanceBefore maturity the borrower can open a rising-rate auction. New lenders step in, old lenders are repaid, and there is no cliff at term end.
  6. LiquidateIf the health factor falls below 1.0, anyone can start a Dutch auction. Lenders are paid first; any surplus returns to the borrower.

Quickstart

Borrow

Open the app, connect an EVM wallet, pick the stock token you want to pledge and enter the amount of USDG you need. The app quotes an indicative fill from the live book: which lenders would fund you, at what blended rate, and what your resulting LTV and health factor would be.

Lend

Browse open requests filtered by collateral, LTV, term and rate, then sign an offer. Standing offers cover an entire tier so borrowers always see a live book; targeted offers apply to a single request.

Note. The app currently reads the shared order book and computes quotes. Posting a request or an offer requires a signed submission, which is not enabled in this build.

Collateral tiers

Collateral is tiered by liquidity and feed quality rather than by name. Each tier sets how far a borrower may go and where liquidation begins.

TierCollateralMax LTVLiquidation LTVClosed-market haircut
AIndex and mega-cap55%70%10 pts
BLarge-cap single names45%60%10 pts
CLong tail with a live feed30%45%15 pts
DNo live oracleNegotiatedNonen/a

When a market is closed or a feed is stale, the ceiling drops by the haircut shown above, so a Friday close is never treated as a Monday open.

Rates & terms

Terms are fixed at origination: 7, 14, 30 or 90 days. Interest is simple and accrues per second at the agreed rate, so the cost of a loan is known the moment it settles.

When several lenders fill one request, the borrower pays a blended APR — the size-weighted average of the slices:

// blended rate across a syndicate
blendedAPR = Σ(sliceᵢ × aprᵢ) / Σ(sliceᵢ)

// example: 20,000 USDG filled by three lenders
5,000 @ 8.50%  +  10,000 @ 8.90%  +  5,000 @ 9.00%
blendedAPR = 8.82%

A refinance auction may run for up to four hours before maturity, and the new rate is capped a fixed spread above the old one so a borrower cannot be squeezed at the deadline.

Fees

Origination
0.25%
Protocol share of interest
10%
Idle-yield share
5%
Refinance
0.10%

Origination is charged on the principal at settlement. The interest share is taken from lender earnings, not added to the borrower's rate. Idle lender capital parked while waiting to be matched earns yield, of which the protocol keeps a small share.

Risk engine

Every position carries a health factor: the liquidation value of the collateral divided by the debt.

// health factor
HF = (collateralAmount × oraclePrice × liquidationLTV) / debt

HF ≥ 1.10   healthy
HF < 1.10   warning — top up or repay
HF < 1.00   anyone may start a liquidation auction

A minimum interest period applies before a loan can be repaid, so lenders are never left with a position that closes the second it opens. After a sequencer outage there is a grace window during which liquidations cannot start.

Liquidation

Recovery is a Dutch auction, not a market dump. Collateral is offered slightly above the oracle price and walks down to a floor over roughly 45 minutes.

Oracles & sessions

Prices come from Chainlink feeds, with a market-status flag so the protocol knows whether the underlying exchange is open.

Chain & settlement

Selay settles on Robinhood Chain (chain id 4663), an Arbitrum Nitro L2 that settles to Ethereum. Stock tokens are ordinary ERC-20s, so collateral is self-custodied until the moment a loan settles.

Stack
Arbitrum Nitro
Settles to
Ethereum
Lending asset
USDG
Block time
~250 ms

Fast blocks matter for a lending market: fills and liquidations settle before a price gap has time to widen.

Reading the book

The order book is public. Anyone can read the same markets, offers, requests, loans and events the app renders — nothing is hidden behind the interface.

// what the app loads on every visit
markets              // collateral, tier, LTV ceilings, exposure cap
market_latest_prices // oracle price, session, staleness multiplier
protocol_params      // tiers, terms, fees, auction and refinance config
offers               // open lend offers: rate, size, term, expiry
borrow_requests      // open demand: collateral, principal, max APR
loans                // originated loans: blended APR, maturity, status
loan_events          // settlements, repayments, refinances, auctions

Expired offers and requests are filtered out before anything is displayed, so what you see on the Explorer is what a settlement transaction could actually match right now.

Wallet

Any EVM wallet works, including Robinhood Wallet. Connecting reveals your own positions: loans you borrowed, requests you posted and offers you funded, each with its rate, health factor and maturity.

Connecting is a read operation — it proves which address to filter by. Signing an offer costs no gas, and funds only move at settlement.

Parameters shown here are the ones the protocol ships with. Every change goes through a timelock and is published before it takes effect.