Präzisionskonfigurationsanleitung für MagicTradeBot — Feineinstellung technischer Signale und Handelsgenauigkeit

Overview

Das Precision Configuration-System von MagicTradeBot gibt Ihnen vollständige Kontrolle über die Balance zwischen Signalqualität und -quantität. Jeder der über 15 Signaltypen verfügt über einen eigenen Konfigurationsbereich in tradesettings.yaml, sodass Sie Parameter von aggressiv (hohe Frequenz, mehr Rauschen) bis konservativ (niedrige Frequenz, hohe Zuverlässigkeit) feinabstimmen können. Diese präzise Steuerung ermöglicht es Ihnen, Tausende von Symbolen zu scannen und nur die besten Chancen herauszufiltern, die zu Ihrem Risikoprofil passen.

Das Qualitäts- vs. Quantitäts-Dilemma

Signalstrenge-Spektrum

AGGRESSIV ←――――――――――――――――――――――――――――――――――→ KONSERVATIV
(Hohe Menge)                                 (Hohe Qualität)

Mehr Signale                                  Weniger Signale
Niedrigere Trefferquote                        Höhere Trefferquote
Höheres Risiko                                 Niedrigeres Risiko
Aktives Trading                                Selektives Trading

Grundprinzip: Engere Schwellenwerte = weniger Signale, aber höhere Trefferwahrscheinlichkeit. Lockerere Schwellenwerte = mehr Signale, aber mehr Fehlalarme.

Konfigurationsphilosophie

Jeder Signalparameter kann entlang von drei Dimensionen angepasst werden:

  1. Empfindlichkeit – Wie leicht das Signal auslöst (Schwellenwerte)
  2. Bestätigung – Wie viele Bedingungen übereinstimmen müssen (Multi-Faktor-Anforderungen)
  3. Filter – Welche zusätzlichen Kriterien erfüllt sein müssen (Volumen, Volatilität usw.)

Konfigurationsstruktur

Alle Signaleinstellungen sind in tradesettings.yaml zentralisiert:

yaml
signals:
  rsi:
    enabled: true
    oversold_threshold: 30
    overbought_threshold: 70
    # ... weitere RSI-Einstellungen
  
  macd:
    enabled: true
    fast_period: 12
    slow_period: 26
    # ... weitere MACD-Einstellungen
  
  # ... alle weiteren Signalkonfigurationen

Jeder Abschnitt ist unabhängig konfigurierbar, sodass Sie aggressive Einstellungen für einige Signale und konservative für andere kombinieren können.


Signal-für-Signal Konfigurationsoptionen

RSI-Signalkonfiguration

Zweck: Steuerung der Empfindlichkeit für überkaufte/überverkaufte Bereiche und Divergenzerkennung

yaml
rsi:
  enabled: true
  period: 14

  # Schwellenwerte
  oversold_threshold: 30
  overbought_threshold: 70

  # Qualitätsfilter
  require_volume_confirmation: true
  min_volume_multiplier: 1.5

  # Divergenzeinstellungen
  enable_divergence_detection: true
  divergence_lookback: 20
  divergence_min_strength: 0.6

  # Signalfilter
  ignore_in_strong_trends: true
  min_price_move_percent: 0.5

Optimierungsleitfaden:

  • Mehr Signale: oversold=40, overbought=60, require_volume=false
  • Bessere Signale: oversold=20, overbought=80, require_volume=true, min_strength=0.8

MACD-Signalkonfiguration

Zweck: Feinabstimmung der Cross-Over-Empfindlichkeit und Histogramm-Schwellenwerte

yaml
macd:
  enabled: true

  # Periodenkonfiguration
  fast_period: 12
  slow_period: 26
  signal_period: 9

  # Signaltrigger
  trigger_on_crossover: true
  trigger_on_histogram_flip: true
  trigger_on_divergence: true

  # Qualitätsfilter
  min_histogram_value: 0.0001
  require_momentum_confirmation: true
  min_bars_since_last_signal: 5

  # Divergenz
  divergence_lookback: 15
  divergence_min_strength: 0.65

  # Kontextfilter
  ignore_choppy_markets: true
  choppiness_threshold: 61.8

