oakoak

How oak works.

One contract, no oracle, no liquidations. A lender names a price and a term. A borrower locks a stock token and takes dollars. Only the due date can end a loan.

Overview

Tokenized stocks on Robinhood Chain are ordinary ERC-20s. oak lets you use them as collateral without selling them. Lenders escrow USDG (Paxos Global Dollar) in the oak contract together with the terms they will lend at. Borrowers take an offer, their stock goes into escrow in the same contract, and the USDG goes to them. Interest is fixed in dollars at that moment. Repay by the due date and the stock comes back. Miss it and the lender can claim the stock. Prices never trigger anything.

Fixed term

7, 14, 30 or 90 days in the app; 1 to 365 days in the contract. One due timestamp, no rolling.

No liquidations

The contract never reads a price. A crash on day 3 changes nothing. Only the date matters.

Peer to peer

Every dollar on the book is a lender's own USDG at a lender's own price. oak takes 10% of interest, nothing else.

Contracts on Robinhood Chain

OakLoans0xe4FFED90e5EABFB12B068Da673607514F9C6f469
USDG0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168 · 6 decimals · the only currency lent
Collateral194 stock tokens allowlisted (Robinhood-issued tokens, 18 decimals). Full list with prices on /tech.
ChainRobinhood Chain · id 4663 · Arbitrum Orbit · gas in ETH · RPC https://rpc.mainnet.chain.robinhood.com/rpc
Fee10% of interest, taken on repayment, sent to the treasury 0x5fF5C224dd3040eDA15A84064A1913Df87718deA. Nothing on principal, nothing on claims.
Source/code · Solidity 0.8.28 · OpenZeppelin 5 · no proxy, no upgrade

Lender side

createOffer(collateral, amount, minTake, term, aprBps, collateralPerUnit, expiry)

Escrows amount USDG. collateral is the stock token you accept. collateralPerUnit is how many wei of that token you require per 1 USDG lent; it is your price and your loan-to-value in one number. The app computes it as 1e18 / (price × LTV). term is in seconds, aprBps is simple annual interest in basis points, expiry is when the offer stops being takeable. Borrowers can take part of an offer, never less than minTake, and never leaving a remainder below it.

cancelOffer(offerId)

Returns whatever is still unlent. Loans already taken from the offer are untouched.

claim(loanId)

After the due timestamp, the lender takes the escrowed stock. The loan closes as Claimed. There is no grace period; the borrower can still repay on the due day itself.

Borrower side

take(offerId, principal)

Pulls ceil(principal × collateralPerUnit / 1e6) stock from you into escrow and sends principal USDG to you. Interest is fixed right here: principal × aprBps × term / (365 days × 10,000). The due date is now + term. Approve the stock token for the oak contract first; the app does that for you.

repay(loanId)

Pays principal + interest USDG. The lender receives it minus the fee, the fee goes to the treasury, and your stock comes back in the same transaction. Anyone can call it for you; the collateral always returns to the borrower. Works up to and including the due timestamp.

Worked example

offer: TSLA, 10.4% APR, 30 days, collateralPerUnit = 3.893e15 (TSLA at $367 × 70% LTV)
take 1,450 USDG
  collateral  = ceil(1,450e6 × 3.893e15 / 1e6) = 5.645 TSLA
  interest    = 1,450 × 0.104 × 30 / 365       = 12.39 USDG
  due         = now + 30 days
repay before due: pay 1,462.39 USDG, get 5.645 TSLA back
after due:        lender may claim 5.645 TSLA, loan closed

Reads

getOffers(from, count), getLoans(from, count), offersOf(lender), loansOf(user), quoteCollateral(offerId, principal), quoteInterest(offerId, principal), offersCount(), loansCount(), collateralAllowed(token). The app reads an indexed copy first and falls back to these over RPC.

Admin, and what it cannot do

The owner can allowlist or delist collateral tokens for new offers, change the fee up to a hard cap of 20% of interest, change the treasury, and pause new offers and takes. The owner cannot touch escrowed funds, cannot stop a repayment, and cannot stop a claim. There is no upgrade path; the deployed code is the code.

