Sistema de Entrada Manual de Operaciones – Guía del Usuario

Resumen

El sistema de Entrada Manual de Operaciones permite inyectar manualmente oportunidades de trading que el bot monitoreará y ejecutará automáticamente, sin esperar a la generación normal de señales. Es ideal cuando detectas oportunidades durante una revisión manual del mercado y no quieres que el bot las pase por alto.

Cómo funciona

🔄 Recarga en caliente automática

  • Añade entradas al archivo settings/manual_trade_symbols.yaml mientras el bot está en ejecución
  • Los cambios se detectan automáticamente en menos de 30 segundos (próximo ciclo de procesamiento)
  • ¡No requiere reinicio!

🎯 Flujo de ejecución de operaciones

  1. Tú añades una entrada de operación al archivo YAML
  2. El bot detecta la nueva entrada en el siguiente ciclo (≤ 30 segundos)
  3. El bot valida:
    • El símbolo existe en la lista de trading del bot
    • No hay órdenes en curso para ese símbolo
    • Se cumplen las condiciones de precio (si hay umbral configurado)
  4. El bot ejecuta la operación automáticamente
  5. La entrada se elimina del archivo YAML tras ejecución exitosa (evita duplicados)

Ubicación del archivo de configuración

settings/manual_trade_symbols.yaml

Referencia de campos

Symbol (Requerido)

  • Par de trading en el formato específico del exchange
  • Ejemplos: BTCUSDT, ETHUSDT, 1000PEPEUSDT
  • Debe coincidir exactamente con como aparece en la lista de símbolos del bot

Price (Requerido)

  • 0 = El bot obtiene y usa el precio de mercado actual (recomendado)
  • > 0 = Usa este precio específico como referencia de entrada
  • Cuando se establece en 0, el bot:
    • Obtiene el precio de mercado actual
    • Actualiza este campo en el YAML con el precio obtenido
    • Usa este precio para cálculos de umbral en ciclos posteriores

Direction (Requerido)

  • Long = Posición larga / compra
  • Short = Posición corta / venta

Amount (Requerido)

  • 0 = Usa el dimensionamiento de posición por defecto del bot
  • > 0 = Sobrescribe con una cantidad específica (en la moneda cotizada)
  • Ejemplos:
    • 1000.0 = Tamaño de posición $1000
    • 2500.5 = Tamaño de posición $2500.50

ExecuteThresholdPerfect (Requerido)

  • 0 = Ejecuta inmediatamente (sin requerir movimiento de precio)
  • > 0 = Espera a que el precio se mueva este porcentaje antes de ejecutar
  • Para posiciones LONG: espera que el precio **baje** este %
  • Para posiciones SHORT: espera que el precio **suba** este %

Timestamp (Opcional)

  • Usa null o simplemente omite el campo
  • El bot lo establece automáticamente al procesar la entrada
  • Puede usarse en el futuro para validación de vencimiento

Ejemplos de uso

Ejemplo 1: Entrada inmediata (Aprovecha la oportunidad AHORA)

Trades:
 - Symbol: 'BTCUSDT'
 Price: 0 # Usa precio actual
 Direction: Long # Ir en largo
 Amount: 0 # Usa tamaño por defecto
 ExecuteThresholdPerfect: 0 # Ejecutar inmediatamente
 Timestamp: null

Caso de uso: Ves que BTC está rompiendo al alza y quieres entrar ahora mismo.


Ejemplo 2: Comprar el dip (Estrategia de retroceso del 5%)

Trades:
 - Symbol: 'ETHUSDT'
 Price: 0 # El bot obtendrá el precio actual (ej. $3000)
 Direction: Long
 Amount: 1000 # Posición de $1000
 ExecuteThresholdPerfect: 5 # Espera caída del 5% (ejecución ~$2850)
 Timestamp: null

Caso de uso: ETH se ve fuerte pero un poco sobreextendido. Quieres comprar si retrocede un 5%.


Ejemplo 3: Compra agresiva en dip (Retroceso del 10%)

Trades:
 - Symbol: '1000PEPEUSDT'
 Price: 0
 Direction: Long
 Amount: 2000 # Posición de $2000
 ExecuteThresholdPerfect: 10 # Espera caída del 10%
 Timestamp: null

Caso de uso: PEPE está subiendo con fuerza. Quieres acumular si hay un retroceso significativo.


Ejemplo 4: Shortear el pump (Esperar subida del 3%)

Trades:
 - Symbol: 'SOLUSDT'
 Price: 0 # El bot obtendrá el precio actual (ej. $100)
 Direction: Short # Posición corta
 Amount: 1500
 ExecuteThresholdPerfect: 3 # Ejecutar cuando suba 3% (~$103)
 Timestamp: null

