Virtufin Execution Engines
Deployable executor workers for the WorkManager, built on the
IExecutor bridge from
virtufin-execution-devkit
(Virtufin.Execution.DevKit). The consumer half of the trading-strategy
framework's decide/execute loop --
virtufin-strategies (strategy
workers, built on virtufin-strategy-devkit) is the producer half.
flowchart LR
STRAT["Strategy worker\n(virtufin-strategies)"]
SUB(["sc.<scenarioid>.trading.order.submitted"])
SIM["SimulatedExecutor\n(hyp.*)"]
SHADOW["ShadowExecutor\n(SHADOW_*)"]
LIVE["LiveExecutor\n(LIVE / act)"]
STRAT --> SUB
SUB --> SIM
SUB --> SHADOW
SUB --> LIVE
Workers
| Worker | Engine | World | Notes |
|---|---|---|---|
| SimulatedExecutor | DeterministicExecutorBase |
hyp.* |
Fills limit orders immediately, in full, at their own price. No market data feed -- market orders throw. |
| ShadowExecutor | ObserveOnlyExecutor wrapping SimulatedExecutor |
SHADOW_* |
Publishes real Trade Lifecycle Events from simulated fills, without touching a real exchange. |
| LiveExecutor | LiveExecutorBase (Binance Spot REST API) |
LIVE/act |
Untested against the live exchange -- read before deploying. |
Where to start
- Overview — how an executor fits into the decide/execute loop.
- Getting Started — build, test, and deploy a worker.
The bridge internals (ExecutorWorkerBase<TState>, the CloudEvent
decode/encode helpers) are documented in the
execution devkit docs.