ORE Studio Trading Component

Trade booking and lifecycle management for ORE Studio, implementing the core domain model for financial trades with full temporal versioning and FSM-enforced status transitions.

Component Architecture

Diagram:

Trading Component Diagram

Figure 1: ORE Studio Trading Component Diagram

Implements the core domain model for trade booking and lifecycle management. Key features:

  • Domain model: Trade and activity type entities with temporal versioning
  • Trade status FSM: Four-state machine (new, live, expired, cancelled) enforced via the ores.dq FSM infrastructure
  • Activity taxonomy: ~30 activity types across five categories for P&L attribution
  • JSON I/O: Serialization using reflection (rfl library)
  • Table I/O: Formatted table output using fort library
  • Database persistence: ORM entities, mappers, and repositories with temporal support
  • Message-based API: Request/response handlers for trade operations (0x5000-0x5FFF)
  • Synthetic data: Test data generation using faker-cxx
  • Version history: Full amendment history via temporal versioning; cancel-and-rebook via successor_trade_id

The module is organized into namespaces: domain (core entities), repository (ORM and persistence), service (business logic and FSM validation), messaging (API handlers), and generators (test data).

For trade status state machine design see Trade Status State Machine.

For multi-party trade isolation see Multi-Party Architecture.

Top: Documentation Previous: System Model