Descripción general
El sistema de Configuración de Precisión de MagicTradeBot te ofrece control total sobre la calidad frente a la cantidad de señales. Cada uno de los más de 15 tipos de señales tiene su propia sección dedicada en tradesettings.yaml, lo que te permite ajustar los parámetros desde configuraciones agresivas (alta frecuencia, más ruido) hasta conservadoras (baja frecuencia, alta confianza). Este nivel de control granular te permite escanear miles de símbolos y filtrar solo las mejores oportunidades que coinciden con tu perfil de riesgo.
El equilibrio entre calidad y cantidad
Espectro de rigurosidad de señales
AGRESIVO ←――――――――――――――――――――――――――――――――――→ CONSERVADOR (Alta cantidad) (Alta calidad) Más señales Menos señales Menor tasa de aciertos Mayor tasa de aciertos Mayor riesgo Menor riesgo Trading activo Trading selectivo
Principio clave: Umbrales más estrictos = menos señales pero de mayor probabilidad. Umbrales más amplios = más señales pero con más falsos positivos.
Filosofía de configuración
Cada parámetro de señal puede ajustarse según tres dimensiones:
- Sensibilidad – Qué tan fácilmente se activa la señal (valores de umbral)
- Confirmación – Cuántas condiciones deben alinearse (requisitos multifactoriales)
- Filtrado – Qué criterios adicionales deben cumplirse (volumen, volatilidad, etc.)
Estructura de configuración
Todas las configuraciones de señales están centralizadas en tradesettings.yaml:
yaml
signals:
rsi:
enabled: true
oversold_threshold: 30
overbought_threshold: 70
# ... más ajustes de RSI
macd:
enabled: true
fast_period: 12
slow_period: 26
# ... más ajustes de MACD
# ... configuraciones del resto de señales
Cada sección es configurable de forma independiente, lo que te permite combinar ajustes agresivos en algunas señales y ajustes conservadores en otras.
Opciones de configuración por tipo de señal
Configuración de señales RSI
Propósito: Controlar la sensibilidad de sobrecompra/sobreventa y la detección de divergencias
yaml
rsi:
enabled: true
period: 14
# Configuración de umbrales
oversold_threshold: 30
overbought_threshold: 70
# Filtros de calidad
require_volume_confirmation: true
min_volume_multiplier: 1.5
# Configuración de divergencias
enable_divergence_detection: true
divergence_lookback: 20
divergence_min_strength: 0.6
# Filtrado de señales
ignore_in_strong_trends: true
min_price_move_percent: 0.5
Guía de ajuste:
- Más señales: oversold=40, overbought=60, require_volume=false
- Mejores señales: oversold=20, overbought=80, require_volume=true, min_strength=0.8
Configuración de señales MACD
Propósito: Ajustar la sensibilidad de cruces y los umbrales del histograma
yaml
macd:
enabled: true
# Configuración de periodos
fast_period: 12
slow_period: 26
signal_period: 9
# Activadores de señal
trigger_on_crossover: true
trigger_on_histogram_flip: true
trigger_on_divergence: true
# Filtros de calidad
min_histogram_value: 0.0001
require_momentum_confirmation: true
min_bars_since_last_signal: 5
# Divergencias
divergence_lookback: 15
divergence_min_strength: 0.65
# Filtros de contexto
ignore_choppy_markets: true
choppiness_threshold: 61.8
Guía de ajuste:
- Más señales: fast=8, slow=17, min_histogram=0, ignore_choppy=false
- Mejores señales: fast=16, slow=35, min_histogram=0.0005, min_bars=10
Configuración de las Bandas de Bollinger
Propósito: Controlar la sensibilidad a la volatilidad y la estricta reversión a la media
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
Guía de ajuste:
- Más señales: std_dev=1.5, trigger_on_break=true, require_reversal=false
- Mejores señales: std_dev=2.5, min_band_width=3.0, require_volume=true
Configuración de señales ATR
Propósito: Definir los umbrales de expansión de volatilidad y criterios de ruptura
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
Guía de ajuste:
- Más señales: multiplier=1.2, min_expansion=10, min_bars=3
- Mejores señales: multiplier=2.0, min_expansion=30, min_bars=8, volume=2.0x
Configuración de señales de volumen
Propósito: Establecer umbrales para la detección de volumen inusual
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
Guía de ajuste:
- Más señales: multiplier=1.5, min_body=30, min_move=0.5
- Mejores señales: multiplier=3.0, min_body=60, climax=5.0, dollar_volume=500k
Configuración de Señales de Momentum / Velocidad
Propósito: Detectar la aceleración de la tasa de cambio
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
Guía de Ajuste:
- Más Señales: period=5, min_momentum=1.0, consecutive=2, require_trend=false
- Mejores Señales: period=20, min_momentum=3.0, consecutive=5, velocity=2.0
Configuración de Divergencia RSI
Propósito: Ajustar finamente la sensibilidad a la divergencia
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
Guía de Ajuste:
- Más Señales: lookback=10, pivot=2, angle=10, volume=false
- Mejores Señales: lookback=30, pivot=5, angle=25, rsi_diff=8
Configuración de VWAP y Bandas
Propósito: Configurar la lógica de desviación de bandas VWAP
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
Guía de Ajuste:
- Más Señales: trigger_level=1, min_distance=0.2, rejection=false
- Mejores Señales: trigger_level=3, min_distance=1.0, volume_percentile=80
Configuración de CVD (Delta de Volumen Acumulado)
Propósito: Detectar desequilibrios de presión
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
Guía de Ajuste:
- Más Señales: lookback=50, min_change=5, exhaustion=0.5
- Mejores Señales: lookback=200, min_change=20, strength=0.8, volume_divergence=true
Configuración de Alineación Multi-Timeframe
Propósito: Definir reglas de alineación en múltiples intervalos de gráficos
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
Guía de Ajuste:
- Más Señales: alignment=50, require_higher_tf_trend=false, check 2 TF
- Mejores Señales: alignment=100, require_all=true, check 4+ TF
Configuración de Detección de Régimen de Mercado
Propósito: Detectar condiciones de mercado en tendencia, rango, volátiles o tranquilas
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
Guía de Ajuste:
- Más Señales: lookback=20, trend_threshold=20, confirm=1
- Mejores Señales: lookback=100, trend_threshold=30, confirm=5
Configuración de Fuerza Relativa vs BTC
Propósito: Configurar métricas de comparación y umbrales de rendimiento superior
Configuración de Fuerza Relativa vs BTC
Propósito: Configurar métricas de comparación y umbrales de rendimiento superior
relative_strength:
enabled: true
# Cálculo de RS
lookback_period: 20 # Calcular RS durante 20 periodos
# Corto plazo = 10, Largo plazo = 50
comparison_symbol: "BTCUSDT" # Activo de comparación por defecto
# Umbrales de Fuerza
min_outperformance_percent: 5 # Debe superar ≥5%
# Agresivo = 2, Conservador = 10
min_consecutive_periods: 3 # Superar durante 3 barras consecutivas
# Filtros de Calidad
require_volume_confirmation: true
min_relative_volume: 1.2 # Volumen del símbolo > 1.2x volumen relativo de BTC
require_absolute_gain: true # Tanto el símbolo como BTC deben ser positivos (mercado alcista)
allow_absolute_loss_outperformance: false # No dar señal si ambos están en declive
# Detección de Divergencias
detect_rs_divergence: true # Precio debilitándose pero RS fortaleciéndose
divergence_lookback: 15
# Alineación de Tendencia
require_btc_trend_agreement: false # Permitir señales contrarias a BTC
btc_trend_threshold: 0.5 # Si se requiere, fuerza de tendencia de BTC necesaria
# Detección de Rupturas
detect_rs_breakout: true # RS supera máximos anteriores
rs_breakout_lookback: 50
rs_breakout_buffer: 0.95 # Debe superar 95% del máximo del periodo
Guía de Ajuste:
- Más Señales: min_outperformance=2, consecutive=2, require_absolute=false
- Señales Mejores: min_outperformance=10, consecutive=5, require_volume=true
Configuración de Desequilibrio de Flujo de Órdenes (OFI)
Propósito: Ajustar la sensibilidad para la detección de desequilibrio en el libro de órdenes
order_flow_imbalance:
enabled: true
# Cálculo de OFI
calculation_window: 5 # Medir desequilibrio en 5 ticks/barras
# Ultra-rápido = 3, Estándar = 5, Más lento = 10
# Umbrales de Desequilibrio
min_imbalance_ratio: 2.0 # Relación Compras/Ventas > 2.0 o < 0.5
# Agresivo = 1.5, Conservador = 3.0
min_imbalance_volume: 10000 # Volumen mínimo para señal OFI válida
# Filtros de Calidad
require_sustained_imbalance: true
min_sustained_periods: 3 # El desequilibrio debe persistir 3 ventanas de cálculo
require_price_confirmation: true
min_price_move_with_ofi: 0.1 # Precio debe moverse ≥0.1% en dirección del OFI
# Detección de Agotamiento
detect_ofi_exhaustion: true # Debilitamiento de OFI = reversión
exhaustion_ratio_threshold: 1.2 # Desequilibrio por debajo de 1.2
# Filtros de Contexto
ignore_low_liquidity: true
min_order_book_depth: 50000 # Requiere profundidad de $50k en mejores ofertas/demanda
ignore_spread_widening: true # Ignorar señales cuando el spread > normal
max_spread_multiplier: 2.0
# Filtros Basados en Tiempo
ignore_market_open_close: true # Ignorar primeros/últimos 5 mins de sesión
open_close_buffer_minutes: 5
Guía de Ajuste:
- Más Señales: window=3, ratio=1.5, sustained=2, price_move=0.05
- Señales Mejores: window=10, ratio=3.0, sustained=5, depth=100k
Configuración del Índice de Choppiness
Propósito: Definir umbrales para identificar mercados tendenciales vs laterales
choppiness_index:
enabled: true
# Cálculo de Choppiness
period: 14 # Estándar = 14, Más rápido = 7, Más lento = 21
# Umbrales de Régimen
choppy_threshold: 61.8 # Chop > 61.8 = mercado lateral
trending_threshold: 38.2 # Chop < 38.2 = fuerte tendencia
# Agresivo: 55/45, Conservador: 65/35
# Generación de Señales
signal_on_transition: true # Señal al cruzar umbrales
require_confirmation_bars: 2 # Esperar 2 barras tras el cruce
signal_direction_from: # Cómo determinar compra/venta
method: "PRICE_MOMENTUM" # Opciones: "PRICE_MOMENTUM", "BREAKOUT_DIRECTION", "CUSTOM"
lookback: 10
# Filtros de Calidad
min_time_in_chop: 10 # Debe estar lateral ≥10 barras antes de señal de ruptura
max_time_in_chop: 50 # No dar señal si lateral >50 barras (probable continuidad)
require_volume_expansion: true # Volumen debe aumentar en ruptura
min_volume_multiplier: 1.5
# Uso Integrado
use_as_filter_only: false # True = solo filtrar otras señales, no generar propias
filter_other_signals_in_chop: true # Desactivar ciertas señales si está lateral
signals_to_disable_in_chop:
- "BREAKOUT"
- "MOMENTUM"
- "TREND_FOLLOWING"
signals_to_enable_in_chop:
- "MEAN_REVERSION"
- "RANGE_TRADING"
Guía de Ajuste:
- Más Señales: thresholds=55/45, confirmation=1, min_time=5
- Señales Mejores: thresholds=65/35, confirmation=3, min_time=15, max_time=30
Configuración de Ichimoku Cloud
Propósito: Configurar componentes de Ichimoku y estricticidad de señales
ichimoku:
enabled: true
# Periodos de Ichimoku
tenkan_period: 9 # Línea de conversión (rápida)
kijun_period: 26 # Línea base (media)
senkou_b_period: 52 # Span B líder (lento)
displacement: 26 # Desplazamiento de nube hacia adelante
# Tradicional: 9/26/52, Agresivo: 7/22/44, Conservador: 12/30/60
# Requisitos de Señal
require_price_above_cloud: true # Para señales de compra
require_price_below_cloud: true # Para señales de venta
require_tk_cross: true # Cruce Tenkan/Kijun
require_positive_chikou: true # Chikou por encima del precio
require_future_cloud_agreement: true # Color futuro de la nube coincide con señal
# Niveles de Estricticidad
strictness: "moderate" # Opciones: "loose", "moderate", "strict", "extreme"
# Definiciones de Estricticidad:
# loose: se requiere 1 condición
# moderate: se requieren 3 condiciones
# strict: se requieren 4 condiciones
# extreme: se requieren las 5 condiciones
# Filtros de Calidad
min_cloud_thickness_percent: 0.5 # Nube ≥0.5% de grosor
ignore_thin_clouds: true
min_distance_from_cloud: 0.3 # Precio ≥0.3% del borde de la nube
require_volume_confirmation: true
min_volume_on_signal: 1.3
# Fuerza de Tendencia
measure_trend_strength: true
min_trend_strength: 0.6 # Todos los componentes deben alinearse ≥0.6
# Filtros de Contexto
ignore_conflicting_components: true # Ignorar si los componentes difieren
max_conflicting_components: 1 # Permitir 1 componente en conflicto
Guía de Ajuste:
- Más Señales: periods=7/22/44, strictness="loose", require_only_2_conditions
- Señales Mejores: periods=12/30/60, strictness="extreme", min_strength=0.8
Configuración de Señales Combinadas
Propósito: Configurar sistema de consenso ponderado de múltiples indicadores
combined_signals:
enabled: true
# Ponderación de Señales
weights:
rsi: 15
macd: 20
bollinger_bands: 15
atr: 10
volume: 25
momentum: 10
divergence: 20
vwap: 15
cvd: 20
# ... otras señales
# Requisitos de Consenso
min_total_weight: 65 # Requiere 65/100 puntos ponderados
# Agresivo = 45, Conservador = 80
min_signals_agreeing: 3 # Al menos 3 señales deben coincidir
# Agresivo = 2, Conservador = 5
max_conflicting_signals: 1 # Permitir máximo 1 señal opuesta
# Categorías de Señales
require_trend_signal: true # Debe tener ≥1 indicador de tendencia
require_momentum_signal: true # Debe tener ≥1 indicador de momentum
require_volume_signal: true # Debe tener ≥1 indicador de volumen
# Mejora de Calidad
bonus_for_diverggence: 15 # +15 si hay divergencia
bonus_for_mtf_alignment: 20 # +20 si multi-timeframe alineado
bonus_for_regime_match: 10 # +10 si el régimen coincide con tipo de señal
# Ajuste Dinámico de Pesos
adjust_weights_by_regime: true
regime_weight_modifiers:
trending:
macd: 1.5 # Aumentar peso de MACD en tendencias
momentum: 1.5
rsi: 0.7 # Disminuir peso de RSI en tendencias
ranging:
rsi: 1.5 # Aumentar peso de RSI en rangos
bollinger_bands: 1.5
macd: 0.6
# Puntaje de Confianza
output_confidence_score: true # Incluir confianza 0-100 en señal
min_confidence_for_action: 70 # Solo operar señales ≥70 de confianza
# Reglas de Tiempo
max_time_between_signals: 10 # Todas las señales deben ocurrir en 10 barras
signals_must_be_recent: true
Guía de Ajuste:
- Más Señales: min_weight=45, min_signals=2, max_conflicting=2
- Señales Mejores: min_weight=80, min_signals=5, max_conflicting=0, min_confidence=80
Configuración de Detección de Picos
Propósito: Definir umbrales para identificar movimientos extremos de precio
spike_detection:
enabled: true
# Umbrales Estadísticos
lookback_period: 100
std_dev_multiplier: 3.0
# Tipos de Picos
detect_pump_spikes: true
detect_crash_spikes: true
# Filtros de Calidad
min_spike_percent: 2.0
max_spike_percent: 50.0
require_volume_confirmation: true
min_volume_multiplier: 2.5
require_single_candle: false
max_candles_for_spike: 3
# Validación de Contexto
ignore_gap_spikes: true
ignore_low_liquidity: true
min_liquidity_threshold: 50000
# Lógica de Señal
signal_direction:
pump_action: "BUY"
crash_action: "SELL"
# Continuación vs Reversión
check_for_continuation: true
continuation_lookback: 5
min_continuation_percent: 50
# Detección de Agotamiento
detect_spike_exhaustion: true
exhaustion_volume_multiplier: 5.0
signal_reversal_on_exhaustion: true
Guía de Ajuste:
- Más Señales: std_dev=2.0, min_spike=1.0, volume=1.5x, max_candles=5
- Señales Mejores: std_dev=4.0, min_spike=3.0, volume=3.0x, single_candle=true
Configuración de Señales PUMP / CRASH
Propósito: Configurar detección de movimientos sostenidos de volatilidad con respaldo de volumen
pump_crash:
enabled: true
# Detección de Movimiento
min_percent_move: 3.0
max_bars_for_move: 5
# Requisitos de Volumen
require_volume_surge: true
min_volume_multiplier: 1.8
volume_must_increase: true
# Validación de Momentum
require_momentum_acceleration: true
min_acceleration_ratio: 1.2
allow_pullback_bars: 1
max_pullback_percent: 30
# Filtros de Calidad
require_directional_close: true
min_close_position: 0.75
ignore_wick_dominated: true
max_wick_to_body_ratio: 0.6
# Filtros de Contexto
ignore_during_news: true
ignore_market_open: true
open_buffer_minutes: 15
ignore_low_liquidity: true
min_dollar_volume: 250000
# Tipos de Señales
pump_action: "BUY"
crash_action: "SELL"
# Configuración de Continuación
wait_for_consolidation: false
consolidation_max_bars: 5
consolidation_max_range: 1.0
# Detección de Agotamiento
detect_climax: true
climax_volume_multiplier: 4.0
fade_climax_bars: true
Guía de Ajuste:
- Más Señales: min_move=1.5, max_bars=10, volume=1.3x, allow_pullback=2
- Señales Mejores: min_move=5.0, max_bars=3, volume=2.5x, acceleration=1.5
Resumen
El sistema de Configuración Precisa de MagicTradeBot proporciona
control sin precedentes sobre la calidad y cantidad de señales.
Ajustando los parámetros en tradesettings.yaml, puedes:
- Filtrar miles de símbolos hasta solo las configuraciones de mayor probabilidad
- Ajustar tu tolerancia al riesgo con controles de estricticidad detallados
- Adaptarte a las condiciones del mercado mediante ajustes dinámicos de umbrales
- Optimizar tu estilo de trading desde scalping hasta trading de posiciones
- Combinar señales inteligentemente usando algoritmos de consenso ponderado
- Maximizar tasas de acierto manteniendo frecuencia de trading adecuada
El sistema escala desde configuraciones predefinidas simples para principiantes hasta filtrado multidimensional totalmente personalizado para traders algorítmicos avanzados. Cada parámetro está documentado, puede ser backtesteado, y está diseñado para ayudarte a encontrar el equilibrio perfecto entre capturar oportunidades y evitar señales falsas.