Professional-grade market data visualization powered by Bybit's V5 WebSocket API
Live orderbook depth โข Real-time candlesticks โข Liquidation feeds โข Professional interface
The dashboard offers a professional-grade interface for monitoring cryptocurrency markets with real-time data streams. Built with Node.js and vanilla JavaScript, it provides a lightweight yet powerful solution for traders and developers who need instant access to market data without the complexity of trading execution.
| ๐น Live Market Data Real-time price feeds |
๐ Interactive Charts Customizable timeframes |
โก Low Latency Direct WebSocket connection |
๐ Auto-Reconnect Robust error handling |
๐ Real-time Market Data
- ๐ฅ Live Orderbook: 50-level depth orderbook displaying bid and ask prices with volume information
- ๐ Candlestick Charts: Real-time OHLC (Open, High, Low, Close) data with customizable timeframes
- ๐ฅ Liquidation Feed: Live stream of liquidation events showing position closures and market sentiment
- ๐ Price Statistics: Current price, 24-hour change percentage, bid-ask spread, and trading volume
๐ฎ Interactive Controls
- ๐ Dynamic Symbol Switching: Change between any Bybit USDT perpetual contracts (BTCUSDT, ETHUSDT, SOLUSDT, etc.)
- โฑ๏ธ Timeframe Selection: Multiple candlestick intervals from 1-minute scalping to daily analysis
- ๐ Environment Toggle: Switch between live mainnet data and testnet for development/testing
- ๐ Auto-reconnection: Robust WebSocket connection management with automatic retry logic
โ๏ธ Technical Capabilities
- ๐ WebSocket Integration: Direct connection to Bybit V5 public API endpoints
- โก Low Latency Updates: Optimized data processing for minimal delay
- ๐ฑ Responsive Design: Adaptive interface that works on desktop and mobile devices
- ๐ง Memory Management: Efficient data buffering with automatic cleanup to prevent memory leaks
- ๐ก๏ธ Error Handling: Comprehensive error recovery and connection status monitoring
Get up and running in under 2 minutes!
- Node.js 16+ - Download here
- Internet connection - For WebSocket data streams
|
Step 1: Clone & Navigate git clone <repository-url>
cd live-market-dashboardStep 2: Install Dependencies npm install |
Step 3: Launch Dashboard npm startStep 4: Open in Browser |
|
Real-time market depth ๐ด Ask Orders - Sell orders ๐ข Bid Orders - Buy orders ๐ 50 Levels - Full market depth ๐ฐ Live Spread - Real-time calculation |
Live price action ๐ฏ๏ธ OHLC Data - Complete price info ๐ Volume Bars - Trading activity โก Real-time - Live updates ๐จ Color Coded - Bull/bear visualization |
Market sentiment tracker โ๏ธ Long/Short - Position details ๐ Size Categories - Smart formatting โฐ Timestamps - Event timing ๐จ Impact Levels - Visual indicators |
All Bybit USDT Perpetual Contracts Supported
| Category | Examples | Focus |
|---|---|---|
| ๐ฅ Major Cryptos | BTC, ETH, SOL, ADA, DOT, AVAX, MATIC | Market leaders |
| ๐ฅ DeFi Tokens | UNI, LINK, AAVE, COMP, SUSHI, CRV | Decentralized finance |
| ๐ Meme Coins | DOGE, SHIB, PEPE, FLOKI | Community driven |
| โญ Emerging Assets | Hundreds of other pairs | New opportunities |
| โก Scalping 1m โข 3m โข 5m High-frequency |
๐ Intraday 15m โข 30m Day trading |
๐ Swing 1h โข 4h Medium-term |
๐ฏ Position 1D Long-term trends |
๐ง Quick Configuration
PORT=3000 # Server port (default: 3000)| Setting | Value | Description |
|---|---|---|
| ๐ฏ Initial Symbol | BTCUSDT |
Starting trading pair |
| โฑ๏ธ Default Timeframe | 5 minutes |
Chart interval |
| ๐ Environment | Mainnet |
Live data feed |
| ๐ฅ Max Liquidations | 100 events |
Memory limit |
| ๐ Max Candles | 100 periods |
Chart history |
npm install
cp config.example.json config.json # Create your config file
npm run devThe application uses a JSON configuration file to store user preferences and settings. When you first run the application, it will automatically create a config.json file from the default settings.
-
Copy the example configuration:
cp config.example.json config.json
-
Customize your settings in
config.json:
{
"appearance": {
"theme": "dark" // UI theme: "dark" or "light"
},
"trading": {
"defaultSymbol": "BTCUSDT", // Initial trading pair to load
"defaultInterval": "5", // Default chart timeframe, format: 1, 3, 5, 15, 60, 240, D, W, M
"bigTradesFilter": 50000, // Minimum USD value for big trades alert
"whaleThreshold": 500000, // USD threshold for whale trade classification
"blockTradeThreshold": 1000000, // USD threshold for block trade classification
"alarmEnabled": false // Audio alert for significant events
},
"display": {
"maxTradesHistory": 100 // Maximum number of trades to keep in memory
},
"symbols": {
"favorites": ["BTCUSDT", "ETHUSDT"], // Quick-access favorite trading pairs
"recent": [] // Recently viewed symbols (auto-populated)
},
"network": {
"isTestnet": false // Use Bybit testnet instead of mainnet
}
}The application provides REST endpoints to modify configuration at runtime:
GET /api/config- Get current configurationPUT /api/config/:path- Update specific setting (e.g.,/api/config/appearance.theme)POST /api/config- Update multiple settingsPOST /api/config/reset- Reset to default configuration
Settings are automatically saved and persist between application restarts.
๐ฆ live-market-dashboard
โโโ ๐ฅ๏ธ server.js # Express server with Socket.io
โโโ ๐ src/
โ โโโ ๐ websocket-client.js # Bybit WebSocket connection
โ โโโ ๐ orderbook-manager.js # Orderbook data processing
โ โโโ ๐ kline-manager.js # Candlestick data handling
โ โโโ ๐ฅ liquidation-manager.js # Liquidation processing
โโโ ๐ public/
โ โโโ ๐ index.html # Frontend interface
โ โโโ ๐จ style.css # Dashboard styling
โ โโโ โก app.js # Client-side logic
โโโ ๐ package.json # Dependencies and scripts
Direct connection to Bybit's V5 WebSocket API
| Environment | Endpoint | Purpose |
|---|---|---|
| ๐ Mainnet | wss://stream.bybit.com/v5/public/linear |
Live trading data |
| ๐งช Testnet | wss://stream-testnet.bybit.com/v5/public/linear |
Development/testing |
- ๐
orderbook.50.{SYMBOL}- 50-level orderbook updates - ๐
kline.{INTERVAL}.{SYMBOL}- Real-time candlestick data - ๐ฅ
allLiquidation.{SYMBOL}- Complete liquidation events
โ ๏ธ Common Issues & Solutions
| Issue | Solution |
|---|---|
| ๐ Connection Problems | Verify internet connectivity and Bybit API status |
| ๐ค Symbol Errors | Use correct format: BTCUSDT (not BTC/USDT) |
| ๐ Performance Issues | Close unnecessary browser tabs, check system resources |
| โฑ๏ธ Data Delays | Allow 30-60 seconds for initial data population |
