애플리케이션 초기 설정

MagicTradeBot을 시작하기 전에, 관리 백엔드와 핵심 봇 인스턴스를 구성해야 합니다. 아래는 각 구성 요소에 대한 설정 예시와 중요한 팁입니다.

🖥️ ASP.NET Core 관리 앱 (appsettings.json)

위치: /management/appsettings.json


// appsettings.json (v1.2)
{
  "ConnectionStrings": {
    "SQLLight": "Data Source=Data/MTManagementDB.db",
    "SQLSERVER": "",
    "Postge": "",
    "MySQL": ""
  },
  "ApplicationSettings": {
    "Author": "MagicTradeBot",
    "PageCaption": "MagicTradeBot 관리 애플리케이션",
    "Environment": "Development",
    "IsDemo": true,
    "Domain": {
      "Backend": "https://localhost:44353",
      "Frontend": "http://localhost:4200"
    },
    "Localization": {
      "DefaultCulture": "en",
      "Timezone": "America/Los_Angeles",
      "Currency": "USD"
    },
    "Pagination": {
      "DefaultPageSize": 18,
      "MaxPageSize": 100,
      "VisiblePageCount": 5
    },
    "Caching": {
      "Enabled": true,
      "Duration": 3600,
      "MaxCacheSize": "500MB"
    },
    "MaximumUrlCharacters": 60
  },
  "JwtSettings": {
    "SecretKey": "{JWT_SECRET}",
    "Issuer": "$ApplicationSettings:Domain.Backend",
    "Audience": "$ApplicationSettings:Domain.Frontend",
    "Expiration": {
      "AccessToken": "15m",
      "RefreshToken": "7d"
    }
  },
  "SecurityHeaders": {
    "StrictTransportSecurity": "max-age=31536000; includeSubDomains",
    "ContentSecurityPolicy": "",
    "XContentTypeOptions": "nosniff",
    "ReferrerPolicy": "strict-origin-when-cross-origin"
  },
  "Secrets": {
    "Database": {
      "Host": "",
      "Name": "",
      "User": "",
      "Password": ""
    }
  },
  "AllowedHosts": [
    "http://localhost:4200",
    "https://magictradebot.com",
    "*.magictradebot.com"
  ]
}

💡 빠른 팁

  • JwtSettings:SecretKeySecrets와 같은 민감한 키는 운영 환경에서는 환경 변수로 이동하십시오.
  • Domain.Backend가 배포된 API 기본 URL과 일치하는지 확인하세요.
  • 라이브 환경에서는 "Environment": "Production"을 사용하여 성능과 보안을 향상시키세요.

🤖 Golang 봇 구성 (config.yaml)


server:
  botName: "Bybit_Mainnet_Trading_Bot"
  licenseKey: "hRnWOLo91ESUiZ8SkN986w"
  isDemo: true
  api: "https://localhost:7225/"
  refreshRate: 5
  totalConcurrentTrades: 0
  maxLoss: 0
  maxProfit: 0
  exchangeId: 0
  templateId: 0
  strategy: 0
  strategyMaxCount: 55
  timeZone: "UTC"

debug: true

💡 빠른 팁

  • 테스트 중일 경우 isDemo: true로 설정하여 실거래를 방지하세요.
  • 각 봇 인스턴스에는 고유한 botName을 설정하여 로그 필터링을 용이하게 하세요.
  • licenseKeyapi 값이 관리 앱과 일치하는지 확인하세요.
  • strategyMaxCount는 마팅게일 같은 루프 기반 전략에서 과도한 거래를 제한합니다.

📎 Related Topics