Files
foxhunt/crates/ml/configs/compliance_rules.toml
jgrusewski 9c3d741a08 refactor: restructure repo — crates/, bin/, testing/ layout
Move 17 library crates into crates/, CLI binary into bin/fxt,
consolidate 10 test crates into testing/, split config crate
from deployment config files.

Root directory reduced from 38+ to ~17 directories.
All Cargo.toml paths and build.rs proto refs updated.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-25 11:56:00 +01:00

64 lines
1.7 KiB
TOML

# 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"