# FOXHUNT HFT CIRCUIT BREAKER CONFIGURATION # Production-grade protection for real money trading # Generated for critical deployment [circuit_breaker] enabled = true fail_fast = true auto_recovery = true # CRITICAL LATENCY PROTECTION [circuit_breaker.latency] # Microsecond thresholds for HFT operations warning_threshold_nanos = 50_000 # 50μs warning critical_threshold_nanos = 100_000 # 100μs critical - immediate halt evaluation_window_ms = 1000 # 1 second evaluation window min_requests_threshold = 100 # Minimum requests before evaluation failure_ratio_threshold = 0.05 # 5% failure rate triggers circuit breaker # Recovery settings recovery_timeout_ms = 5000 # 5 second recovery timeout half_open_max_calls = 10 # Max calls in half-open state half_open_success_threshold = 8 # Required successes to close # FINANCIAL RISK LIMITS [circuit_breaker.risk] # Daily loss limits (USD) daily_loss_warning = 10_000.0 # $10K warning daily_loss_critical = 50_000.0 # $50K critical - trading halt hourly_loss_limit = 5_000.0 # $5K per hour limit # Position size limits (USD) max_position_size = 1_000_000.0 # $1M maximum position position_warning_threshold = 0.95 # 95% of limit warning position_critical_threshold = 1.0 # 100% of limit - block new orders # Order rate limiting max_orders_per_second = 1000 # 1000 orders/sec maximum burst_allowance = 1500 # 1500 orders burst capacity rate_limit_window_ms = 1000 # 1 second rate limit window # MARKET VOLATILITY PROTECTION [circuit_breaker.market] # Volatility spike detection volatility_warning_percent = 2.0 # 2% price movement warning volatility_critical_percent = 5.0 # 5% price movement halt volatility_window_minutes = 1 # 1 minute evaluation window # Market data quality max_data_gap_ms = 100 # 100ms max gap in market data min_update_frequency_hz = 100 # 100Hz minimum update frequency stale_data_timeout_ms = 500 # 500ms stale data timeout # SYSTEM HEALTH MONITORING [circuit_breaker.system] # CPU and memory thresholds cpu_warning_percent = 80.0 # 80% CPU warning cpu_critical_percent = 95.0 # 95% CPU critical memory_warning_percent = 70.0 # 70% memory warning memory_critical_percent = 90.0 # 90% memory critical # GC pause monitoring max_gc_pause_ms = 10.0 # 10ms max GC pause gc_frequency_warning_per_min = 60 # 60 GCs/minute warning # Thread pool monitoring thread_pool_warning_percent = 80.0 # 80% utilization warning thread_pool_critical_percent = 95.0 # 95% utilization critical # EXCHANGE CONNECTIVITY [circuit_breaker.connectivity] # Connection monitoring max_disconnect_duration_sec = 5 # 5 seconds max disconnect connection_retry_interval_ms = 100 # 100ms retry interval max_retry_attempts = 50 # 50 retry attempts before halt # Latency monitoring per exchange [circuit_breaker.connectivity.binance] max_latency_ms = 50.0 # 50ms max latency to Binance timeout_ms = 1000 # 1 second timeout [circuit_breaker.connectivity.coinbase] max_latency_ms = 100.0 # 100ms max latency to Coinbase timeout_ms = 2000 # 2 second timeout [circuit_breaker.connectivity.kraken] max_latency_ms = 200.0 # 200ms max latency to Kraken timeout_ms = 3000 # 3 second timeout # ALERTING CONFIGURATION [circuit_breaker.alerts] # Notification channels slack_webhook = "https://hooks.slack.com/services/YOUR/SLACK/WEBHOOK" email_recipients = ["trading@foxhunt.io", "risk@foxhunt.io"] pagerduty_service_key = "YOUR_PAGERDUTY_SERVICE_KEY" # Alert thresholds critical_alert_delay_ms = 100 # 100ms max delay for critical alerts warning_alert_delay_ms = 1000 # 1 second max delay for warnings max_alerts_per_minute = 10 # Rate limit alerts # Alert deduplication deduplication_window_minutes = 5 # 5 minutes deduplication window escalation_timeout_minutes = 10 # 10 minutes escalation timeout # LOGGING AND METRICS [circuit_breaker.monitoring] log_level = "INFO" # Log level (DEBUG, INFO, WARN, ERROR) metrics_export_interval_ms = 1000 # 1 second metrics export detailed_metrics = true # Enable detailed metrics collection # Prometheus metrics configuration prometheus_endpoint = "/metrics" prometheus_namespace = "foxhunt_circuit_breaker" # RECOVERY AND TESTING [circuit_breaker.recovery] # Graceful degradation enable_graceful_degradation = true reduced_capacity_percent = 50.0 # 50% capacity during recovery gradual_recovery_steps = 5 # 5 steps to full recovery recovery_step_interval_minutes = 2 # 2 minutes between recovery steps # Testing mode (disable for production) test_mode = false # Set to true for testing only simulation_mode = false # Set to true for simulation only override_all_limits = false # DANGER: Only for emergency override