MagicTradeBot 5.2+ Position Sizing Engine – Guida Utente Completa

  • Home
  • Documentation
  • MagicTradeBot 5.2+ Position Sizing Engine – Guida Utente Completa

MagicTradeBot 5.2+ introduce un Motore di Dimensionamento delle Posizioni completamente ridisegnato, separando l’allocazione del capitale dalla logica di trading e DCA per una maggiore chiarezza, flessibilità e controllo del rischio.

Questo aggiornamento centralizza tutti i calcoli della dimensione della posizione in:

position_sizing.yaml

🚀 Cosa è cambiato nella versione 5.2+

✅ 1. Nuovo file di configurazione dedicato

Tutta la logica relativa all’importo del trade e all’esposizione è stata spostata in:

position_sizing.yaml

Questo garantisce:

  • Architettura più pulita
  • Nessuna sovrapposizione tra logica DCA e logica del capitale
  • Maggiore accuratezza delle simulazioni
  • Supporto futuro per modelli di dimensionamento avanzati (Kelly, rischio di rovina, basato sulla volatilità, ecc.)

✅ 2. Vecchie impostazioni sostituite

Le seguenti impostazioni sono ora deprecate:

Vecchia impostazione Stato
CalculateAmountDynamically ❌ Rimossa
TradeAmountPer ❌ Rimossa

Sono state completamente sostituite da:

auto_calculate_initial_amount: true

✅ 3. initial_trade_amount spostato

In precedenza si trovava in trading.yaml, ora è stato spostato in:

position_sizing.yaml

Questo assicura che tutta la logica di dimensionamento delle posizioni sia concentrata in un unico luogo.


📂 Nuova struttura di configurazione

# --------------------------------------------------------------------------
# Importo del trade & Allocazione del capitale
# --------------------------------------------------------------------------
initial_trade_amount: 10.0
# --------------------------------------------------------------------------
# Calcolo della dimensione della posizione
# --------------------------------------------------------------------------
auto_calculate_initial_amount: true
balance: 5000
total_percent_investment_per_trade: 2.0
# --------------------------------------------------------------------------
# Funzionalità avanzate di dimensionamento
# --------------------------------------------------------------------------
mode: percent
kelly_fraction: 0.5
target_risk_of_ruin_percent: 1.0
max_drawdown_threshold: 40.0

⚙️ Come funziona il dimensionamento delle posizioni (Flusso logico)

1️⃣ Modalità Fissa

Se:

auto_calculate_initial_amount: false

Allora il bot:

  • Utilizza initial_trade_amount
  • Non esegue calcoli di esposizione
  • Salta i calcoli DCA
  • Salta la logica percentuale

✔ Ideale per trader con lotti fissi
✔ Semplice e prevedibile


2️⃣ Modalità Calcolo Automatico

Se:

auto_calculate_initial_amount: true

Allora:

  • L’importo iniziale viene calcolato dinamicamente dal saldo
  • L’esposizione totale (Iniziale + Tutti i DCA + Grid DCA) è limitata da:
total_percent_investment_per_trade

3️⃣ Modalità Avanzate

Criterio di Kelly

- Utilizza il tasso di vincita storico e il PnL medio per trade
- È possibile applicare una frazione di Kelly tramite kelly_fraction
- Riduce la volatilità mantenendo il potenziale di crescita

Rischio di Rovina

- Calcola la dimensione massima della posizione per mantenere una probabilità di rovina del conto accettabile
- Controllato tramite target_risk_of_ruin_percent
- Impone max_drawdown_threshold per prevenire perdite catastrofiche
- Ideale per la gestione del rischio a lungo termine


🧮 Regole di calcolo dell’esposizione

Caso A — DCA disabilitato + Grid disabilitato

Se entrambi sono disabilitati, il bot utilizza semplicemente:

10% del saldo

(Nessun calcolo geometrico applicato.)


Caso B — DCA abilitato

