Role Guide

Market Maker Guide

Provide liquidity by submitting competitive quotes on investor RFQs. Learn quote submission strategies, pricing optimization, and inventory management.

Smart Contract: RFQEngineModule
File: RFQEngineModuleFacet.sol
Role Required: MARKET_MAKER_ROLE

Key Topics

DISCOVERY

Finding RFQ Opportunities

Monitor RFQCreated events and query open RFQs via UfxViewModule

QUOTING

Quote Submission

Submit competitive quotes with custom pricing and fees within NAV bounds

OPTIMIZATION

Pricing & Fee Strategy

Optimize spreads while staying competitive. Fee optimization within fund caps

INVENTORY

Inventory Management

Track positions, manage exposure, and maintain liquidity across multiple funds

RISK

Risk Management

Monitor NAV drift, concentration risk, and compliance limits

SETTLEMENT

Settlement Workflows

Token approvals and monitoring settlement execution

Quick Reference: Submit Quote

// Monitor new RFQs
rfqEngineModule.on("RFQCreated", async (rfqId, creator, fundId, quantity, expectedPrice) => {
console.log("New RFQ:", rfqId);
// Analyze opportunity...
});
// Submit quote
await rfqEngineModule.submitQuote(
rfqId,
price, // Your quote price
quantity, // Amount you're willing to trade
feeBps, // Your fee (e.g., 30 for 0.30%)
validUntil // Quote expiry timestamp
);
📄 Smart Contract: RFQEngineModuleFacet.sol, Function: submitQuote() at line 116