Skip to content

설정 파일

MoneyMax의 모든 설정은 config/ 디렉토리의 YAML 파일과 .env 환경변수로 관리됩니다.

trading.yaml — 자동매매 설정

yaml
mode: paper              # paper | live
initial_balance: 10000   # USDT (paper 모드 초기 자본)

strategies:
  - name: crypto_momentum
    timeframe: "1h"       # 사용할 타임프레임
    interval_seconds: 3600 # 전략 실행 간격 (초)
  - name: crypto_scalp
    timeframe: "5m"
    interval_seconds: 300

symbols:                  # 트레이딩 대상 심볼
  - BTC/USDT
  - ETH/USDT
  - SOL/USDT
  - BNB/USDT

risk:
  max_position_pct: 0.05        # 포지션 최대 비중 (5%)
  max_portfolio_risk_pct: 0.20  # 포트폴리오 노출 한도 (20%)
  max_daily_trades: 10          # 일일 최대 거래
  min_confidence: 0.60          # 최소 시그널 신뢰도

monitoring:
  sl_tp_check_seconds: 30       # SL/TP 체크 간격
  status_display_seconds: 10    # 상태 표시 간격
  telegram_summary_seconds: 3600 # 정기 포트폴리오 요약 간격

telegram:
  enabled: false    # .env에 토큰 있으면 자동 활성화

discord:
  enabled: false

strategies.yaml — 전략 파라미터

yaml
crypto_scalp:
  enabled: true
  markets: [crypto]
  timeframes: ["5m", "15m"]
  parameters:
    rsi_oversold: 25
    rsi_overbought: 65
    bb_lower_trigger: 0.05
    bb_upper_trigger: 0.95
    macd_cross_confirm: true
    volume_spike_ratio: 1.0
    min_confidence: 0.65
  weights:
    rsi: 0.25
    bb: 0.25
    macd: 0.25
    volume: 0.15
    sentiment: 0.10

crypto_momentum:
  enabled: true
  markets: [crypto]
  timeframes: ["1h", "4h"]
  parameters:
    ema_fast: 12
    ema_slow: 26
    adx_threshold: 35
    breakout_lookback: 10
    breakout_std_mult: 2.0
    min_confidence: 0.85
  weights:
    ema_cross: 0.25
    adx: 0.30
    breakout: 0.30
    volume: 0.10
    sentiment: 0.05

stock_swing:
  enabled: true
  markets: [us_stock, kr_stock]
  timeframes: ["1d"]
  parameters:
    sma_fast: 10
    sma_slow: 50
    rsi_oversold: 25
    rsi_overbought: 60
    macd_cross_confirm: true
    min_confidence: 0.70
  weights:
    sma: 0.20
    rsi: 0.20
    macd: 0.20
    volume: 0.10
    sentiment: 0.30

stock_trend:
  enabled: true
  markets: [us_stock, kr_stock]
  timeframes: ["1d"]
  parameters:
    golden_cross_sma_fast: 30
    golden_cross_sma_slow: 150
    death_cross_confirm_days: 5
    news_sentiment_threshold: 0.2
    min_confidence: 0.70
  weights:
    cross: 0.50
    trend_strength: 0.20
    volume: 0.20
    sentiment: 0.10

watchlists.yaml — 감시 종목

yaml
crypto:
  binance:
    - BTC/USDT
    - ETH/USDT
    - SOL/USDT
    - BNB/USDT
  upbit:
    - KRW-BTC
    - KRW-ETH
    - KRW-SOL

us_stock:
  - SPY
  - QQQ
  - AAPL
  - NVDA
  - JPM

kr_stock:
  - 005930   # 삼성전자
  - 000660   # SK하이닉스
  - 068270   # 셀트리온
  - 005380   # 현대차
  - 035420   # NAVER

settings.yaml — 앱 설정

yaml
app:
  name: MoneyMax
  version: 0.1.0
  log_level: INFO
  timezone: Asia/Seoul

data:
  ring_buffer_size: 5000
  ohlcv_history_days: 90

analysis:
  technical:
    rsi_period: 14
    macd_fast: 12
    macd_slow: 26
    macd_signal: 9
    bb_period: 20
    bb_std: 2.0
    sma_periods: [20, 50, 200]
    ema_periods: [12, 26]
    adx_period: 14
    atr_period: 14

risk:
  max_position_pct: 0.05
  max_portfolio_risk_pct: 0.20
  default_stop_loss_pct: 0.03
  default_take_profit_pct: 0.06
  max_daily_trades: 10
  min_confidence: 0.60

rate_limits:
  binance:
    requests_per_second: 10
    burst: 20
  upbit:
    requests_per_second: 8
    burst: 15

.env — 환경변수 (API 키)

변수필수설명
BINANCE_API_KEYLive 모드Binance API Key
BINANCE_API_SECRETLive 모드Binance API Secret
TELEGRAM_BOT_TOKEN선택Telegram Bot Token
TELEGRAM_CHAT_ID선택Telegram Chat ID
DISCORD_BOT_TOKEN선택Discord Bot Token
DISCORD_GUILD_ID선택Discord Guild ID
UPBIT_ACCESS_KEY선택Upbit Access Key
UPBIT_SECRET_KEY선택Upbit Secret Key
KIS_APP_KEY선택한국투자증권 App Key
KIS_APP_SECRET선택한국투자증권 App Secret
KIS_ACCOUNT_NO선택계좌번호
NEWSAPI_KEY선택NewsAPI Key
REDDIT_CLIENT_ID선택Reddit Client ID
REDDIT_CLIENT_SECRET선택Reddit Client Secret
REDIS_URL선택Redis 연결 URL

MIT License