MagicTradeBot 5.2+ 포지션 사이징 엔진 – 완전 사용자 가이드

  • Home
  • Documentation
  • MagicTradeBot 5.2+ 포지션 사이징 엔진 – 완전 사용자 가이드

MagicTradeBot 5.2+는 완전히 새롭게 설계된 포지션 사이징 엔진을 도입하여, 자본 할당을 트레이딩 및 DCA 로직과 분리함으로써 명확성, 유연성, 리스크 관리를 크게 향상시켰습니다.

이번 업데이트는 모든 포지션 크기 계산을 다음 파일로 중앙 집중화합니다:

position_sizing.yaml

🚀 버전 5.2+에서 변경된 내용

✅ 1. 새로운 전용 설정 파일

모든 거래 금액 및 익스포저 로직이 다음으로 이동되었습니다:

position_sizing.yaml

이를 통해 다음을 보장합니다:

  • 더 깔끔한 아키텍처
  • DCA와 자본 로직 간 중복 제거
  • 더 정확한 시뮬레이션
  • 향후 고급 사이징 모델 지원 (Kelly, Risk-of-Ruin, 변동성 기반 등)

✅ 2. 기존 설정 대체

다음 설정들은 이제 사용 중단(deprecated)되었습니다:

기존 설정 상태
CalculateAmountDynamically ❌ 제거됨
TradeAmountPer ❌ 제거됨

이제 완전히 다음으로 대체되었습니다:

auto_calculate_initial_amount: true

✅ 3. initial_trade_amount 이동

기존에 trading.yaml에 있던 항목이 이제 다음으로 이동되었습니다:

position_sizing.yaml

이로써 모든 포지션 사이징 로직이 한 곳에 모이게 됩니다.


📂 새로운 설정 구조

# --------------------------------------------------------------------------
# 거래 금액 & 자본 할당
# --------------------------------------------------------------------------
initial_trade_amount: 10.0
# --------------------------------------------------------------------------
# 포지션 크기 계산
# --------------------------------------------------------------------------
auto_calculate_initial_amount: true
balance: 5000
total_percent_investment_per_trade: 2.0
# --------------------------------------------------------------------------
# 고급 사이징 기능
# --------------------------------------------------------------------------
mode: percent
kelly_fraction: 0.5
target_risk_of_ruin_percent: 1.0
max_drawdown_threshold: 40.0

⚙️ 포지션 사이징 작동 방식 (로직 흐름)

1️⃣ 고정 모드

만약:

auto_calculate_initial_amount: false

그러면 봇은:

  • initial_trade_amount를 사용
  • 익스포저 계산을 수행하지 않음
  • DCA 계산 생략
  • 퍼센트 로직 생략

✔ 고정 로트 트레이더에게 이상적
✔ 간단하고 예측 가능


2️⃣ 자동 계산 모드

만약:

auto_calculate_initial_amount: true

그러면:

  • 초기 금액이 잔고로부터 동적으로 계산됨
  • 총 익스포저(초기 + 모든 DCA + Grid DCA)가 다음에 의해 제한됨:
total_percent_investment_per_trade

3️⃣ 고급 모드

Kelly 기준

- 과거 승률과 평균 PnL per trade 사용
- kelly_fraction을 통해 Kelly의 일부만 적용 가능
- 변동성을 줄이면서 성장 잠재력 유지

파산 위험(Risk-of-Ruin)

- 계좌 파산 확률을 안전 수준으로 유지하는 최대 포지션 크기 계산
- target_risk_of_ruin_percent로 제어
- 치명적 손실 방지를 위한 max_drawdown_threshold 강제 적용
- 장기 리스크 관리에 이상적


🧮 익스포저 계산 규칙

케이스 A — DCA 비활성화 + Grid 비활성화

둘 다 비활성화 시 봇은 단순히 다음을 사용:

잔고의 10%

(기하학적 계산 미적용)


케이스 B — DCA 활성화

