DQN: disable all exploration for production (warmup=0, epsilon=0, noisy_nets=false, count_bonus=false), read feature_count from checkpoint metadata instead of hardcoding 54, add loaded guard and NaN check on predict output. PPO: fix confidence formula — use act_with_log_prob() instead of act() which returns value_estimate not log_prob, add loaded guard and NaN check, remove WorkingPPO alias. Liquid: add loaded flag for is_ready()/predict() guards. Remove EgoboxOptimizer/EgoboxOptimizerBuilder backward-compat aliases — replaced with canonical ArgminOptimizer everywhere. 323 trading_service tests, 200 hyperopt tests, 0 clippy warnings. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
63 lines
2.3 KiB
Rust
63 lines
2.3 KiB
Rust
//! Proximal Policy Optimization (PPO) Implementation
|
|
//!
|
|
//! This module provides a complete PPO implementation with:
|
|
//! - Actor-Critic architecture with separate policy and value networks
|
|
//! - Generalized Advantage Estimation (GAE)
|
|
//! - Clipped surrogate objective
|
|
//! - Trajectory collection and processing
|
|
//! - Real mathematical operations using candle-core v0.9.1
|
|
//! - Circuit breaker for failure management
|
|
//! - Reward normalization for numerical stability
|
|
//! - Transaction costs and position limits for risk management
|
|
|
|
pub mod adaptive_entropy;
|
|
pub mod continuous_policy;
|
|
pub mod continuous_ppo;
|
|
pub mod flow_policy;
|
|
pub mod gae;
|
|
pub mod ppo;
|
|
pub mod trajectories;
|
|
// pub mod continuous_example; // Module file not found
|
|
pub mod continuous_demo;
|
|
pub mod trainable_adapter;
|
|
pub mod circuit_breaker;
|
|
pub mod reward_normalizer;
|
|
pub mod transaction_costs;
|
|
pub mod position_limits;
|
|
pub mod portfolio_tracker;
|
|
pub mod entropy_regularization;
|
|
pub mod action_masking;
|
|
pub mod stress_testing;
|
|
pub mod hidden_state_manager;
|
|
pub mod lstm_networks;
|
|
pub mod action_space;
|
|
pub mod continuous_action_masking;
|
|
pub mod continuous_transaction_costs;
|
|
pub mod percentile_scaler;
|
|
pub mod reward_shaping;
|
|
pub mod symlog;
|
|
pub mod composite_reward;
|
|
pub mod trajectory_replay;
|
|
|
|
// Re-export main components for external use
|
|
pub use continuous_policy::{ContinuousAction, ContinuousPolicyConfig, ContinuousPolicyNetwork};
|
|
pub use continuous_ppo::{
|
|
collect_continuous_trajectories, ContinuousPPO, ContinuousPPOConfig, ContinuousTrajectory,
|
|
ContinuousTrajectoryBatch, ContinuousTrajectoryStep,
|
|
};
|
|
pub use flow_policy::{FlowPolicy, FlowPolicyConfig};
|
|
pub use gae::{compute_gae, GAEConfig};
|
|
pub use ppo::{PPOConfig, ValueNetwork, PPO};
|
|
pub use trainable_adapter::{train_batch, UnifiedPPO as UnifiedTrainablePPO};
|
|
pub use trajectories::{Trajectory, TrajectoryBatch, TrajectorySequence, TrajectoryStep};
|
|
pub use portfolio_tracker::PortfolioTracker;
|
|
pub use crate::common::action::{ExposureLevel, FactoredAction, OrderType, Urgency};
|
|
pub use action_space::{ActionSpace, ActionType};
|
|
pub use continuous_action_masking::{
|
|
mask_continuous_actions, ContinuousActionConstraints,
|
|
};
|
|
pub use continuous_transaction_costs::{
|
|
conservative_cost_model, default_hft_cost_model, zero_cost_model,
|
|
ContinuousTransactionCosts, SlippageModel,
|
|
};
|