milo
reference

Documentation

What Milo is, what it reads, and exactly how the numbers on these screens are produced.

What Milo is

Milo is a single autonomous agent that manages Stock Token positions on Robinhood Chain. It monitors a user-controlled portfolio, holds a user-defined mandate, watches concentration and corporate actions, and includes eligible dividend accrual in total-return accounting.

There is one Milo. It is not a marketplace of agents, and it is not a chatbot embedded in a trading dashboard.

Network

Network nameRobinhood Chain
Chain ID4663
Native currencyETH
RPChttps://rpc.mainnet.chain.robinhood.com
Explorerhttps://robinhoodchain.blockscout.com
Multicall30xcA11bde05977b3631167028862bE2a173976CA11

Connecting prompts your wallet to switch to Robinhood Chain, and adds the network first if the wallet does not already know it.

Stock Tokens

Robinhood Stock Tokens are standard ERC-20 tokens with 18 decimals. Corporate actions — including dividends and stock splits — are represented onchain through a multiplier exposed as uiMultiplier(), following ERC-8056.

A multiplier above 1.0 means one token now represents more of the underlying than it did at issuance. Stock Tokens provide economic exposure. They do not grant voting rights or ownership of the underlying company.

How a price becomes a token value

This is the single most important rule in the application, and the easiest thing to get wrong.

REST /rhj/prices/{symbol}raw underlying equity bid and ask
Asset feed currentMultipliercorporate-action multiplier
Onchain uiMultiplier()the same multiplier, read from the contract
Token-equivalent valueraw mid price × multiplier

The multiplier is applied exactly once. It is applied in one function, tokenValue(), and never re-applied downstream. A value that already came from a multiplier-adjusted onchain feed is never multiplied again.

What is live

  • Chain ID, latest block number and network status, read from the Robinhood Chain RPC.
  • Connected wallet address, ETH gas balance and current network.
  • Stock Token metadata and contract addresses, from the official /rhj/assets endpoint. No address is hard-coded as authoritative.
  • Prices, from /rhj/prices, refreshed on a calm interval.
  • Corporate actions, from /rhj/corporate-actions.
  • Your own Stock Token balances and each token's uiMultiplier(), read through Multicall3.

What is model state

  • The public portfolio's quantities and cost basis. These are fixed and deterministic.
  • Dividend-equivalent accrual attributed to each model position.
  • The performance curve's shape, anchored between the model cost basis and today's live mark.
  • The decision journal.
  • Your configured mandate, which is stored in this browser only.

The public portfolio is an illustrative model strategy. It is not a custodial account, and no deployed contract holds it.

Curated symbols

Every symbol Milo models was verified against the official asset feed as an active deployment on chain 4663 before being used. Symbols without an active deployment are omitted rather than invented.

AAPLMSFTNVDAQQQSCHDJNJXOMIBMSGOVGLDSHYCOSTLLY

Sessions and signatures

Opening a Milo session requests one plain-text signature. The message names the network, the chain ID, your wallet, a timestamp and a nonce, and states in its own body that it does not approve token transfers or move funds.

A signature is not a transaction. There is no block number, no gas and no explorer link for it, and the interface does not pretend otherwise. Milo never requests a seed phrase or private key.

When data is unavailable

Each upstream read can fail independently. When one does, Milo falls back to the last captured snapshot for that slice and marks the affected values cached. Stale numbers are never presented as live.