
Descripción general
La estrategia utiliza la señal de cruce de un indicador aleatorio (estocástico) para disparar una operación de compra y venta. Cuando la línea %K de un indicador aleatorio cruza la línea %D de abajo hacia arriba y el valor de %K es inferior a 20, se abre una posición; cuando la línea %K cruza la línea %D de arriba hacia abajo y el valor de %K es superior a 80, se abre una posición vacía.
Principio de estrategia
- Calcular el %K y el %D de los indicadores aleatorios de 14 ciclos y suavizarlos con una media móvil simple.
- Determine si las líneas %K y %D se cruzan:
- Cuando la línea %K atraviesa la línea %D de abajo hacia arriba y el valor de %K es inferior a 20, se dispara una señal de compra y se abre una posición para hacer más.
- Cuando la línea %K atraviesa la línea %D de arriba hacia abajo y el valor de %K es superior a 80, se dispara la señal de venta y se abre la posición a la baja.
- Configuración de paradas y paradas de pérdidas (en ticks) para administrar posiciones abiertas:
- Para las posiciones con múltiples titulares, configure el precio de parada como TP Ticks por encima del precio de apertura, y el precio de parada como SL Ticks por debajo del precio de apertura.
- Para posiciones en blanco, configure el precio de parada como TPs por debajo del precio de apertura y el precio de parada como SLps por encima del precio de apertura.
- Cuando el precio alcanza el precio de parada o de pérdida, se cancela la posición correspondiente.
- Establecer las condiciones lógicas de equilibrio:
- Cuando la línea %K atraviesa la línea %D de arriba hacia abajo y el valor de %K es menor que o igual a 80, se eliminan todas las posiciones de más cabezales.
- Cuando la línea %K atraviesa la línea %D de abajo hacia arriba y el valor de %K es mayor que o igual a 20, aplanar todas las posiciones de cabeza vacía.
Análisis de las ventajas
- La estrategia utiliza un indicador aleatorio como principal indicador de señal de negociación, que es ampliamente utilizado en el comercio cuantitativo y es capaz de capturar mejor el estado de sobrecompra y sobreventa del mercado.
- La estrategia establece al mismo tiempo un stop loss y un equilibrio lógico, lo que permite controlar el riesgo hasta cierto punto y evitar la expansión de las pérdidas.
- La lógica de las estrategias es clara, fácil de entender e implementar, adecuada para que los principiantes aprendan y usen.
Análisis de riesgos
- Los indicadores aleatorios pueden emitir más señales de error en mercados convulsos, lo que provoca una frecuencia de negociación excesiva y un aumento en los costos de negociación.
- La estrategia no se ajusta dinámicamente a las posiciones, por lo que los límites fijos de stop loss pueden no ser suficientes para controlar el riesgo en momentos de gran volatilidad en el mercado.
- Los parámetros de la estrategia (como el ciclo de indicadores aleatorios, la distancia de parada y pérdida, etc.) son fijos y no se optimizan para diferentes condiciones de mercado, lo que puede afectar la adaptabilidad de la estrategia.
Dirección de optimización
- Se puede considerar la introducción de otros indicadores técnicos o indicadores de sentimiento del mercado para su uso en combinación con indicadores aleatorios, para mejorar la fiabilidad de las señales de negociación y reducir las señales de error.
- Optimización de la gestión de posiciones, ajuste de la distancia de parada y pérdida en función de la dinámica de la volatilidad del mercado, o la adopción de métodos de gestión de fondos más avanzados, como la fórmula de Kelly, etc.
- Utilizando métodos de optimización como algoritmos genéticos y búsqueda de redes, se optimizan los parámetros de la estrategia para encontrar la combinación óptima de parámetros adaptados a las diferentes condiciones del mercado.
- Considerar la adición de condiciones de filtración, como el período de negociación, la volatilidad de la variedad de negociación, etc., para reducir la negociación en condiciones de mercado desfavorables.
Resumir
La estrategia de stop loss bidireccional basada en el cruce de indicadores aleatorios es una estrategia de negociación cuantitativa simple y fácil de entender, que activa las operaciones de compra y venta mediante la señal de cruce de indicadores aleatorios y establece paros y paradas de condiciones lógicas para administrar el riesgo. La ventaja de la estrategia reside en la claridad de la lógica y es adecuada para que los principiantes la aprendan y la utilicen; sin embargo, también existen algunos riesgos, como que los indicadores aleatorios pueden emitir más señales de error en mercados inestables y que los métodos de administración de posiciones fijas no pueden adaptarse a diferentes condiciones de mercado.
Código Fuente de la Estrategia
/*backtest
start: 2024-02-29 00:00:00
end: 2024-03-07 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("How to force strategies fire exit alerts not reversals", initial_capital = 1000, slippage=1, commission_type = strategy.commission.cash_per_contract, commission_value = 0.0001, overlay=true)
// disclaimer: this content is purely educational, especially please don't pay attention to backtest results on any timeframe/ticker
// Entries logic: based on Stochastic crossover
k = ta.sma(ta.stoch(close, high, low, 14), 3)
d = ta.sma(k, 3)
crossover = ta.crossover(k,d)
crossunder = ta.crossunder(k,d)
if (crossover and k < 20)
strategy.entry("Buy", strategy.long, alert_message="buy")
if (crossunder and k > 80)
strategy.entry("Sell", strategy.short, alert_message="sell")
// StopLoss / TakeProfit exits:
SL = input.int(600, title="StopLoss Distance from entry price (in Ticks)")
TP = input.int(1200, title="TakeProfit Distance from entry price (in Ticks)")
strategy.exit("xl", from_entry="Buy", loss=SL, profit=TP, alert_message="closebuy")
strategy.exit("xs", from_entry="Sell", loss=SL, profit=TP, alert_message="closesell")
// logical conditions exits:
if (crossunder and k <= 80)
strategy.close("Buy", alert_message="closebuy")
if (crossover and k >= 20)
strategy.close("Sell", alert_message="closesell")