avatar of 发明者量化-小小梦 发明者量化-小小梦
Seguir Mensajes Privados
4
Seguir
1271
Seguidores

Aplicación de los indicadores técnicos de Aroon en el trading cuantitativo

Creado el: 2019-06-29 14:42:04, Actualizado el: 2024-12-24 20:18:07
comments   1
hits   3794

[TOC]

Aplicación de los indicadores técnicos de Aroon en el trading cuantitativo

Introducción al indicador Aroon

En el análisis técnico, Aroon es un indicador técnico muy singular. La palabra “Aroon” proviene del sánscrito y significa “amanecer”. No es tan conocido como MA, MACD o KDJ. Fue introducido más tarde y no fue inventado hasta 1995 por Tushar Chande. El autor también inventó el oscilador de impulso Chande (CMO) y el índice de impulso intradía (IMI). Cuanto más gente conoce un indicador técnico y más gente lo utiliza, menor será su capacidad para generar dinero. El relativamente nuevo indicador Aroon es justo lo contrario. Desde esta perspectiva, es una buena opción.

Indicador Aroon en el gráfico

El indicador Aroon ayuda a los traders a predecir cambios en la posición relativa de los movimientos de precios y las áreas de tendencia calculando el número de velas entre la vela actual y los precios más altos y más bajos anteriores. Consta de dos partes, a saber, AroonUp y AroonDown. Estas dos líneas se mueven hacia arriba y hacia abajo entre 0 y 100. Aunque se denominan línea superior e inferior, no son lo mismo que la línea superior y la línea inferior. . A diferencia del indicador BOLL, no tiene una línea superior e inferior verdaderas. La siguiente figura es el indicador Aroon: Aplicación de los indicadores técnicos de Aroon en el trading cuantitativo

Método de cálculo del indicador Aroon

El indicador Aroon requiere que primero establezcas un parámetro de período de tiempo, al igual que estableces el parámetro de período de promedio móvil. En el software de mercado tradicional, este número de período es 14. Por supuesto, este parámetro de período no es fijo. También puedes establecerlo en 10. o 50, etc. espera. Para facilitar la comprensión, definamos este parámetro de período de tiempo como: N. Después de determinar N, podemos calcular AroonUp y AroonDown. La fórmula de cálculo específica es la siguiente:

  • AroonUp =[ (parámetro de período establecido - número de períodos después del precio más alto) / período calculado] * 100
  • AroonAbajo =[ (parámetro de período establecido - número de períodos después del precio más bajo) / período calculado] * 100

A partir de esta fórmula, podemos ver aproximadamente la idea del indicador Aroon. Es decir: cuántos ciclos ha estado el precio por debajo del máximo/mínimo reciente, lo que ayuda a predecir si la tendencia actual continuará y mide la fuerza de la tendencia actual. Si categorizamos este indicador, obviamente es del tipo seguimiento de tendencia. Pero a diferencia de otros indicadores de seguimiento de tendencias, pone más énfasis en el tiempo que en el precio.

Cómo utilizar el indicador Aroon

AroonUp y AroonDown reflejan la distancia entre el momento actual y el precio más alto o más bajo anterior. Si el momento es más cercano, el valor es mayor y si el momento es más lejano, el valor es menor. Y cuando las dos líneas se cruzan, indica que la dirección del precio puede cambiar. Si AroonUp está por encima de AroonDown, significa que el precio está en una tendencia alcista y que el precio puede subir aún más en el futuro; si AroonDown está por encima de AroonUp, significa que el precio está en una tendencia a la baja y que podría seguir subiendo en el futuro. Podría seguir bajando.

