|
|
||
|---|---|---|
| src/idea109_secureex_hardware_accelerated | ||
| tests | ||
| .gitignore | ||
| AGENTS.md | ||
| README.md | ||
| pyproject.toml | ||
| test.sh | ||
README.md
SecureEx
SecureEx is a deterministic compliance and replay core for cross-venue trading workflows.
It provides:
- Canonical market primitives for venue normalization.
- FIX and WebSocket adapters.
- A deterministic enclave execution model with attestation.
- A SQLite-backed hash-chained governance ledger.
- Delta reconciliation helpers for disconnect recovery.
- An offline replay harness for regression testing.
What This Repository Does
This codebase models the minimum trusted control plane needed for a SecureEx-style system:
- normalize market data into
LocalMarket - aggregate it into
SharedSignals - produce a deterministic
PlanDelta - attest the enclave measurement and decision path
- persist the decision trail into an auditable SQLite ledger
- replay the same inputs deterministically after a disconnect
Architecture
Canonical primitives
LocalMarket: venue-level bid/ask state.SharedSignals: aggregated cross-venue signal output.PlanDelta: the next hedge or quote action.PrivacyBudget: guards signal leakage.AuditLogEntry: the attested event record.
Adapters
FixAdapter: parses FIX-style tag/value payloads.WebSocketAdapter: parses JSON market updates.
Enclave and attestation
SecureEnclave.compute()is deterministic for a given market set.SecureEnclave.attest()returns a signed measurement report.verify_attestation()checks the report signature and measurement.
Governance ledger
GovernanceLedgerstores an append-only hash chain in SQLite.verify_chain()recomputes the full chain for audit validation.
Delta sync and replay
DeltaSynctracks sequence progress per venue and asset.reconcile_markets()computes the deterministic recovery delta.replay.pycan run a local replay from a JSON event file.
Install
python3 -m pip install -e .
Run Tests
bash test.sh
Replay CLI
secureex-replay --events events.json
Example events.json:
[
{"adapter": "fix", "venue": "VENUE_A", "message": "55=ABC|132=10.1|133=10.2|134=100|135=120|34=7|52=1.5"},
{"adapter": "ws", "venue": "VENUE_B", "message": {"asset": "ABC", "bid": 10.0, "ask": 10.3, "bid_size": 80, "ask_size": 60, "sequence": 8, "timestamp": 1.7}}
]
Packaging
The package name is idea109-secureex-hardware-accelerated and the long description is sourced from this README.md.