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:
- Empfindlichkeit – Wie leicht das Signal auslöst (Schwellenwerte)
- Bestätigung – Wie viele Bedingungen übereinstimmen müssen (Multi-Faktor-Anforderungen)
- 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