Caso de uso: SOL parece sobreextendido. Quieres entrar en corto si sube otro 3%.


Ejemplo 5: Entradas múltiples en diferentes niveles

Trades:
  # Entrada inmediata
 - Symbol: 'BTCUSDT'
 Price: 0
 Direction: Long
 Amount: 500
 ExecuteThresholdPerfect: 0 # Entrar ahora
 Timestamp: null
  # Añadir más en retroceso del 5%
 - Symbol: 'BTCUSDT'
 Price: 0
 Direction: Long
 Amount: 1000
 ExecuteThresholdPerfect: 5 # Añadir a la posición en retroceso del 5%
 Timestamp: null
  # Añadir aún más en retroceso del 10%
 - Symbol: 'BTCUSDT'
 Price: 0
 Direction: Long
 Amount: 1500
 ExecuteThresholdPerfect: 10 # Acumulación fuerte en retroceso del 10%
 Timestamp: null

Caso de uso: Dollar-cost averaging (DCA) en BTC en varios niveles de precio.


Notas importantes

LO QUE SÍ DEBES HACER

  • ✅ Mantener el archivo YAML válido (indentación correcta, sin errores de sintaxis)
  • ✅ Usar null en Timestamp (no None)
  • ✅ Usar Long o Short en Direction (no 0 ni 1)
  • ✅ Verificar que los nombres de símbolos coincidan exactamente con el formato del exchange
  • ✅ Esperar al menos 30 segundos tras añadir para que el bot los detecte

LO QUE NO DEBES HACER

  • ❌ No usar None en Timestamp (usa null o omítelo)
  • ❌ No usar 0 ni 1 en Direction
  • ❌ No añadir entradas para símbolos que el bot no está monitoreando
  • ❌ No editar el archivo mientras el bot lo está guardando (riesgo raro de condición de carrera)

🔒 Características de seguridad

  • Sin ejecuciones duplicadas: las entradas se eliminan tras ejecutarse
  • Sin conflictos: no ejecuta si el símbolo ya tiene órdenes activas
  • Validación automática de precio: obtiene y actualiza precios cuando se establece en 0
  • Seguimiento de timestamp: el bot registra cuándo se creó cada entrada

📊 Monitoreo

Revisa los logs para ver cuándo se procesan las entradas:

  • logs/orders.YYYY-MM-DD.log — Todas las ejecuciones de operaciones (formato JSON)
  • logs/trade_summary.YYYY-MM-DD.log — Resúmenes de alto nivel
  • logs/debug.YYYY-MM-DD.log — Procesamiento detallado (si el modo debug está activado)

Ejemplo de flujo de trabajo

Paso 1: Estás revisando gráficos y ves que ETHUSDT rompe una resistencia

# Añadir a manual_trade_symbols.yaml
Trades:
 - Symbol: 'ETHUSDT'
 Price: 0
 Direction: Long
 Amount: 1000
 ExecuteThresholdPerfect: 0
 Timestamp: null

Paso 2: Guardas el archivo (el bot sigue funcionando)

Paso 3: En menos de 30 segundos el bot:

  • Carga el archivo
  • Obtiene el precio actual de ETH (ej. $3000)
  • Actualiza el campo Price a 3000 en el YAML
  • Establece Timestamp en la hora actual
  • Verifica que no haya órdenes activas en ETHUSDT
  • Ejecuta la operación
  • Elimina la entrada del YAML

Paso 4: Verifica los logs para confirmar

✅ Operación ejecutada con éxito para ETHUSDT
💾 Configuración de operaciones manuales actualizada y guardada (entradas ejecutadas eliminadas)

Consejos profesionales

💡 En mercados volátiles: usa umbrales más altos (10-20%) para capturar mejores entradas

💡 Para oportunidades inmediatas: usa ExecuteThresholdPerfect: 0 y Amount: 0 para entradas rápidas con tamaño estándar

💡 Para escalar posiciones: añade múltiples entradas con umbrales crecientes en el mismo símbolo

💡 Para gestión de riesgo: especifica cantidades concretas en lugar de 0 para controlar con precisión el tamaño de las posiciones

💡 Para varios símbolos: agrupa estrategias similares dentro del YAML para facilitar la gestión


Recuerda: este sistema está diseñado para complementar tu análisis manual, no para reemplazarlo. Úsalo con inteligencia para capturar oportunidades que el bot podría perder durante sus ciclos normales de generación de señales. 🚀

📎 Related Topics