Risks, plainly

  • Borrowers: if you do not repay by the due date you lose the collateral, whatever it is worth that day.
  • Lenders: if the borrower walks away you receive stock, not dollars, and its price can be below what you lent. You set the price and LTV yourself.
  • Everyone: the stock tokens are issued by Robinhood; their contracts can be paused and addresses can be blocked by the issuer. oak cannot change that.

Read API

Public, no key, JSON. Every row comes from a contract log or a price feed; nothing is invented. Amounts are strings in base units (USDG has 6 decimals, stock tokens 18). Same origin as the app: https://oak-credit.vercel.app/api/oak/…

GET/api/oak/offers

Open offers on the book: not cancelled, not expired, USDG still available. Sorted by APR, cheapest first. Optional ?ticker=TSLA.

Live response
{
  "offers": []
}
GET/api/oak/loans?user=0x…

Every loan where the address is borrower or lender, newest first, with state active, repaid or claimed.

Live response
{
  "loans": []
}
GET/api/oak/activity?user=0x…

A human feed for one address: offer, cancel, borrow, lend, repay, earned, claim.

Live response
{
  "activity": []
}
GET/api/oak/prices

USD per whole token from DexScreener, deepest USDG pool per stock, refreshed every minute. Display only; the contract never reads it.

Live response
{
  "prices": {
    "P": {
      "usd": 96.66,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.064Z"
    },
    "SHOP": {
      "usd": 129.41,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.065Z"
    },
    "SOUN": {
      "usd": 6.48,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.067Z"
    },
    "SNAP": {
      "usd": 5.67,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.067Z"
    },
    "ASTS": {
      "usd": 62.48,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.067Z"
    },
    "F": {
      "usd": 14.12,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.068Z"
    },
    "FIG": {
      "usd": 22.87,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.069Z"
    },
    "SOFI": {
      "usd": 17.0065,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.108Z"
    },
    "IBM": {
      "usd": 242.74,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.112Z"
    },
    "APLD": {
      "usd": 26.7,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.113Z"
    },
    "RKLB": {
      "usd": 64.26,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.115Z"
    },
    "NET": {
      "usd": 311.19,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.116Z"
    },
    "ZM": {
      "usd": 94.62,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.120Z"
    },
    "SMCI": {
      "usd": 38.45,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.121Z"
    },
    "NNE": {
      "usd": 16.13,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.122Z"
    },
    "DDOG": {
      "usd": 222.24,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.123Z"
    },
    "AAOI": {
      "usd": 105.36,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.123Z"
    },
    "RUN": {
      "usd": 8.53,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.124Z"
    },
    "NOW": {
      "usd": 131.89,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.125Z"
    },
    "NBIS": {
      "usd": 216.94,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.126Z"
    },
    "GLXY": {
      "usd": 24.22,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.127Z"
    },
    "FUTU": {
      "usd": 113.87,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.128Z"
    },
    "ADBE": {
      "usd": 249.76,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.128Z"
    },
    "LMT": {
      "usd": 531.25,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.129Z"
    },
    "ELF": {
      "usd": 96.51,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.129Z"
    },
    "IREN": {
      "usd": 43.82,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.129Z"
    },
    "CCL": {
      "usd": 22.67,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.131Z"
    },
    "HPE": {
      "usd": 59.56,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.131Z"
    },
    "IONQ": {
      "usd": 39.54,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.132Z"
    },
    "CELH": {
      "usd": 27.9,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.132Z"
    },
    "QBTS": {
      "usd": 17.4,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.132Z"
    },
    "LITE": {
      "usd": 921.39,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.132Z"
    },
    "POET": {
      "usd": 8.017,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.133Z"
    },
    "SPMO": {
      "usd": 144.15,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.133Z"
    },
    "RGTI": {
      "usd": 14.91,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.134Z"
    },
    "CLSK": {
      "usd": 13.2,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.134Z"
    },
    "MXL": {
      "usd": 74.25,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.134Z"
    },
    "EWY": {
      "usd": 186.18,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.134Z"
    },
    "XLK": {
      "usd": 187.74,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.134Z"
    },
    "SNOW": {
      "usd": 323.91,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.135Z"
    },
    "LUNR": {
      "usd": 14.56,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.135Z"
    },
    "FLNC": {
      "usd": 8.98,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.136Z"
    },
    "APP": {
      "usd": 319.79,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.137Z"
    },
    "WDAY": {
      "usd": 177.32,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.137Z"
    },
    "SOXX": {
      "usd": 522.19,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.138Z"
    },
    "CBRS": {
      "usd": 204.82,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.139Z"
    },
    "RDW": {
      "usd": 10.76,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.139Z"
    },
    "UNH": {
      "usd": 376.92,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.139Z"
    },
    "WULF": {
      "usd": 17.096,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.139Z"
    },
    "CRWD": {
      "usd": 790.68,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.140Z"
    },
    "ON": {
      "usd": 74.88,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.140Z"
    },
    "IBRX": {
      "usd": 7.67,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.140Z"
    },
    "CLOV": {
      "usd": 4.63,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.141Z"
    },
    "CVNA": {
      "usd": 68.6,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.141Z"
    },
    "XNDU": {
      "usd": 9.86,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.141Z"
    },
    "FLY": {
      "usd": 21.13,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.142Z"
    },
    "CSCO": {
      "usd": 108.66,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.142Z"
    },
    "SPCX": {
      "usd": 149.36,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.033Z"
    },
    "AAPL": {
      "usd": 332.1,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.034Z"
    },
    "GOOGL": {
      "usd": 338.41,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.035Z"
    },
    "SPY": {
      "usd": 761.77,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.035Z"
    },
    "MSFT": {
      "usd": 493.87,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.036Z"
    },
    "AMZN": {
      "usd": 255.94,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.036Z"
    },
    "AMD": {
      "usd": 507.18,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.036Z"
    },
    "PLTR": {
      "usd": 166.38,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.036Z"
    },
    "GME": {
      "usd": 20.99,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.037Z"
    },
    "MU": {
      "usd": 938.9,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.037Z"
    },
    "META": {
      "usd": 646.9,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.037Z"
    },
    "COIN": {
      "usd": 173.92,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.037Z"
    },
    "SNDK": {
      "usd": 1584.26,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.037Z"
    },
    "CRWV": {
      "usd": 86.88,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.038Z"
    },
    "ORCL": {
      "usd": 149.16,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.038Z"
    },
    "USAR": {
      "usd": 15.59,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.038Z"
    },
    "BE": {
      "usd": 265.018,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.038Z"
    },
    "DJT": {
      "usd": 8.56,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.038Z"
    },
    "NFLX": {
      "usd": 77.059,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.039Z"
    },
    "COST": {
      "usd": 902.91,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.039Z"
    },
    "GLD": {
      "usd": 398.16,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.039Z"
    },
    "CRCL": {
      "usd": 90.031,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.040Z"
    },
    "TSM": {
      "usd": 429.84,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.044Z"
    },
    "MSTR": {
      "usd": 129.0072,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.047Z"
    },
    "TTWO": {
      "usd": 217.3,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.047Z"
    },
    "USO": {
      "usd": 154.13,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.049Z"
    },
    "SLV": {
      "usd": 58.31,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.050Z"
    },
    "RBLX": {
      "usd": 45.63,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.052Z"
    },
    "XOM": {
      "usd": 162.095,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.053Z"
    },
    "BB": {
      "usd": 7.72,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.055Z"
    },
    "DELL": {
      "usd": 561.59,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.056Z"
    },
    "AMAT": {
      "usd": 466.67,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.056Z"
    },
    "ASML": {
      "usd": 1705.7,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.057Z"
    },
    "MRVL": {
      "usd": 227.8,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.057Z"
    },
    "LLY": {
      "usd": 1138.41,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.057Z"
    },
    "QUBT": {
      "usd": 8.026,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.058Z"
    },
    "QCOM": {
      "usd": 174.51,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.058Z"
    },
    "AVGO": {
      "usd": 356.49,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.058Z"
    },
    "AMC": {
      "usd": 2.46,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.058Z"
    },
    "MRNA": {
      "usd": 144.35,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.058Z"
    },
    "BA": {
      "usd": 209.2,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.059Z"
    },
    "SKYHY": {
      "usd": 184.4,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.059Z"
    },
    "NU": {
      "usd": 14.83,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.060Z"
    },
    "SGOV": {
      "usd": 100.88,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.060Z"
    },
    "WYFI": {
      "usd": 18.83,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.061Z"
    },
    "RIVN": {
      "usd": 15.9,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.061Z"
    },
    "BABA": {
      "usd": 109.61,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.061Z"
    },
    "LULU": {
      "usd": 100.8,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.062Z"
    },
    "JNJ": {
      "usd": 266.67,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.063Z"
    },
    "KSS": {
      "usd": 16.82,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.063Z"
    },
    "PENG": {
      "usd": 50.39,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.063Z"
    },
    "RCAT": {
      "usd": 7.94,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.065Z"
    },
    "UPS": {
      "usd": 97.93,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.120Z"
    },
    "HWM": {
      "usd": 224.085,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.149Z"
    },
    "SCHD": {
      "usd": 35.97,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.149Z"
    },
    "ONTO": {
      "usd": 261.66,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.149Z"
    },
    "SHY": {
      "usd": 85.1,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.150Z"
    },
    "MPWR": {
      "usd": 1263.45,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.150Z"
    },
    "PWR": {
      "usd": 677.26,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.150Z"
    },
    "NVDA": {
      "usd": 215.66,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.025Z"
    },
    "TSLA": {
      "usd": 365.27,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.034Z"
    },
    "INTC": {
      "usd": 99.93,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.037Z"
    },
    "RDDT": {
      "usd": 157.16,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.038Z"
    },
    "QQQ": {
      "usd": 711.38,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.039Z"
    },
    "HIMS": {
      "usd": 27.24,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.057Z"
    },
    "BULL": {
      "usd": 9.22,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.063Z"
    },
    "PFE": {
      "usd": 27.76,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.119Z"
    },
    "GE": {
      "usd": 324.98,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.131Z"
    },
    "VST": {
      "usd": 145.99,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.137Z"
    },
    "SMR": {
      "usd": 8.86,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.142Z"
    },
    "INDA": {
      "usd": 48.2,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.142Z"
    },
    "UMC": {
      "usd": 21.98,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.143Z"
    },
    "CRM": {
      "usd": 248.37,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.143Z"
    },
    "AMBA": {
      "usd": 63.62,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.143Z"
    },
    "PATH": {
      "usd": 13.95,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.144Z"
    },
    "TER": {
      "usd": 365.95,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.144Z"
    },
    "LRCX": {
      "usd": 307.28,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.144Z"
    },
    "CEG": {
      "usd": 285.81,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.144Z"
    },
    "VTI": {
      "usd": 406.043,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.145Z"
    },
    "SMH": {
      "usd": 564.19,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.145Z"
    },
    "COHR": {
      "usd": 296.85,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.145Z"
    },
    "FTNT": {
      "usd": 160.039,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.145Z"
    },
    "VRT": {
      "usd": 264.91,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.146Z"
    },
    "ANET": {
      "usd": 204.38,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.147Z"
    },
    "NAVN": {
      "usd": 21.76,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.148Z"
    },
    "CLS": {
      "usd": 338.48,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.148Z"
    },
    "FIX": {
      "usd": 1658.99,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.148Z"
    },
    "AXTI": {
      "usd": 66.35,
      "source": "dexscreener",
      "updatedAt": "2026-09-13T09:42:50.149Z"
    }
  }
}
GET/api/oak/stats

Book-level totals.

Live response
{
  "open_offers": "0",
  "open_liquidity": "0",
  "loans": "0",
  "lent": "0",
  "active": "0"
}

Use it without the app

# take $500 from offer 0 (approve the stock token for OakLoans first)
cast send 0xe4FFED90e5EABFB12B068Da673607514F9C6f469 "take(uint256,uint128)" 0 500000000 \
  --rpc-url https://rpc.mainnet.chain.robinhood.com/rpc --private-key $KEY

# repay loan 3 (approve USDG for principal + interest first)
cast send 0xe4FFED90e5EABFB12B068Da673607514F9C6f469 "repay(uint256)" 3 --rpc-url https://rpc.mainnet.chain.robinhood.com/rpc --private-key $KEY

# what would offer 0 cost me for $1,000?
cast call 0xe4FFED90e5EABFB12B068Da673607514F9C6f469 "quoteInterest(uint256,uint256)(uint256)" 0 1000000000 --rpc-url https://rpc.mainnet.chain.robinhood.com/rpc