Estratégia quantitativa baseada no indicador Aroon

Autora:ChaoZhang, Data: 2023-09-19 15:47:21
Tags:

Resumo

Esta estratégia usa puramente o indicador Aroon para determinar a direção da tendência do mercado para gerar sinais simples de compra e venda.

Estratégia lógica

  1. Calcular os bares com o máximo máximo e o mínimo mínimo durante 7 períodos.

  2. Calcular a relação entre a barra mais alta e o total de barras como linha superior.

  3. Calcular a relação entre a barra inferior mais baixa e o total de barras como linha inferior.

  4. Gerar sinal de compra quando a linha superior for maior que a linha inferior.

  5. Gerar sinal de venda quando a linha inferior for maior que a linha superior.

  6. Controle as direcções de entrada através dos parâmetros da estratégia.

  7. Abertura e encerramento de ordens dentro de um prazo especificado.

Análise das vantagens

  1. Negociação baseada exclusivamente em indicadores baseada apenas no Aroon.

  2. Parâmetros de indicadores simples, fáceis de compreender e otimizar.

  3. Seleção flexível da direcção longa/curta para diferentes instrumentos.

  4. Prazo personalizável para backtest e negociação ao vivo.

  5. Sinais comerciais claros, fáceis de compreender e executar.

Análise de riscos

  1. Propenso a sinais falsos como um único indicador.

  2. Não pode avaliar com precisão a força das tendências ascendentes/descendentes.

  3. Tem algum atraso, incapaz de captar reversões a tempo.

  4. Não pode ajustar-se dinamicamente com base nas alterações do mercado.

  5. Possibilidade de riscos de retirada.

Orientações de otimização

  1. Teste em diferentes instrumentos e prazos.

  2. Adicionar filtros para melhorar a qualidade do sinal.

  3. Incorporar indicadores de tendência para determinar a tendência geral.

  4. Desenvolver saídas dinâmicas com base nas tendências em evolução.

  5. Otimizar parâmetros e combinações de ensaio.

  6. Adicionar dimensionamento de posições e gestão de riscos.

Resumo

Esta estratégia fornece sinais de tendência simples baseados em Aroon. Há espaço para melhoria em evitar sinais enganosos e controle de risco. Mas a lógica é simples e clara, servindo como estratégia básica de quantidade para melhoria.


/*backtest
start: 2023-08-19 00:00:00
end: 2023-09-18 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro
//2018
//@version=2

strategy(title = "Noro's Aroon Strategy v1.0", shorttitle = "Aroon str 1.0", overlay = false, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(false, defval = false, title = "Short")
length = input(7, defval = 7, minval = 1, maxval = 1000)
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From Day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To Day")

//Aroon
upper = 200 * (highestbars(high, length+1) + length)/length
lower = 200 * (lowestbars(low, length+1) + length)/length
plot(upper, color=#FF6A00)
plot(lower, color=#0094FF)

//Signals
up = upper > lower
dn = upper < lower

//Trading
if up
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na)
    
if dn
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na)
 
if true
    strategy.close_all()

Mais.