VisualHFT architecture overview
Trace the Core and Pro application from plugin delivery through connector, shared market-data, study, trigger, recorder, replay, and Dashboard boundaries.
The Core and Pro applications share architectural concepts with the public GitHub build, but the packages are not interchangeable. This page covers the Core and Pro host, including Marketplace delivery, entitled plugins, Session Recorder, and Replay Engine. The open-source architecture guide covers the public repository.
Layer map
VisualHFT host
├─ authentication and entitlement
├─ bundled plugin root
└─ authenticated Marketplace plugin root
|
v
connector or Replay Engine
|
v
shared market-data contracts
├─ Dashboard surfaces
├─ study and monitoring plugins
├─ Trigger Engine
└─ Session Recorder
Core boundaries
- The host owns authentication, entitlement, plugin root selection, application composition, and Dashboard navigation.
- Bundled and Marketplace plugins are separate delivery roots. Marketplace packages pass integrity and dependency checks before load.
VisualHFT.Commonsholds shared contracts and core logic without a WPF dependency.VisualHFT.Commons.WPFholds reusable desktop-specific behavior.- Connectors and studies use shared contracts; they do not gain a supported dependency on sibling plugins merely because their assemblies are installed together.
Market-data ownership
Order books move through performance-sensitive paths and may be pooled and mutable. Consumers must extract the primitives they need or create an owned snapshot. Retaining a pooled OrderBook reference after the callback returns can produce silent data corruption.
Distribution and UI
Connectors normalize venue messages and publish shared data. Studies and the host subscribe independently. High-frequency input must not synchronously block on rendering; UI work is coordinated at a controlled cadence appropriate to the surface.
Replay engine
Session Recorder writes captured streams with session and stream metadata. Replay Engine reads supported sessions, advances application time from replay events, and publishes through the market-data path used by downstream consumers. Replay can mute live routing while it owns the session; operators must confirm routing state before interpreting a workspace.