Il sistema calcola:

  • Serie geometrica per tutti gli ordini DCA
  • Esposizione basata sul moltiplicatore
  • Unità totali

Il capitale viene quindi distribuito proporzionalmente.


Caso C — Grid DCA abilitato

L’esposizione Grid viene aggiunta come unità aggiuntive:

grid_orders × order_percent

Queste unità sono incluse nel calcolo dell’esposizione totale.


Caso D — DCA + Grid combinati

Entrambi i modelli di esposizione vengono uniti in un unico limite totale:

Esposizione Totale ≤ total_percent_investment_per_trade % del saldo

L’importo iniziale deriva da:

target_total_investment / total_units

💰 Comportamento del saldo

Modalità Live

Se:

balance: 0

Il bot utilizza il saldo reale dell’exchange.


Modalità Demo

Se:

balance: 5000

Il bot utilizza:

balance ± total_pnl

Questo garantisce una simulazione accurata del compounding.


🎯 Spiegazione di total_percent_investment_per_trade

Definisce la massima esposizione di capitale per trade, includendo:

  • Entrata iniziale
  • Tutti gli ordini DCA
  • Tutti gli ordini Grid DCA

Esempi

Valore Comportamento
2.0 Conservativo
5.0 Bilanciato
10.0 Aggressivo

🔥 Scenario di esempio

Saldo = 5000
total_percent_investment_per_trade = 2%

Esposizione massima consentita:

5000 × 2% = 100 USDT

Il bot calcolerà la dimensione dell’ordine iniziale in modo tale che:

Iniziale + Tutti i DCA + Ordini Grid = 100 USDT

Senza mai superare questo limite.


🏗️ Perché questa architettura è migliore

  • ✔ Separazione più chiara delle responsabilità
  • ✔ Nessuna logica di capitale nel modulo DCA
  • ✔ Controllo del rischio deterministico
  • ✔ Compatibile con ottimizzazione AI
  • ✔ Simulazione identica al comportamento live
  • ✔ Pronta per il futuro con Kelly / Rischio di Rovina

⚠️ Checklist di migrazione (da 5.1.x)

  1. Rimuovere:
    • CalculateAmountDynamically
    • TradeAmountPer
  2. Spostare:
    • initial_trade_amountposition_sizing.yaml
  3. Spostare:
    • balance
    • auto_calculate_initial_amount
    • total_percent_investment_per_trade
    • mode
    • kelly_fraction
    • target_risk_of_ruin_percent
    • max_drawdown_threshold
  4. Verificare:
    • Le impostazioni DCA rimangono in dca.yaml
    • L’esecuzione dei trade rimane in trading.yaml

📌 Profili di configurazione consigliati

🛡 Conservativo

auto_calculate_initial_amount: true
total_percent_investment_per_trade: 2.0
mode: percent

⚖ Bilanciato

auto_calculate_initial_amount: true
total_percent_investment_per_trade: 5.0
mode: percent

🚀 Aggressivo

auto_calculate_initial_amount: true
total_percent_investment_per_trade: 10.0
mode: percent

🧠 Per utenti avanzati

La versione 5.2+ pone le basi per:

  • Dimensionamento con Criterio di Kelly
  • Target di Rischio di Rovina
  • Dimensionamento basato sulla volatilità
  • Bucket di capitale a livello di strategia
  • Esposizione ottimizzata tramite IA

Tutti i modelli futuri saranno integrati in position_sizing.yaml.


✅ Riassunto

MagicTradeBot 5.2+ introduce:

  • Un Motore di Dimensionamento delle Posizioni dedicato
  • Rimozione delle vecchie opzioni di dimensionamento dinamico
  • Controllo centralizzato del capitale
  • Limite deterministico sull’esposizione totale
  • Modalità avanzate: Kelly & Rischio di Rovina
  • Disattivazione automatica del modulo di Money Management in modalità auto

Questo aggiornamento migliora significativamente il controllo del rischio, la chiarezza e la scalabilità a lungo termine.

📎 Related Topics