# Compliance Rules Configuration for DQN Training # Hot-reload supported via PostgreSQL NOTIFY/LISTEN # These rules are enforced during action execution in DQN training [[rules]] id = "position_limit" priority = 100 description = "Maximum position size per instrument" rule_type = "POSITION_LIMIT" active = true version = 1 severity = "High" parameters = { max_position = 10.0, currency = "USD" } regulatory_framework = "Internal Risk Management" regulatory_reference = "Risk Policy Section 4.2" [[rules]] id = "trading_hours" priority = 90 description = "Enforce trading hours 9:30-16:00 ET" rule_type = "TRADING_HOURS" active = true version = 1 severity = "Medium" parameters = { start_time = "09:30:00", end_time = "16:00:00", timezone = "America/New_York" } regulatory_framework = "Exchange Rules" regulatory_reference = "NYSE Trading Hours" [[rules]] id = "concentration" priority = 80 description = "Maximum 10% concentration in single symbol" rule_type = "CONCENTRATION_RISK" active = true version = 1 severity = "High" parameters = { max_concentration_pct = 10.0 } regulatory_framework = "Internal Risk Management" regulatory_reference = "Risk Policy Section 5.1" [[rules]] id = "daily_loss_limit" priority = 85 description = "Maximum daily loss limit" rule_type = "DAILY_LOSS_LIMIT" active = true version = 1 severity = "Critical" parameters = { max_daily_loss = 50000.0, currency = "USD" } regulatory_framework = "Internal Risk Management" regulatory_reference = "Risk Policy Section 3.3" [[rules]] id = "leverage_limit" priority = 75 description = "Maximum leverage ratio" rule_type = "LEVERAGE_LIMIT" active = true version = 1 severity = "High" parameters = { max_leverage = 5.0 } regulatory_framework = "Basel III" regulatory_reference = "Basel III Leverage Ratio"