Estrategia de dirección de la línea K dinámica


Fecha de creación: 2023-10-25 16:57:05 Última modificación: 2023-10-25 16:57:05
Copiar: 0 Número de Visitas: 643
1
Seguir
1617
Seguidores

Estrategia de dirección de la línea K dinámica

Descripción general

Esta estrategia determina la dirección de la línea K en el futuro mediante el análisis de los precios de cierre de las líneas K de N-raíz en el pasado, que son más altos / más bajos que los precios de apertura. De acuerdo con la situación de mayor vacío en la dirección de la línea K, se toman operaciones de sobre-o bajo-vacío.

Principio de estrategia

La lógica central de esta estrategia es la siguiente:

  1. Configura el parámetro NUM_CANDLES para determinar el número de líneas K que se necesitan analizar.

  2. Define la función candle_dir, que determina la dirección de una sola línea K. close>open es la dirección de varios puntos, close

  3. Define la función count_candles para calcular el número de líneas K de diferentes direcciones en el pasado en la raíz K de NUM_CANDLES.

  4. Calcula el número de cabezas, cabezas vacías y cabezas de vibración en las líneas K de la raíz NUM_CANDLES pasada, almacenadas en ups, dns, neu.

  5. Define el indicador indic, cuyo valor es igual a los valores de ups-dns más el valor positivo negativo de neu。

  6. El índice indica cuándo hacer más y cuándo menos.

Esta estrategia determina la probabilidad de una futura dirección de la línea K mediante la estadística de un determinado número de líneas K, para tomar decisiones comerciales. El parámetro NUM_CANDLES permite controlar la cantidad de líneas K estadísticas y ajustar la sensibilidad de la estrategia.

Análisis de las ventajas estratégicas

  1. Las ideas estratégicas son claras y fáciles de entender, interpretar y verificar.

  2. No es necesario calcular indicadores complejos, solo se requieren datos de línea K, lo que reduce el costo de cálculo.

  3. Se puede ajustar el número de líneas K estadísticas mediante parámetros para controlar la sensibilidad de la estrategia.

  4. Se puede usar en cualquier variedad y en cualquier ciclo, es muy útil.

  5. Fácil optimización de parámetros para encontrar la combinación óptima de parámetros.

Análisis de riesgos

  1. No se puede manejar la liquidación de mercados convulsivos, lo que puede ocasionar la apertura y liquidación frecuentes de las posiciones.

  2. Un ciclo estadístico incorrecto puede causar un retraso en la señal, por lo que es necesario configurar los parámetros de manera razonable.

  3. La falta de capacidad para manejar una reversión de la tendencia puede conllevar el riesgo de pérdidas adversas.

  4. Se debe considerar el impacto de los costos de las transacciones para evitar que las transacciones sean demasiado frecuentes.

  5. Se debe tener en cuenta la optimización de los parámetros para el problema de la sobreadaptación, y se debe verificar con más pruebas de retroalimentación del mercado.

Dirección de optimización

  1. Se puede considerar la adición de una lógica de stop loss para reducir el riesgo de pérdidas.

  2. Se puede combinar con indicadores de tendencia para evitar operaciones de reversión.

  3. Se pueden aumentar los ciclos estadísticos o utilizar ciclos bajos, optimizando los parámetros para mejorar la estabilidad de la estrategia.

  4. Se puede considerar la combinación de varias variedades para mejorar la estrategia de éxito.

  5. Los parámetros de optimización automática se pueden combinar con métodos de aprendizaje automático.

Resumir

Esta estrategia se basa en el análisis de la dirección de la línea K para determinar la dirección de la negociación, la idea es clara y fácil de entender, la sensibilidad de la estrategia se puede controlar a través de la configuración de parámetros. Las ventajas de la estrategia son la sencillez lógica, los requisitos de uso bajos y la amplia gama de aplicaciones, pero también existe un cierto riesgo que requiere una optimización adicional para mejorar la estabilidad de la estrategia. En general, esta estrategia proporciona una idea de negociación simple y práctica para la negociación cuantitativa.

Código Fuente de la Estrategia
/*backtest
start: 2023-09-24 00:00:00
end: 2023-10-24 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Refined CandleCounter Strategy by origo", overlay=true)

// how many candles to count
NUM_CANDLES = 7

// determine candle direction
candle_dir = close > open ? 1 : (round(close-open) == 0 ? 0 : -1)

// return # of candles with a given direction
count_candles(dir, max) =>
    count = 0
    for i = 0 to max
        if candle_dir[i] == dir
            count := count + 1
    count

ups = count_candles(1, NUM_CANDLES)
dns = count_candles(-1, NUM_CANDLES)
neu = count_candles(0, NUM_CANDLES)

indic = ups-dns


if indic > 0
    indic := indic+neu
else
    indic := indic-neu

plotarrow(neu, title="UP vs DN")

longCondition = (indic) > 0
shortCondition = (indic) <= 0

strategy.entry("buy", strategy.long, 1, when = longCondition and not shortCondition)
strategy.entry("sell", strategy.short, 1, when = shortCondition and not longCondition)