21 lines
607 B
Python
21 lines
607 B
Python
from __future__ import annotations
|
|
from typing import List
|
|
|
|
from .dsl import PlanDelta, StrategyDelta
|
|
|
|
|
|
class ExecutionEngine:
|
|
"""Minimal, latency-aware router that would dispatch actions to venues."""
|
|
|
|
def __init__(self):
|
|
pass
|
|
|
|
def route(self, plan: PlanDelta) -> List[str]:
|
|
# In this MVP, we simply return venue labels for actions as a stub
|
|
venue_actions = []
|
|
for a in plan.actions:
|
|
venue_actions.append(f"venue-A/{a.asset.symbol}:{a.delta}")
|
|
if not venue_actions:
|
|
venue_actions.append("no-actions")
|
|
return venue_actions
|