const ws = new WebSocket('wss://api.pumpevm.fun/ws/v1/prediction/orderbook');
// Subscribe to order book
ws.onopen = () => {
ws.send(JSON.stringify({
type: 'subscribe',
channel: 'orderbook',
marketId: '0x...',
outcome: 'YES',
}));
};
// Handle messages
ws.onmessage = (event) => {
const data = JSON.parse(event.data);
switch (data.type) {
case 'orderbook':
console.log('Order Book:', data.data);
break;
case 'trade':
console.log('Trade Executed:', data.data);
break;
case 'position':
console.log('Position Updated:', data.data);
break;
}
};
function placeLimitOrder(marketId, outcome, side, price, size) {
ws.send(JSON.stringify({
type: 'place_order',
data: { marketId, outcome, side, orderType: 'limit', price, size },
}));
}
function placeMarketOrder(marketId, outcome, side, size) {
ws.send(JSON.stringify({
type: 'place_order',
data: { marketId, outcome, side, orderType: 'market', size },
}));
}
function cancelOrder(orderId) {
ws.send(JSON.stringify({
type: 'cancel_order',
data: { orderId },
}));
}