Optimierungsleitfaden:

  • Mehr Signale: fast=8, slow=17, min_histogram=0, ignore_choppy=false
  • Bessere Signale: fast=16, slow=35, min_histogram=0.0005, min_bars=10

Bollinger-Bänder-Konfiguration

Zweck: Steuerung der Volatilitätsempfindlichkeit und der Strenge der Mittelwertumkehr

yaml
bollinger_bands:
  enabled: true

  period: 20
  std_dev: 2.0

  trigger_on_touch: true
  trigger_on_break: false
  require_reversal_candle: true

  min_band_width_percent: 2.0
  max_band_width_percent: 10.0
  require_volume_spike: true
  min_volume_ratio: 1.3

  enable_squeeze_alerts: true
  squeeze_threshold: 1.5
  squeeze_breakout_multiplier: 2.0

  require_price_return_to_middle: false

Feinabstimmungs-Leitfaden:

  • Mehr Signale: std_dev=1.5, trigger_on_break=true, require_reversal=false
  • Bessere Signale: std_dev=2.5, min_band_width=3.0, require_volume=true

ATR-Signale-Konfiguration

Zweck: Festlegung von Schwellenwerten für Volatilitätserweiterungen und Ausbruchskriterien

yaml
atr:
  enabled: true
  period: 14

  breakout_multiplier: 1.5
  min_atr_expansion_percent: 20
  lookback_for_expansion: 10

  require_volume_confirmation: true
  min_volume_multiplier: 1.8
  require_directional_close: true
  close_position_percent: 0.8

  min_bars_in_consolidation: 5
  max_prior_volatility: 2.5

  ignore_gaps: true
  ignore_news_hours: true

Feinabstimmungs-Leitfaden:

  • Mehr Signale: multiplier=1.2, min_expansion=10, min_bars=3
  • Bessere Signale: multiplier=2.0, min_expansion=30, min_bars=8, volume=2.0x

Volumen-Signale-Konfiguration

Zweck: Festlegung von Schwellenwerten zur Erkennung ungewöhnlicher Volumina

yaml
volume:
  enabled: true

  lookback_period: 20
  spike_multiplier: 2.0

  detect_buying_volume: true
  detect_selling_volume: true
  detect_climax_volume: true

  min_candle_body_percent: 40
  require_price_confirmation: true
  min_price_move_percent: 1.0

  climax_multiplier: 4.0
  climax_lookback: 50
  signal_reversal_after_climax: true

  use_volume_profile: true
  significant_level_volume_ratio: 1.5

  ignore_low_liquidity_symbols: true
  min_dollar_volume: 100000

Feinabstimmungs-Leitfaden:

  • Mehr Signale: multiplier=1.5, min_body=30, min_move=0.5
  • Bessere Signale: multiplier=3.0, min_body=60, climax=5.0, dollar_volume=500k

Momentum / Geschwindigkeit Signale Konfiguration

Zweck: Erkennen von Beschleunigungen der Änderungsrate

yaml
momentum_velocity:
  enabled: true

  momentum_period: 10
  velocity_lookback: 5

  min_momentum_percent: 2.0
  min_velocity_increase: 1.5

  require_sustained_momentum: true
  min_consecutive_periods: 3
  require_volume_increase: true

  enable_momentum_divergence: true
  divergence_lookback: 15
  divergence_sensitivity: 0.7

  ignore_choppy_conditions: true
  max_directional_changes: 2
  require_trend_alignment: true
  trend_timeframe_multiplier: 4

Feinabstimmungs-Anleitung:

  • Mehr Signale: period=5, min_momentum=1.0, consecutive=2, require_trend=false
  • Bessere Signale: period=20, min_momentum=3.0, consecutive=5, velocity=2.0

RSI Divergenz Konfiguration

Zweck: Feinabstimmung der Divergenzempfindlichkeit

yaml
rsi_divergence:
  enabled: true

  lookback_period: 20

  min_pivot_strength: 3
  min_pivots_required: 2

  min_divergence_angle: 15
  min_rsi_difference: 5
  min_price_difference_percent: 1.0

  require_volume_confirmation: true
  volume_must_decrease: true
  require_trend_context: true

  detect_hidden_divergence: true
  hidden_requires_stricter_rules: true

  ignore_in_consolidation: true
  min_atr_for_signal: 0.5

