Sistema de salida y promediado de señales para la zona de sobreventa de activos financieros basado en el indicador MFI

MFI RSI SL TP MA
Fecha de creación: 2024-12-05 16:40:47 Última modificación: 2024-12-05 16:40:47
Copiar: 2 Número de Visitas: 440
1
Seguir
1617
Seguidores

Sistema de salida y promediado de señales para la zona de sobreventa de activos financieros basado en el indicador MFI

Descripción general

La estrategia es un sistema de negociación automatizado basado en el indicador de flujo de fondos (MFI) para capturar oportunidades de reversión potenciales, principalmente mediante la identificación del rendimiento de los activos en las zonas de sobreventa. El núcleo de la estrategia es generar una señal de compra cuando el indicador de MFI retrocede desde las zonas de sobreventa (por debajo del valor predeterminado de 20), y gestionar el riesgo y los beneficios de la negociación a través de múltiples mecanismos, como la orden de límite, el stop loss y el cierre de ganancias.

Principio de estrategia

La estrategia se basa en los siguientes pasos clave:

  1. Monitorear continuamente los cambios en los valores del indicador de flujo de fondos (MFI), cuando el MFI desciende por debajo del umbral predeterminado de sobreventa (default 20) el sistema marca que entra en la zona de sobreventa.
  2. Cuando una MFI retorna de una zona de sobreventa y supera su umbral, el sistema establece una lista de precios límite de compra por debajo del precio actual, el precio específico es determinado por un porcentaje definido por el usuario.
  3. El sistema vigila la vigencia de la lista de precios límite y la cancelación automática de la orden si no se realiza una transacción dentro del período de observación predeterminado (los 5 cables K por defecto).
  4. Una vez que se compra una orden de compra, el sistema establece de inmediato un precio objetivo de stop loss y un precio objetivo de ganancia, calculado en función del porcentaje del precio de entrada, respectivamente.
  5. La operación se cerrará automáticamente cuando se alcance el objetivo de stop loss o ganancia.

Ventajas estratégicas

  1. Control de riesgos: Proporciona un claro riesgo-beneficio por cada operación con objetivos de pérdidas y ganancias predeterminados.
  2. El mecanismo de entrada es flexible: el uso de entradas de precio limitado permite obtener mejores precios de transacción y aumentar el espacio de ganancias en general.
  3. Alto grado de automatización: desde la generación de señales hasta la gestión de posiciones, reduciendo el impacto emocional de la intervención humana.
  4. Los parámetros son muy ajustables: los parámetros clave, como el ciclo MFI, el umbral de venta excesiva, la validez de los pedidos, etc., se pueden optimizar según las diferentes características del mercado.
  5. La lógica del sistema es clara: las reglas de la estrategia son claras, lo que facilita la detección y el monitoreo en disco.

Riesgo estratégico

  1. Riesgo de falsas señales: en un mercado muy volátil, las MFI pueden generar falsas señales de sobreventa. Se recomienda la verificación cruzada con otros indicadores técnicos.
  2. Riesgo de deslizamiento: el precio de la oferta limitada puede no ser el precio esperado debido a las rápidas fluctuaciones del mercado. El precio de la oferta limitada puede ser relajado o prolongado de manera adecuada.
  3. Riesgo de tendencia: En una fuerte tendencia a la baja, la entrada prematura puede suponer una gran pérdida. Se recomienda agregar un filtro de tendencia.
  4. Sensibilidad a parámetros: el rendimiento de la estrategia es sensible a la configuración de parámetros y necesita ser optimizado para diferentes entornos de mercado.

Dirección de optimización de la estrategia

  1. Aumentar el filtro de tendencias del mercado: se pueden introducir indicadores de tendencias como las medias móviles y abrir operaciones solo en tendencias al alza.
  2. Mecanismo de confirmación de señal optimizado: puede combinarse con otros indicadores técnicos como RSI, MACD, para mejorar la fiabilidad de la señal.
  3. Mecanismo de parada dinámica: se puede ajustar la distancia de parada dinámicamente según la volatilidad del mercado, aumentando la flexibilidad de la parada.
  4. Construcción por lotes de almacenes y almacenes: Se puede lograr una lista de precios límite de varios precios, lo que reduce el costo general de la posesión.
  5. Introducción de filtros de tiempo: Se puede abrir operaciones selectivamente de acuerdo con las características del mercado en diferentes períodos de tiempo.

