exoroute-cross-venue-order-.../exoroute/adapters/simulated_venue.py

19 lines
594 B
Python

from __future__ import annotations
import time
from typing import Dict, Any
class SimulatedVenueAdapter:
"""A simple simulated venue adapter that emits synthetic data."""
def __init__(self, venue_id: str = "venue-1"):
self.venue_id = venue_id
self._start = time.time()
def get_latest_signal(self) -> Dict[str, Any]:
t = time.time() - self._start
price = 50.0 + (t * 0.3) + ((hash(self.venue_id) & 0xFFFF) * 0.00007)
return {
"venue": self.venue_id,
"price": round(price, 4),
"ts": time.time(),
}