Feinabstimmungs-Anleitung:

  • Mehr Signale: lookback=10, pivot=2, angle=10, volume=false
  • Bessere Signale: lookback=30, pivot=5, angle=25, rsi_diff=8

VWAP & Bänder Konfiguration

Zweck: Konfiguration der VWAP-Abweichungsband-Logik

yaml
vwap:
  enabled: true

  reset_period: "daily"
  use_cumulative: true

  enable_bands: true
  band_1_std_dev: 1.0
  band_2_std_dev: 2.0
  band_3_std_dev: 3.0

  trigger_on_band_touch: true
  trigger_level: 2
  require_rejection_candle: true

  min_distance_from_vwap_percent: 0.5
  require_volume_at_level: true
  volume_percentile_threshold: 70

  require_return_toward_vwap: true
  min_reversion_percent: 30
  max_bars_for_reversion: 5

  ignore_trending_markets: false
  min_time_from_reset: 60

Feinabstimmungs-Anleitung:

  • Mehr Signale: trigger_level=1, min_distance=0.2, rejection=false
  • Bessere Signale: trigger_level=3, min_distance=1.0, volume_percentile=80

CVD (Kumulative Volumen-Delta) Konfiguration

Zweck: Erkennen von Druckungleichgewichten

yaml
cvd:
  enabled: true

  lookback_period: 100

  enable_divergence_signals: true
  divergence_lookback: 20
  min_divergence_strength: 0.7

  cvd_trend_period: 20
  min_cvd_trend_strength: 0.6

  trigger_on_divergence: true
  trigger_on_trend_change: true
  trigger_on_exhaustion: true

  min_cvd_change_percent: 10
  require_price_confirmation: true
  min_price_move_percent: 0.8

  exhaustion_lookback: 10
  exhaustion_threshold: 0.3
  require_volume_divergence: true

  ignore_low_volume_periods: true
  min_volume_for_valid_cvd: 1.5

Feinabstimmungs-Anleitung:

  • Mehr Signale: lookback=50, min_change=5, exhaustion=0.5
  • Bessere Signale: lookback=200, min_change=20, strength=0.8, volume_divergence=true

Multi-Timeframe Ausrichtungs-Konfiguration

Zweck: Definieren von Ausrichtungsregeln über mehrere Chart-Intervalle

yaml
multi_timeframe:
  enabled: true

  base_timeframe: "5m"
  higher_timeframes:
    - "15m"
    - "1h"
    - "4h"

  require_all_aligned: false
  min_alignment_percent: 75

  primary_signals:
    - "RSI"
    - "MACD"
    - "MOMENTUM"

  confirmation_signals:
    - "TREND_DIRECTION"
    - "REGIME"

  trend_indicator: "EMA"
  trend_periods:
    fast: 20
    slow: 50

  require_higher_tf_trend: true
  min_higher_tf_strength: 0.6
  ignore_conflicting_signals: true

  weight_by_timeframe: true
  timeframe_weights:
    "5m": 1.0
    "15m": 1.5
    "1h": 2.0
    "4h": 3.0

Feinabstimmungs-Anleitung:

  • Mehr Signale: alignment=50, require_higher_tf_trend=false, check 2 TF
  • Bessere Signale: alignment=100, require_all=true, check 4+ TF

Marktregime-Erkennungs-Konfiguration

Zweck: Erkennen von trendenden, seitwärts gerichteten, volatilen oder ruhigen Marktbedingungen

yaml
market_regime:
  enabled: true

  lookback_period: 50

  trend_indicator: "ADX"
  trend_threshold: 25

  range_indicator: "CHOPPINESS"
  range_threshold: 61.8

  volatility_measure: "ATR_PERCENTILE"
  high_volatility_threshold: 70
  low_volatility_threshold: 30

  signal_on_regime_change: true
  require_confirmation_bars: 3

  adjust_other_signals: true

  regime_adjustments:
    trending:
      rsi_overbought: 80
      rsi_oversold: 20
      follow_trend_only: true
    
    ranging:
      bb_std_dev: 1.5
      enable_mean_reversion: true
      disable_breakout_signals: true
    
    volatile:
      atr_multiplier: 2.5
      reduce_position_size: 0.5
    
    calm:
      atr_multiplier: 1.2
      increase_position_size: 1.2