Al mismo tiempo, también podemos establecer varios valores fijos para determinar con precisión el momento de entrada. Sabemos que el indicador Aroon siempre está entre 0 y 100. Entonces, cuando el mercado está en una tendencia alcista, es decir, cuando AroonUp está por encima de AroonDown, cuando AroonUp es mayor que 50, significa que se ha formado la tendencia alcista del mercado. y el precio puede seguir subiendo en el futuro. Cuando AroonUp cruza por debajo de 50, significa que el impulso del aumento de precio se está debilitando y el precio puede fluctuar y caer en el futuro.

Por el contrario, cuando el mercado está en una tendencia bajista, es decir, cuando AroonDown está por encima de AroonUp, cuando AroonDown es mayor que 50, significa que se ha formado la tendencia bajista del mercado y el precio puede seguir cayendo en el futuro; Cuando AroonDown cae por debajo de 50, significa que el impulso de caída de precios se está debilitando. Los precios pueden fluctuar y subir en el futuro. Luego, de acuerdo con las dos teorías anteriores, podemos enumerar las condiciones de compra y venta de la siguiente manera:

  • Cuando AroonUp es mayor que AroonDown, y AroonUp es mayor que 50, se abre una posición larga;
  • Cuando AroonUp es menor que AroonDown, o AroonUp es menor que 50, se cierran las posiciones largas;
  • Cuando AroonDown es mayor que AroonUp, y AroonDown es mayor que 50, se abre una posición corta;
  • Cuando AroonDown es menor que AroonUp, o AroonDown es menor que 50, la posición corta se cierra;

Construyendo una estrategia comercial basada en el indicador Aroon

Después de aclarar la lógica de negociación, podemos implementarla con código. En este artículo, seguiremos utilizando el lenguaje JavaScript y el producto seguirá siendo futuros de materias primas. Los amigos con buenas habilidades prácticas también pueden traducir el código al lenguaje Python o a la moneda digital. Bien, sin más preámbulos, abra: fmz.com > Iniciar sesión > Centro de control > Biblioteca de políticas > Nueva política, comience a escribir la política y preste atención a los comentarios en el código a continuación.

Paso 1: Utilice un marco de CTA ¡Aviso! Asegúrese de hacer clic en lo siguiente:商品期货交易类库. Si cambia a moneda digital, haga clic en:数字货币现货交易类库

function main() {
    // ZC000/ZC888 指用指数做为行情源但交易映射到主力连续合约上
    $.CTA("ZC000/ZC888", function(st) {

    })
}

Paso 2: Obtener los datos

function main() {
    $.CTA("ZC000/ZC888", function(st) {
        var r = st.records;  // 获取K线数组
        var mp = st.position.amount;  // 获取持仓数量
    })
}

Paso 3: Calcular el indicador Aroon

function main() {
    $.CTA("ZC000/ZC888", function(st) {
        var r = st.records;  // 获取K线数组
        var mp = st.position.amount;  // 获取持仓数量
        if (r.length < 21) {  // 判断K线数据是否足够
            return;
        }
        var aroon = talib.AROON(r, 20);  // 阿隆指标
        var aroonUp = aroon[1][aroon[1].length - 2];  // 阿隆指标上线倒数第2根数据
        var aroonDown = aroon[0][aroon[0].length - 2];  // 阿隆指标下线倒数第2根数据
    })
}

Paso 4: Calcular las condiciones comerciales y realizar un pedido

function main() {
    $.CTA("ZC000/ZC888", function(st) {
        var r = st.records;  // 获取K线数组
        var mp = st.position.amount;  // 获取持仓数量
        if (r.length < 21) {  // 判断K线数据是否足够
            return;
        }
        var aroon = talib.AROON(r, 20);  // 阿隆指标
        var aroonUp = aroon[1][aroon[1].length - 2];  // 阿隆指标上线倒数第2根数据
        var aroonDown = aroon[0][aroon[0].length - 2];  // 阿隆指标下线倒数第2根数据
        if (mp == 0 && aroonUp > aroonDown && aroonUp > 50) {
            return 1;  // 多头开仓
        }
        if (mp == 0 && aroonDown > aroonUp && aroonDown > 50) {
            return -1;  // 空头开仓
        }
        if (mp > 0 && (aroonUp < aroonDown || aroonUp < 50)) {
            return -1;  // 多头平台
        }
        if (mp < 0 && (aroonDown < aroonUp || aroonDown < 50)) {
            return 1;  // 空头平台
        }
    })
}
// 以上代码就是基于JavaScript语言完整的策略。