시스템이 계산:

  • 모든 DCA 주문에 대한 기하급수
  • 배수 기반 익스포저
  • 총 유닛 수

자본을 비례적으로 배분


케이스 C — Grid DCA 활성화

Grid 익스포저를 추가 유닛으로 포함:

grid_orders × order_percent

이 유닛들이 총 익스포저 계산에 포함됨


케이스 D — DCA + Grid 결합

두 익스포저 모델을 하나의 총 익스포저 상한으로 통합:

총 익스포저 ≤ total_percent_investment_per_trade % of balance

초기 금액은 다음에서 도출:

target_total_investment / total_units

💰 잔고 동작 방식

실시간(Live) 모드

만약:

balance: 0

봇은 실제 거래소 잔고를 사용합니다.


데모(Demo) 모드

만약:

balance: 5000

봇은 다음을 사용:

balance ± total_pnl

정확한 복리 시뮬레이션을 보장합니다.


🎯 total_percent_investment_per_trade 설명

이는 거래당 최대 총 자본 익스포저를 정의하며 다음을 포함합니다:

  • 초기 진입
  • 모든 DCA 주문
  • 모든 Grid DCA 주문

예시

특징
2.0 보수적
5.0 균형
10.0 공격적

🔥 예시 시나리오

잔고 = 5000
total_percent_investment_per_trade = 2%

허용되는 최대 익스포저:

5000 × 2% = 100 USDT

봇은 초기 주문 크기를 다음과 같이 계산합니다:

초기 + 모든 DCA + Grid 주문 = 100 USDT

이 한도를 절대 초과하지 않습니다.


🏗️ 이 아키텍처가 더 나은 이유

  • ✔ 책임 분리가 더 명확함
  • ✔ DCA 모듈 내 자본 로직 제거
  • ✔ 결정론적 리스크 제어
  • ✔ AI 최적화와 호환
  • ✔ 시뮬레이션이 실제 동작과 일치
  • ✔ Kelly / Risk-of-Ruin 대비 미래 지향적

⚠️ 마이그레이션 체크리스트 (5.1.x → 5.2+)

  1. 제거:
    • CalculateAmountDynamically
    • TradeAmountPer
  2. 이동:
    • initial_trade_amountposition_sizing.yaml
  3. 이동:
    • balance
    • auto_calculate_initial_amount
    • total_percent_investment_per_trade
    • mode
    • kelly_fraction
    • target_risk_of_ruin_percent
    • max_drawdown_threshold
  4. 확인:
    • DCA 설정은 dca.yaml에 그대로 유지
    • 트레이딩 실행 로직은 trading.yaml에 유지

📌 추천 설정 프로필

🛡 보수적

auto_calculate_initial_amount: true
total_percent_investment_per_trade: 2.0
mode: percent

⚖ 균형

auto_calculate_initial_amount: true
total_percent_investment_per_trade: 5.0
mode: percent

🚀 공격적

auto_calculate_initial_amount: true
total_percent_investment_per_trade: 10.0
mode: percent

🧠 고급 사용자向け

버전 5.2+는 다음의 기반을 마련합니다:

  • Kelly 기준 사이징
  • 파산 위험 타겟팅
  • 변동성 기반 사이징
  • 전략별 자본 버킷
  • AI 최적화 익스포저

모든 미래 모델은 position_sizing.yaml에 통합됩니다.


✅ 요약

MagicTradeBot 5.2+는 다음을 도입합니다:

  • 전용 포지션 사이징 엔진
  • 구형 동적 사이징 옵션 제거
  • 자본 제어 중앙화
  • 결정론적 총 익스포저 상한
  • 고급 모드: Kelly & Risk-of-Ruin
  • 자동 모드에서 머니 매니지먼트 모듈 자동 비활성화

이번 업그레이드는 리스크 관리, 명확성, 장기 확장성을 크게 향상시킵니다.

📎 Related Topics