En el análisis técnico, Aroon es un indicador técnico muy único. La palabra
El indicador Aroon ayuda a los operadores a predecir la relación posicional relativa entre los movimientos de precios y las áreas de tendencia mediante el cálculo del número de líneas K entre los precios más altos y más bajos antes de la distancia actual de la línea K. Consiste en dos partes: AroonUp y AroonDown. Las dos líneas se mueven hacia arriba y hacia abajo entre 0 y 100. Aunque se denominan hacia arriba y hacia abajo, a diferencia del indicador BOLL, no es
El indicador de Aroon requiere que primero establezca un parámetro de período de tiempo, al igual que el parámetro de período promedio. En el software de trading tradicional, el número de ciclos es 14. Además, este parámetro de período no es fijo. También puede establecerlo en 10 o 50 y así sucesivamente.
La fórmula específica es la siguiente:
A partir de esta fórmula, podemos ver aproximadamente la idea del indicador de Aroon. Es decir: cuántos ciclos hay, y el precio está por debajo del reciente máximo / bajo, ayudando a predecir si la tendencia actual continuará y midiendo la fuerza de la tendencia actual. si clasificamos este indicador, es obvio que pertenece al tipo de seguimiento de tendencias. Pero a diferencia de otras métricas de seguimiento de tendencias, presta más atención al tiempo que al precio.
AroonUp y AroonDown reflejan el tiempo actual y el precio más alto o más bajo anterior. si el tiempo está cerca, el valor será mayor. si el tiempo está lejos, el valor será 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, el precio está subiendo, el precio puede subir; si AroonDown está por encima de AroonUp, el precio está en tendencia descendente, el precio puede caer.
Al mismo tiempo, también podemos establecer algunos valores fijos para encontrar con precisión la oportunidad comercial. Sabemos que el indicador Aroon ha estado subiendo y bajando entre 0 y 100. Así que cuando el mercado está en aumento, es decir, cuando AroonUp está por encima de AroonDown, cuando AroonUp es mayor que 50, la tendencia al alza del mercado ya se ha formado, y el precio puede continuar en el futuro. cuando AroonUp está por debajo de 50, el impulso para los aumentos de precios está disminuyendo, y los precios pueden fluctuar y caer en el futuro.
Por el contrario, cuando el mercado está en una tendencia a la baja, es decir, cuando AroonDown está por encima de AroonUp, cuando AroonDown es mayor que 50, la tendencia a la baja del mercado ya se ha formado, y el precio puede continuar cayendo en el futuro; cuando AroonDown desgasta 50, la fuerza impulsora para la caída de los precios se debilita. Los precios futuros pueden fluctuar y aumentar.
Después de aclarar la lógica de negociación, podemos implementarla con código. En este artículo, continuamos usando el lenguaje JavaScript, y la variedad de negociación sigue siendo futuros de productos básicos. el lector con fuertes habilidades de programación también puede traducirlo a Python, o criptomoneda.
Siguiendo estos pasos:fmz.com> Iniciar sesión > Panel > Biblioteca de estrategias > Nueva estrategia, comience a escribir la estrategia, preste atención a los comentarios en el código de abajo.
Paso 1: Utilización del marco de la CTA
Tenga en cuenta que Asegúrese de hacer clic en lo siguiente: Commodity Futures Trading Library. si lo ha adaptado a la criptomoneda, haga clic en: Digital currency spot trading library.
function main() {
// ZC000/ZC888 refers to using the index as the source of the market but the transaction is mapped to the main contract
$.CTA("ZC000/ZC888", function(st) {
})
}
Paso 2: Obtener los datos
function main() {
$.CTA("ZC000/ZC888", function(st) {
var r = st.records; // get the K line array
var mp = st.position.amount; // Get the number of positions
})
}
Paso 3: Calcular el indicador de Aroon
function main() {
$.CTA("ZC000/ZC888", function(st) {
var r = st.records; // get the K line array
var mp = st.position.amount; // Get the number of positions
if (r.length < 21) { // Determine if the K line data is sufficient
Return;
}
var aroon = talib.AROON(r, 20); // Aroon indicator
var aroonUp = aroon[1][aroon[1].length - 2]; // Aroon indicator goes online with the second root data
var aroonDown = aroon[0][aroon[0].length - 2]; // Aroon's indicator goes down the second root of the data
})
}
Paso 4: Calcular las condiciones de negociación y realizar órdenes
function main() {
$.CTA("ZC000/ZC888", function(st) {
var r = st.records; // get the K line array
var mp = st.position.amount; // Get the number of positions
if (r.length < 21) { // Determine if the K line data is sufficient
Return;
}
var aroon = talib.AROON(r, 20); // Aroon indicator
var aroonUp = aroon[1][aroon[1].length - 2]; // Aroon indicator goes online with the second root data
var aroonDown = aroon[0][aroon[0].length - 2]; // AAroon's indicator goes down the second root of the data
if (mp == 0 && aroonUp > aroonDown && aroonUp > 50) {
Return 1; // long position open
}
if (mp == 0 && aroonDown > aroonUp && aroonDown > 50) {
Return -1; // short position open
}
if (mp > 0 && (aroonUp < aroonDown || aroonUp < 50)) {
Return -1; // multi-head platform
}
if (mp < 0 && (aroonDown < aroonUp || aroonDown < 50)) {
Return 1; // short platform
}
})
}
// The above code is a complete strategy based on the JavaScript language.
// --------------------Dividing line--------------------
// In order to take care of the reach of the party, this strategy is also translated into My language. At the same time, this can also be used for digital currency. Here is the complete policy code:
AROONUP := ((N - HHVBARS(H, N)) / N) * 100; // Aroon indicator goes online
AROONDOWN := ((N - LLVBARS(L, N)) / N) * 100; // Aroon indicator goes offline
AROONUP > AROONDOWN && AROONUP > BKV, BK; // Long position open
AROONDOWN > AROONUP && AROONDOWN > SKV, SK; // short position
AROONUP < AROONDOWN || AROONUP < SPV, SP; // Multi-head platform
AROONDOWN < AROONUP || AROONDOWN < BPV, BP; // Short platform
AUTOFILTER;
Con el fin de acercarse al entorno de negociación real, utilizamos los 2 pips de deslizamiento y 2 veces de la tarifa de transacción para probar la presión durante el backtest.
Entorno de ensayo
Informe de resultados
Curva de los fondos
En el caso de los mercados con una tendencia de crecimiento o caída, el indicador Aroon puede seguir completamente el mercado. La curva de capital también mostró una tendencia general al alza y no hubo una retroceso significativo. Sin embargo, en el mercado volátil, especialmente en el mercado de choque continuo, hubo una retroceso parcial.
Ventajas: El indicador Aroon puede juzgar el estado del mercado de tendencia, tener en cuenta la tendencia del mercado y la capacidad de juzgar el giro de precios, y ayudar a los operadores a aumentar el uso de fondos.
Desventajas: El indicador Aroon es solo uno de los indicadores de seguimiento de tendencias, tiene las mismas deficiencias que el indicador de seguimiento de tendencias. solo puede juzgar el número de períodos del precio más alto o más bajo en un momento dado, pero a veces el precio más alto o más bajo será contingente en toda la tendencia del mercado, esta contingencia interferirá con el indicador Aroon en sí mismo, causando señales falsas.
Para el código fuente,
con la versión de JavaScript, haga clic en:https://www.fmz.com/strategy/154547con la versión en Mylanguage, haga clic en:https://www.fmz.com/strategy/155582
En esta estrategia, fijamos algunos parámetros, tales como: aroonUp o aroonDown es mayor o menor que 50, causando el retraso en la emisión de la estrategia. En muchos casos, el mercado subirá o caerá durante un período de tiempo antes de cerrar la posición. Aunque esto mejoró la tasa ganadora y redujo la tasa máxima de retroceso, también se perdió muchos beneficios, lo que también confirmó la verdad del homónimo de ganancia y pérdida.