- Restored S3 storage functionality with AWS SDK - Fixed field access issues (removed underscore prefixes) - Created Benzinga historical module - Initial SIMD optimization (needs consolidation) - Fixed multiple compilation errors PENDING: SIMD consolidation, config centralization, shared libraries
142 lines
5.0 KiB
Plaintext
142 lines
5.0 KiB
Plaintext
# Environment Configuration Template for Foxhunt HFT System
|
|
# Copy this file to .env and configure with your actual values
|
|
|
|
# =============================================================================
|
|
# AWS S3 Configuration
|
|
# =============================================================================
|
|
|
|
# AWS Credentials - Required for S3 storage functionality
|
|
AWS_ACCESS_KEY_ID=your_aws_access_key_id
|
|
AWS_SECRET_ACCESS_KEY=your_aws_secret_access_key
|
|
AWS_REGION=us-east-1
|
|
|
|
# S3 Bucket Configuration
|
|
S3_ARCHIVAL_BUCKET=foxhunt-archives
|
|
S3_MODEL_STORAGE_BUCKET=foxhunt-models
|
|
S3_CHECKPOINT_BUCKET=foxhunt-checkpoints
|
|
|
|
# S3 Storage Classes (cost optimization)
|
|
# Options: STANDARD, STANDARD_IA, ONEZONE_IA, REDUCED_REDUNDANCY, GLACIER, DEEP_ARCHIVE
|
|
S3_DEFAULT_STORAGE_CLASS=STANDARD_IA
|
|
S3_COMPLIANCE_STORAGE_CLASS=GLACIER
|
|
|
|
# =============================================================================
|
|
# HashiCorp Vault Configuration (Recommended for Production)
|
|
# =============================================================================
|
|
|
|
# Vault server configuration
|
|
VAULT_ADDR=http://localhost:8200
|
|
VAULT_TOKEN=your_vault_token
|
|
|
|
# Vault paths for S3 credentials (secure storage)
|
|
VAULT_S3_CREDENTIALS_PATH=secret/data/foxhunt/s3
|
|
VAULT_AWS_CREDENTIALS_PATH=secret/data/foxhunt/aws
|
|
|
|
# =============================================================================
|
|
# Database Configuration
|
|
# =============================================================================
|
|
|
|
DATABASE_URL=postgresql://localhost/foxhunt
|
|
REDIS_URL=redis://localhost:6379
|
|
|
|
# =============================================================================
|
|
# Trading System Configuration
|
|
# =============================================================================
|
|
|
|
# Environment type (development, staging, production)
|
|
ENVIRONMENT=development
|
|
|
|
# Trading configuration
|
|
FOXHUNT_REDIS_URL=redis://localhost:6379
|
|
REDIS_HOST=localhost
|
|
REDIS_PORT=6379
|
|
|
|
# =============================================================================
|
|
# Logging and Monitoring
|
|
# =============================================================================
|
|
|
|
RUST_LOG=info
|
|
RUST_BACKTRACE=1
|
|
|
|
# =============================================================================
|
|
# S3 Archival Settings
|
|
# =============================================================================
|
|
|
|
# Data retention policies (in days)
|
|
S3_ARCHIVAL_RETENTION_DAYS=2555 # 7 years for regulatory compliance
|
|
S3_MARKET_DATA_RETENTION_DAYS=1825 # 5 years
|
|
S3_TRADING_LOGS_RETENTION_DAYS=2555 # 7 years
|
|
S3_RISK_LOGS_RETENTION_DAYS=2555 # 7 years
|
|
|
|
# Compression settings
|
|
S3_ENABLE_COMPRESSION=true
|
|
S3_COMPRESSION_ALGORITHM=gzip # Options: gzip, lz4, zstd
|
|
|
|
# Lifecycle management
|
|
S3_ENABLE_LIFECYCLE=true
|
|
S3_TRANSITION_TO_IA_DAYS=30 # Move to Infrequent Access after 30 days
|
|
S3_TRANSITION_TO_GLACIER_DAYS=90 # Move to Glacier after 90 days
|
|
S3_TRANSITION_TO_DEEP_ARCHIVE_DAYS=365 # Move to Deep Archive after 1 year
|
|
|
|
# =============================================================================
|
|
# Security Settings
|
|
# =============================================================================
|
|
|
|
# S3 Encryption
|
|
S3_ENABLE_ENCRYPTION=true
|
|
S3_ENCRYPTION_ALGORITHM=AES256 # Options: AES256, aws:kms
|
|
|
|
# Access control
|
|
S3_ENABLE_VERSIONING=true
|
|
S3_ENABLE_MFA_DELETE=false # Enable in production for critical buckets
|
|
|
|
# =============================================================================
|
|
# Performance Settings
|
|
# =============================================================================
|
|
|
|
# S3 Upload settings
|
|
S3_MULTIPART_THRESHOLD=8388608 # 8MB threshold for multipart uploads
|
|
S3_MAX_CONCURRENT_UPLOADS=4
|
|
S3_PART_SIZE=5242880 # 5MB part size
|
|
|
|
# Retry configuration
|
|
S3_MAX_RETRIES=3
|
|
S3_RETRY_BACKOFF_MS=1000
|
|
|
|
# =============================================================================
|
|
# Model Storage Configuration
|
|
# =============================================================================
|
|
|
|
# Model storage settings
|
|
MODEL_STORAGE_TYPE=s3 # Options: local, s3
|
|
MODEL_ENABLE_COMPRESSION=true
|
|
MODEL_COMPRESSION_LEVEL=6
|
|
|
|
# Checkpoint storage
|
|
CHECKPOINT_STORAGE_TYPE=s3 # Options: local, s3
|
|
CHECKPOINT_RETENTION_COUNT=10 # Number of checkpoints to keep
|
|
|
|
# =============================================================================
|
|
# Development and Testing
|
|
# =============================================================================
|
|
|
|
# Test configuration
|
|
TEST_POSITIONS=false
|
|
TEST_S3_BUCKET=foxhunt-test-bucket
|
|
TEST_AWS_REGION=us-east-1
|
|
|
|
# Mock S3 for testing (LocalStack)
|
|
USE_LOCALSTACK=false
|
|
LOCALSTACK_ENDPOINT=http://localhost:4566
|
|
|
|
# =============================================================================
|
|
# Production Notes
|
|
# =============================================================================
|
|
|
|
# 1. Never commit .env files to version control
|
|
# 2. Use Vault for secure credential management in production
|
|
# 3. Enable MFA and proper IAM policies for AWS access
|
|
# 4. Monitor S3 costs and optimize storage classes
|
|
# 5. Set up proper lifecycle policies for automated cost optimization
|
|
# 6. Enable CloudTrail for audit logging
|
|
# 7. Use separate buckets for different environments (dev/staging/prod) |