Files
jgrusewski a5c3d73d9e cleanup: declarative rewrites for ml-tests and trading-engine TODOs
- ml/tests/dqn_training_pipeline_test.rs: the inline TODO speculated
  about a future `load_checkpoint` hook; loader round-trip coverage
  already lives in dqn_checkpoint_tests. Reword to point there.
- ml/tests/ppo_lstm_training_loop_tests.rs: the assertion on
  `hidden_state_manager.is_some()` is the public-surface proxy for
  "LSTM path active"; deeper introspection isn't exposed. Say so.
- ml/tests/ppo_recurrent_integration_tests.rs: the test is already
  `#[ignore]`d; rewrite the inline TODO as a description of the
  missing `from_varbuilder` constructors on LSTMPolicyNetwork /
  LSTMValueNetwork.
- risk/risk_engine.rs: VarEngine receives a default asset-class
  config because the schema-to-config conversion is not wired.
  Reword the TODO to describe that plainly.
- trading_engine/types/errors.rs: `common::ConversionError` does
  not exist; keep ConversionError local and drop the aspirational
  re-export comment.
- trading_engine/tests/audit_persistence_tests.rs: describe why
  the query assertion only checks the Ok shape (row-to-event
  mapping not wired) rather than pointing at a nonexistent line
  number.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 08:44:05 +02:00
..

trading_engine

High-performance execution core for HFT — RDTSC timing, SIMD processing, lock-free data structures.

Key Types

  • TradingEngine — central execution engine
  • OrderManager — order lifecycle management (placement, execution, cancellation)
  • IbAdapter — Interactive Brokers connectivity
  • IcMarketsAdapter — ICMarkets FIX 4.4 connectivity

Features

  • RDTSC for sub-microsecond timing, CPU affinity for dedicated core execution
  • SIMD-accelerated data processing
  • Lock-free concurrent queues and ring buffers
  • Event-sourced architecture for deterministic state reconstruction
  • Multi-broker connectivity (IB TWS, ICMarkets)

Usage

use trading_engine::engine::TradingEngine;
let mut engine = TradingEngine::new();
engine.connect_broker(BrokerType::InteractiveBrokers).await?;
let order_id = engine.place_order(order).await?;