env.example 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. # ========================================
  2. # Hyperliquid API Configuration (CCXT Style)
  3. # ========================================
  4. # Your Hyperliquid API Generator Secret Key (from https://app.hyperliquid.xyz/API)
  5. # This is the SECRET KEY generated by the API panel - NOT your main wallet's private key!
  6. HYPERLIQUID_SECRET_KEY=your_api_secret_key_here
  7. # Your API Wallet Address (from https://app.hyperliquid.xyz/API)
  8. # This is the NEW wallet address created by the API generator - NOT your main MetaMask address!
  9. # It will be different from your main wallet address (0x...)
  10. HYPERLIQUID_WALLET_ADDRESS=your_api_wallet_address_here
  11. # Network selection: true for testnet (safe), false for mainnet (real money!)
  12. HYPERLIQUID_TESTNET=true
  13. # Trading
  14. HYPERLIQUID_MARGIN_MODE=ISOLATED
  15. # ========================================
  16. # Trading Bot Configuration
  17. # ========================================
  18. # Default token for market/price commands (when no token specified)
  19. DEFAULT_TRADING_TOKEN=BTC
  20. # Risk management settings
  21. RISK_MANAGEMENT_ENABLED=true
  22. # Stop loss threshold based on ROE (Return on Equity) percentage - matches Hyperliquid UI
  23. # This is the percentage loss of your actual cash investment, not margin
  24. STOP_LOSS_PERCENTAGE=10.0
  25. # ========================================
  26. # RSI Notification Configuration
  27. # ========================================
  28. # Enable/disable RSI vs RSI_SMA notifications
  29. RSI_NOTIFICATION_ENABLED=true
  30. # Timeframe for RSI analysis
  31. RSI_TIMEFRAME=1h
  32. # RSI calculation period (typically 14)
  33. RSI_PERIOD=14
  34. # RSI SMA period for smoothing (typically 5-10)
  35. RSI_SMA_PERIOD=5
  36. # ========================================
  37. # Telegram Bot Configuration
  38. # ========================================
  39. # Get these from @BotFather in Telegram
  40. TELEGRAM_BOT_TOKEN=your_telegram_bot_token_here
  41. # Get this by running: python utils/get_telegram_chat_id.py
  42. TELEGRAM_CHAT_ID=your_chat_id_here
  43. # Enable/disable Telegram integration
  44. TELEGRAM_ENABLED=true
  45. # ========================================
  46. # Custom Keyboard Configuration
  47. # ========================================
  48. # Enable/disable custom keyboard shortcuts (Freqtrade-style persistent buttons)
  49. TELEGRAM_CUSTOM_KEYBOARD_ENABLED=true
  50. # Custom keyboard layout - comma-separated commands per row, pipe-separated rows
  51. # Format: "cmd1,cmd2,cmd3|cmd4,cmd5|cmd6,cmd7,cmd8,cmd9"
  52. # Example: "/daily,/performance,/balance|/stats,/positions,/orders|/price,/market,/help,/commands"
  53. TELEGRAM_CUSTOM_KEYBOARD_LAYOUT="/daily,/performance,/balance|/stats,/positions,/orders|/price,/market,/help,/commands"
  54. # ========================================
  55. # Bot Monitoring Configuration
  56. # ========================================
  57. # Heartbeat interval for monitoring orders, positions, and price alarms (in seconds)
  58. # Default: 10 seconds - good balance between responsiveness and API usage
  59. # Minimum recommended: 10 seconds (to avoid rate limiting)
  60. # Maximum recommended: 300 seconds (5 minutes)
  61. BOT_HEARTBEAT_SECONDS=10
  62. # Interval (in heartbeats) for running less frequent cleanup tasks in MarketMonitor
  63. # (e.g., orphaned stop loss cleanup, position synchronization)
  64. # Default: 10 heartbeats (e.g., if BOT_HEARTBEAT_SECONDS is 10s, cleanup runs every 100s)
  65. MARKET_MONITOR_CLEANUP_INTERVAL_HEARTBEATS=10
  66. # ========================================
  67. # Logging
  68. # ========================================
  69. # Options: DEBUG, INFO, WARNING, ERROR
  70. LOG_LEVEL=INFO
  71. # Enable/disable logging to file (true/false)
  72. LOG_TO_FILE=true
  73. # Log file path (relative to project root)
  74. LOG_FILE_PATH=logs/trading_bot.log
  75. # Log rotation type: 'size' (rotate when file gets too big) or 'time' (rotate daily/hourly)
  76. LOG_ROTATION_TYPE=size
  77. # For size-based rotation: max file size in MB before rotation
  78. LOG_MAX_SIZE_MB=10
  79. # For time-based rotation: when to rotate ('midnight', 'H' for hourly, 'D' for daily)
  80. LOG_ROTATION_INTERVAL=midnight
  81. # Number of backup log files to keep (older files are automatically deleted)
  82. LOG_BACKUP_COUNT=5