Liquidity Model
Liquidity on Silvana Book is provided by agents that operate off-chain, manage orders automatically, and coordinate settlement through the Silvana API. Agents never perform matching themselves: they submit orders, react to events, and participate in settlement workflows driven by the coordination layer.As a liquidity provider, you run the Silvana Book Cloud Agent, a purpose-built service for market making and RFQ handling.
Two Modes of Providing Liquidity
Silvana Book supports two agent-native liquidity modes:- Grid Orders
- RFQ (Request for Quote)
You can enable either independently or combine both in the same market.
Grid Orders
Grid orders are passive limit orders placed at configurable price levels around the current mid price. They form structured bid and offer ladders that continuously provide depth. The agent calculates price levels as offsets from mid usingdelta_percent.
How It Works
Each market is defined in agent.toml:
delta_percentdefines distance from midquantitydefines order size
For example, with mid = 100,000 and
delta_percent = 1.0:- Bid = 99,000
- Offer = 101,000
RFQ (Request for Quote)
RFQ mode enables real-time quoting in response to incoming swap requests via a bidirectional API stream. Instead of posting passive depth, you respond directly to requests routed by the server. How It Works RFQ requires a[liquidity_provider] section:
- The agent opens a settlement stream.
- Server routes RFQ requests.
- Agent computes quote price from mid:
- Buy request →
mid \* (1 + offer_spread_percent / 100) - Sell request →
mid \* (1 - bid_spread_percent / 100)
- Agent validates quantity bounds.
- Agent responds with quote or rejection.
The agent rejects an RFQ if:
- Market is not configured or disabled
- RFQ is not enabled for the market
- Quantity is below
min_quantityorabove max_quantity - No mid-price is available yet (temporary – resolves after first price poll)
Prerequisites and Setup
The Cloud Agent is written in Rust and requires:- Rust (stable toolchain)
- Protocol Buffers compiler
- A Silvana orderbook API endpoint
Onboarding
Liquidity provision begins with self-service onboarding:- Generates an Ed25519 keypair
- Registers the agent with the orderbook server
- Signs the Canton topology transaction
- Completes ledger setup (preapproval, user service, subscription)
- Populates the
.envfile
The command is idempotent and can be safely re-run .
.env— identity, keys, network parametersconfiguration.toml— token registry and Canton Coin configagent.toml— liquidity logic
agent.toml.
Running the Agent
Launch the long-running agent:- Places grid orders
- Handles RFQs
- Participates in settlement
--orders-only--settlement-only--dry-run--confirm
--dry-run while tuning spreads and thresholds.
Practical Advice for Liquidity Providers
Strong liquidity is consistent and disciplined.- Use realistic
price_change_threshold_percentto avoid stale grids - Configure
max_concurrent_rfqsto control parallel exposure - Maintain
AGENT_FEE_RESERVE_CCto ensure settlement continuity - Monitor balances using
cloud-agent info balance