Hi, I’d like to apply for a grant for a CEX like real-time market data API server for Mango, it would offer:
familiar experience for centralized exchanges APIs users
- WebSocket API with Pub/Sub flow - subscribe to selected channels and markets and receive real-time data as easy to parse JSON messages that can be consumed from any language supporting WebSocket protocol
incremental L2 order book updates - instead of decoding Mango market
bidsaccounts for each account change in order to detect order book updates, receive initial L2 snapshot and incremental updates as JSON messages real-time over WebSocket connection
tick-by-tick trades - instead of decoding
eventQueueaccount data which is quite large (> 1MB) and in practice it’s hard to consume real-time directly from Solana RPC node due to it’s size, receive individual trade messages real-time over WebSocket connection
- real-time L3 data - receive the most granular updates on individual order level: open, change, fill, done for every order that Mango DEX processes
- decreased load and bandwidth consumption for Solana RPC nodes hosts - by providing real-time market data API server instead of RPC node directly, hosts can decrease substantially both CPU load and bandwidth requirements as only this API server will be direct consumer of RPC API when it comes to market data accounts changes and will efficiently normalize and broadcast small JSON messages to all connected clients
I’ve built serum-vial (GitHub - tardis-dev/serum-vial: Real-time WebSocket market data API for Serum) for Serum spot markets and I’m pretty sure similar project can be done for Mango DEX and would be very useful for Mango API users.
I know there is mango-vial (GitHub - microwavedcola1/mango-vial: Real-time WebSocket market data API for Mango Markets v3) already which is a copy of serum-vial, but I’m proposing full implementation (not only L2 data) and ongoing support, bug-fixing and running demo/community server with this API.
I’d like to also add support for WS based feeds for liquidation data (I think it can be parsed from eventQueue account for a given market) as well as funding rates etc if possible.
For compensation I propose $60k in locked (for a year?) MNGO tokens (~180k tokens), project would be completed most likely by the end of this year (end of Jan 2022 in worst case).