deltatrace-deterministic-re.../delta_trace/core.py

76 lines
1.2 KiB
Python

from __future__ import annotations
from dataclasses import dataclass
from typing import Optional, Dict, Any, List
@dataclass
class LocalEvent:
event_id: str
asset: str
venue: str
timestamp: float # epoch seconds
source: str
payload: Optional[Dict[str, Any]] = None
@dataclass
class PlanDelta:
delta_id: str
timestamp: float
author: str
payload: Dict[str, Any]
signature: Optional[str] = None
@dataclass
class OrderEvent:
order_id: str
timestamp: float
side: str # "buy" | "sell"
instrument: str
price: float
quantity: float
provenance: Optional[Dict[str, Any]] = None
@dataclass
class FillEvent:
fill_id: str
order_id: str
timestamp: float
price: float
quantity: float
venue: str
provenance: Optional[Dict[str, Any]] = None
@dataclass
class RiskCheck:
check_id: str
timestamp: float
result: str
details: Dict[str, Any]
@dataclass
class AuditLog:
log_id: str
timestamp: float
entry: str
signature: Optional[str] = None
@dataclass
class PrivacyBudget:
budget_id: str
per_signal_budget: float
leakage_bound: float
@dataclass
class Metadata:
version: str
nonce: str
source_adapter: str