Resumir

Se trata de una estrategia de automatización de operaciones diseñada de forma razonable y lógica. Gracias a la aplicación flexible de los indicadores de las MFI, combinada con un mecanismo de gestión de órdenes perfectamente desarrollado, es capaz de capturar eficazmente las oportunidades de rebote después de una venta excesiva del mercado. La estrategia es altamente configurable, lo que facilita un ajuste optimizado según los diferentes entornos del mercado.

Código Fuente de la Estrategia
/*backtest
start: 2024-11-04 00:00:00
end: 2024-12-04 00:00:00
period: 3h
basePeriod: 3h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © traderhub

//@version=5
strategy("MFI Strategy with Oversold Zone Exit and Averaging", overlay=true)

// Strategy parameters
mfiPeriod = input.int(title="MFI Period", defval=14) // Period for calculating MFI
mfiOS = input.float(title="MFI Oversold Level", defval=20.0) // Oversold level for MFI
longEntryPercentage = input.float(title="Long Entry Percentage (%)", minval=0.0, step=0.1, defval=0.1) // Percentage for the buy limit order
stopLossPercentage = input.float(title="Stop Loss Percentage (%)", minval=0.0, step=0.1, defval=1.0) // Percentage for the stop-loss
exitGainPercentage = input.float(title="Exit Gain Percentage (%)", minval=0.0, step=0.1, defval=1.0) // Percentage gain for the take-profit
cancelAfterBars = input.int(title="Cancel Order After # Bars", minval=1, defval=5) // Cancel order after a certain number of bars

// Calculate MFI
mfi = ta.mfi(close, mfiPeriod)  // MFI with specified period

// Variables for tracking state
var bool inOversoldZone = false  // Flag for being in the oversold zone
var float longEntryPrice = na  // Price for long entry
var int barsSinceEntryOrder = na  // Counter for bars after placing an order

// Define being in the oversold zone
if (mfi < mfiOS)
    inOversoldZone := true  // Entered oversold zone

// Condition for exiting the oversold zone and placing a limit order
if (inOversoldZone and mfi > mfiOS)
    inOversoldZone := false  // Leaving the oversold zone
    longEntryPrice := close * (1 - longEntryPercentage / 100)  // Calculate limit price for entry
    strategy.entry("Long Entry", strategy.long, limit=longEntryPrice)  // Place a limit order
    barsSinceEntryOrder := 0  // Reset counter for bars after placing the order

// Increase the bar counter if the order has not yet been filled
if (not na(barsSinceEntryOrder))
    barsSinceEntryOrder += 1

// Cancel order if it hasn’t been filled within the specified number of bars
if (not na(barsSinceEntryOrder) and barsSinceEntryOrder >= cancelAfterBars and strategy.position_size == 0)
    strategy.cancel("Long Entry")
    barsSinceEntryOrder := na  // Reset bar counter

// Set stop-loss and take-profit for filled positions
if (strategy.position_size > 0)
    stopLossPrice = longEntryPrice * (1 - stopLossPercentage / 100)  // Calculate stop-loss level
    takeProfitPrice = longEntryPrice * (1 + exitGainPercentage / 100)  // Calculate take-profit level
    strategy.exit("Exit Long", from_entry="Long Entry", limit=takeProfitPrice, stop=stopLossPrice)

// Visualize oversold and overbought zones
bgcolor(mfi < mfiOS ? color.new(color.green, 90) : na)  // Background in oversold zone
plot(mfi, title="MFI", color=color.blue)  // MFI plot
hline(mfiOS, "Oversold Level", color=color.red)  // Oversold level line