Feinabstimmungs-Anleitung:

  • Mehr Signale: lookback=20, trend_threshold=20, confirm=1
  • Bessere Signale: lookback=100, trend_threshold=30, confirm=5

Relative Stärke vs. BTC Konfiguration

Zweck: Vergleichsmetriken und Outperformance-Schwellenwerte konfigurieren

Relative Stärke vs. BTC Konfiguration

Zweck: Vergleichsmetriken und Outperformance-Schwellenwerte konfigurieren

relative_strength:
  enabled: true
  
  # RS-Berechnung
  lookback_period: 20            # Berechne RS über 20 Perioden
                                 # Kurzfristig = 10, Langfristig = 50
  
  comparison_symbol: "BTCUSDT"   # Standard-Vergleichsasset
  
  # Stärke-Schwellenwerte
  min_outperformance_percent: 5  # Muss ≥5% outperformen
                                 # Aggressiv = 2, Konservativ = 10
  
  min_consecutive_periods: 3     # 3 aufeinanderfolgende Balken outperformen
  
  # Qualitätsfilter
  require_volume_confirmation: true
  min_relative_volume: 1.2       # Symbolvolumen > 1,2x BTC-relatives Volumen
  
  require_absolute_gain: true    # Sowohl Symbol als auch BTC müssen positiv sein (Bullenmarkt)
  allow_absolute_loss_outperformance: false # Kein Signal, wenn beide fallen
  
  # Divergenz-Erkennung
  detect_rs_divergence: true     # Preis schwächt sich, RS stärkt sich
  divergence_lookback: 15
  
  # Trend-Ausrichtung
  require_btc_trend_agreement: false # Signale gegen BTC erlaubt
  btc_trend_threshold: 0.5       # Falls erforderlich, BTC-Trendstärke nötig
  
  # Breakout-Erkennung
  detect_rs_breakout: true       # RS bricht über vorherige Hochs
  rs_breakout_lookback: 50
  rs_breakout_buffer: 0.95       # Muss 95% des Lookback-Hochs überschreiten

Feinabstimmungs-Anleitung:

  • Mehr Signale: min_outperformance=2, consecutive=2, require_absolute=false
  • Bessere Signale: min_outperformance=10, consecutive=5, require_volume=true

Order Flow Imbalance (OFI) Konfiguration

Zweck: Sensitivität für Orderbuch-Ungleichgewicht festlegen

order_flow_imbalance:
  enabled: true
  
  # OFI-Berechnung
  calculation_window: 5          # Ungleichgewicht über 5 Ticks/Bars messen
                                 # Sehr schnell = 3, Standard = 5, Langsam = 10
  
  # Ungleichgewicht-Schwellenwerte
  min_imbalance_ratio: 2.0       # Buy/Sell-Verhältnis > 2,0 oder < 0,5
                                 # Aggressiv = 1,5, Konservativ = 3,0
  
  min_imbalance_volume: 10000    # Mindestvolumen für gültiges OFI-Signal
  
  # Qualitätsfilter
  require_sustained_imbalance: true
  min_sustained_periods: 3       # Ungleichgewicht muss 3 Berechnungsfenster anhalten
  
  require_price_confirmation: true
  min_price_move_with_ofi: 0.1   # Preis muss ≥0,1% in OFI-Richtung bewegen
  
  # Erschöpfungs-Erkennung
  detect_ofi_exhaustion: true    # OFI schwächt sich = Umkehr
  exhaustion_ratio_threshold: 1.2 # Ungleichgewicht fällt unter 1,2
  
  # Kontextfilter
  ignore_low_liquidity: true
  min_order_book_depth: 50000    # Mindestens $50k Tiefe am besten Bid/Ask
  
  ignore_spread_widening: true   # Signale bei Spread > normal überspringen
  max_spread_multiplier: 2.0
  
  # Zeitbasierte Filter
  ignore_market_open_close: true # Erste/letzte 5 Minuten der Sitzung überspringen
  open_close_buffer_minutes: 5

