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