Live Providers¶
Stream real-time data from exchanges for live trading or replay at accelerated speed.
ReplayProvider¶
Replay historical data at Nx wall-clock speed. Useful for visual debugging or demo purposes.
from replaybt import ReplayProvider, CSVProvider
data = ReplayProvider(
inner=CSVProvider("ETH_1m.csv", symbol_name="ETH"),
speed=60, # 60x speed: 1m bar = 1 second wall-clock
)
for bar in data:
print(f"{bar.timestamp} close={bar.close}")
# Each bar arrives 1 second apart at 60x speed
Speed Settings¶
| Speed | Meaning |
|---|---|
0 |
Instant (no delay) |
1 |
Real-time (1m bar = 60s delay) |
60 |
60x speed (1m bar = 1s delay) |
3600 |
3600x speed (1h of data per second) |
Callback¶
Execute a function on each bar:
data = ReplayProvider(
inner=CSVProvider("ETH_1m.csv"),
speed=60,
on_bar=lambda bar: print(f"Price: {bar.close}"),
)
HyperliquidProvider¶
Async real-time data streaming from Hyperliquid exchange:
LighterProvider¶
Async real-time data streaming from Lighter exchange:
AsyncDataProvider¶
Base class for building custom async live data providers:
from replaybt import AsyncDataProvider
class MyLiveProvider(AsyncDataProvider):
# Implement async data streaming
...
Note
Live providers are designed for integration with live trading bots. For backtesting, use CSVProvider or exchange fetchers with historical data.