// --------------------分割线--------------------

// 为了照顾伸手党,顺便也把这个策略翻译成My语言。同时该也可以用于数字货币,以下是完整的策略代码:
AROONUP := ((N - HHVBARS(H, N)) / N) * 100;  // 阿隆指标上线
AROONDOWN := ((N - LLVBARS(L, N)) / N) * 100;  // 阿隆指标下线
AROONUP > AROONDOWN && AROONUP > BKV, BK;  // 多头开仓
AROONDOWN > AROONUP && AROONDOWN > SKV, SK;  // 空头开仓
AROONUP < AROONDOWN || AROONUP < SPV, SP;  // 多头平台
AROONDOWN < AROONUP || AROONDOWN < BPV, BP;  // 空头平台
AUTOFILTER;

Backtesting de estrategia

Para acercarnos más al entorno de trading real, utilizamos 2 saltos para abrir y cerrar posiciones y el doble de la tarifa de gestión para las pruebas de estrés durante el backtesting. El entorno de prueba es el siguiente:

  • Tipo de mercado: Índice de carbón térmico
  • Variedades comerciales: carbón térmico principal
  • Hora: 1 de junio de 2015 ~ 28 de junio de 2019
  • Ciclo: Diario
  • Deslizamiento: 2 saltos para posiciones de apertura y cierre
  • Tarifa de manejo: 2 veces el cambio

Entorno de prueba Aplicación de los indicadores técnicos de Aroon en el trading cuantitativo Detalles de ingresos Aplicación de los indicadores técnicos de Aroon en el trading cuantitativo Curva de financiación Aplicación de los indicadores técnicos de Aroon en el trading cuantitativo De los resultados de las pruebas retrospectivas anteriores, podemos ver que la estrategia funciona bien cuando la tendencia del mercado es suave. Ya sea que esté subiendo o bajando, el indicador Aroon puede seguir completamente el mercado. La curva de capital también tiende a ser ascendente en términos generales, y no ha habido un retroceso significativo. Sin embargo, en el mercado volátil, especialmente el mercado volátil continuo, se produjeron retrocesos locales.

Ventajas y desventajas del indicador Aroon

  • Ventajas: El indicador Aroon puede determinar el estado de la tendencia, teniendo en cuenta la capacidad de descubrir tendencias del mercado y determinar cambios de precios, lo que ayuda a los operadores a mejorar la tasa de utilización de los fondos. Esta ventaja es especialmente importante en mercados volátiles.
  • Desventajas: El indicador Aroon es solo uno de los indicadores de seguimiento de tendencias y tiene las mismas desventajas que los indicadores de seguimiento de tendencias. Y solo determina el número de ciclos del precio más alto o más bajo en el tiempo especificado, pero a veces el precio más alto o más bajo será accidental en toda la tendencia del mercado. Esta contingencia interferirá con el propio indicador Aroon y provocará señales falsas.

Haga clic para copiar el código fuente de la estrategia

Resumir

En la estrategia, hemos fijado algunos parámetros, como: aroonUp o aroonDown es mayor o menor que 50, lo que provoca el retraso de la estrategia. En muchos casos, el mercado subirá o bajará durante un período de tiempo antes de abrir y cierre de posiciones. Si bien esto aumenta la tasa de ganancias y reduce la tasa máxima de caída, también pierde muchas ganancias, lo que también confirma el principio de que las ganancias y las pérdidas tienen la misma fuente. Los amigos que estén interesados ​​pueden estudiarlo en profundidad y realizar mejoras.