Estratégia baseada no indicador Gann HiLo Activator para operações simples de tendência.
Calcular as médias móveis ponderadas dos preços mais altos e mais baixos para um período especificado para obter as faixas superiores e inferiores.
Quando o próximo for mais alto do que a banda superior, vai longo.
Quando o close estiver abaixo da faixa inferior, vá curto.
Preços de fechamento quebrando as bandas nas saídas de sinal reverso.
Permite selecionar a hora efetiva de início da estratégia, por defeito é período completo.
Parâmetros simples de Gann HiLo, fáceis de implementar.
Sinais claros de negociação de fuga de banda.
Escolha flexível do prazo de execução da estratégia eficaz.
Lógica simples e clara, fácil de entender.
Bons resultados de backtest, combina bem com tendências de mercado.
Risco de perda ilimitado como estratégia curta.
Os parâmetros inadequados podem causar frequentes perdas de parada e reentrada.
Ineficazes em mercados agitados, propensos a ficarem presos.
Precisa de filtros adicionais para além do indicador para evitar falhas.
Otimizar combinações de parâmetros para reduzir sinais errados.
Adicionar stop loss para garantir o controlo do risco.
Adicionar EMA etc. para determinar a condição do mercado e o calendário de entrada.
Combine o volume para evitar falhas em condições agitadas.
Implementar filtragem de tempo para estreitar estratégia período eficaz.
A estratégia alcança uma tendência simples através de bandas Gann HiLo, mas pode ser melhorada através do reforço da lógica do indicador, otimização de parâmetros, controlo de riscos, etc., para torná-la mais robusta.
/*backtest start: 2022-09-10 00:00:00 end: 2023-09-16 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © starbolt //@version=5 strategy('Gann HiLo Activator Strategy', overlay=true, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=20, initial_capital=1000, process_orders_on_close=true) len = input.int(3, 'Length', step=1, minval=1) displace = input.int(1, 'Offset', step=1, minval=0) from_start = input(false, 'Begin from start?') backtest_year = input(2017, 'From Year') backtest_month = input.int(01, 'From Month', minval=1, maxval=12, step=1) backtest_day = input.int(01, 'From Day', minval=1, maxval=31, step=1) start_time = from_start ? 0 : timestamp(backtest_year, backtest_month, backtest_day, 00, 00) float hilo = na hi = ta.sma(high, len) lo = ta.sma(low, len) hilo := close > hi[displace] ? 1 : close < lo[displace] ? -1 : hilo[1] ghla = hilo == -1 ? hi[displace] : lo[displace] color = hilo == -1 ? color.red : color.green buyCondition = hilo == 1 and hilo[1] == -1 sellCondition = hilo == -1 and hilo[1] == 1 if buyCondition and time >= start_time strategy.entry('Long', strategy.long) if sellCondition and time >= start_time strategy.entry('Short', strategy.short) plot(ghla, color=color, style=plot.style_cross)