Feinabstimmungs-Anleitung:

  • Mehr Signale: window=3, ratio=1.5, sustained=2, price_move=0.05
  • Bessere Signale: window=10, ratio=3.0, sustained=5, depth=100k

Choppiness Index Konfiguration

Zweck: Schwellenwerte für Trend vs. unruhigen Markt definieren

choppiness_index:
  enabled: true
  
  # Chop-Berechnung
  period: 14                     # Standard = 14, Schneller = 7, Langsamer = 21
  
  # Regime-Schwellenwerte
  choppy_threshold: 61.8         # Chop > 61,8 = unruhig / Range
  trending_threshold: 38.2       # Chop < 38,2 = starker Trend
                                 # Aggressiv: 55/45, Konservativ: 65/35
  
  # Signal-Generierung
  signal_on_transition: true     # Signal beim Überschreiten der Schwellen
  require_confirmation_bars: 2   # 2 Balken nach Überschreitung warten
  
  signal_direction_from:         # Bestimmung Kauf/Verkauf
    method: "PRICE_MOMENTUM"     # Optionen: "PRICE_MOMENTUM", "BREAKOUT_DIRECTION", "CUSTOM"
    lookback: 10
  
  # Qualitätsfilter
  min_time_in_chop: 10           # Mindestens 10 Balken unruhig vor Breakout-Signal
  max_time_in_chop: 50           # Kein Signal, wenn >50 Balken unruhig
  
  require_volume_expansion: true # Volumen muss beim Breakout steigen
  min_volume_multiplier: 1.5
  
  # Integrierte Nutzung
  use_as_filter_only: false      # True = nur andere Signale filtern, kein eigenes erzeugen
  
  filter_other_signals_in_chop: true # Bestimmte Signale deaktivieren, wenn unruhig
  signals_to_disable_in_chop:
    - "BREAKOUT"
    - "MOMENTUM"
    - "TREND_FOLLOWING"
  
  signals_to_enable_in_chop:
    - "MEAN_REVERSION"
    - "RANGE_TRADING"

Feinabstimmungs-Anleitung:

  • Mehr Signale: thresholds=55/45, confirmation=1, min_time=5
  • Bessere Signale: thresholds=65/35, confirmation=3, min_time=15, max_time=30

Ichimoku Cloud Konfiguration

Zweck: Ichimoku-Komponenten und Signalstrenge konfigurieren

ichimoku:
  enabled: true
  
  # Ichimoku Perioden
  tenkan_period: 9               # Conversion Line (schnell)
  kijun_period: 26               # Basislinie (mittel)
  senkou_b_period: 52            # Leading Span B (langsam)
  displacement: 26               # Wolkenverschiebung nach vorne
  
  # Signal-Anforderungen
  require_price_above_cloud: true      # Für Kaufsignale
  require_price_below_cloud: true      # Für Verkaufssignale
  require_tk_cross: true               # Tenkan/Kijun Cross
  require_positive_chikou: true        # Chikou über Preis
  require_future_cloud_agreement: true # Zukunftswolke stimmt mit Signal überein
  
  # Strenge-Level
  strictness: "moderate"         # Optionen: "loose", "moderate", "strict", "extreme"
  
  # Qualitätsfilter
  min_cloud_thickness_percent: 0.5 # Wolke ≥0,5% dick
  ignore_thin_clouds: true
  
  min_distance_from_cloud: 0.3   # Preis ≥0,3% von Wolkenkante
  
  require_volume_confirmation: true
  min_volume_on_signal: 1.3
  
  # Trendstärke
  measure_trend_strength: true
  min_trend_strength: 0.6        # Alle Komponenten müssen Stärke ≥0,6 haben
  
  # Kontextfilter
  ignore_conflicting_components: true # Überspringen, wenn Komponenten widersprechen
  max_conflicting_components: 1  # Max 1 widersprechende Komponente erlaubt

Feinabstimmungs-Anleitung:

  • Mehr Signale: periods=7/22/44, strictness="loose", require_only_2_conditions
  • Bessere Signale: periods=12/30/60, strictness="extreme", min_strength=0.8

📎 Related Topics