Estratégia de rastreamento de dupla cor

Autora:ChaoZhang, Data: 2023-10-11 14:53:41
Tags:

Resumo

Esta estratégia observa a mudança das cores da linha K para determinar a tendência do mercado e estabelecer posições longas e curtas em conformidade.

Princípio

A estratégia julga a cor das linhas K com base na relação entre o preço de fechamento e o preço de abertura.

Quando existirem linhas K consecutivas especificadas da mesma cor (reguladas), proceder às medidas adequadas:

  • Se for vermelho, vai longe.

  • Se for verde, corta.

Quando a linha K mudar de cor, feche todas as posições.

Vantagens

  • O princípio é claro e simples, fácil de compreender e de aplicar.

  • Pode acompanhar tendências relativamente a curto prazo e negociar com frequência.

  • O número de linhas K é personalizável para ajustar a sensibilidade da estratégia.

  • Pode ser longo ou curto apenas para reduzir a frequência de negociação.

  • O prazo de negociação pode ser definido para evitar determinados períodos.

Riscos

  • Incapacidade de determinar a direcção da tendência, risco de ser espancado.

  • Incapacidade de determinar o momento ideal de entrada, riscos de entrada prematura ou oportunidades perdidas.

  • Os riscos de reversão como mudanças de cor não representam necessariamente mudanças reais de tendência.

  • A busca de um mercado a curto prazo pode levar a uma pressão excessiva sobre o comércio e as comissões.

  • A configuração inadequada dos parâmetros pode conduzir a um mau desempenho da estratégia.

Optimização

  • Considerar a adição de indicadores de avaliação da tendência para evitar a entrada reversa, por exemplo, MACD, KD.

  • Configure um stop loss para reduzir o risco de perda.

  • Relaxar adequadamente os critérios de saída para evitar saídas excessivamente frequentes.

  • Combinar outros fatores para otimizar o tempo de entrada, por exemplo, aumento do volume, quebra de máximos anteriores.

  • Usar ordens de mercado para reduzir o impacto do deslizamento.

Conclusão

Esta estratégia tem origem na mais simples análise técnica da linha K, alcançando o rastreamento de tendências básicas julgando as cores da linha K. As vantagens são simplicidade, alta frequência de negociação e ajuste flexível de parâmetros. Mas também tem alguma cegueira, incapaz de determinar a qualidade da tendência. Pode ser melhorada adicionando indicadores de julgamento de tendências mantendo-a simples, melhorando assim o desempenho da estratégia.


/*backtest
start: 2023-09-10 00:00:00
end: 2023-10-10 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/

//2018
//Noro

//@version=2
strategy("Noro's Candles Strategy v1.0", shorttitle = "Candles str 1.0", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100.0, pyramiding = 0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
bq = input(2, defval = 2, minval = 2, maxval = 6, title = "Bars Q")

fromyear = input(2018, defval = 2018, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2018, defval = 2018, 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")

//Bars Q
bar = close > open ? 1 : close < open ? -1 : 0
gb = bar == 1
rb = bar == -1
redbars = bq == 2 and rb and rb[1] ? 1 : bq == 3 and rb and rb[1] and rb[2] ? 1 : bq == 4 and rb and rb[1] and rb[2] and rb[3] ? 1 : bq == 5 and rb[1] and rb[2] and rb[3] and rb[4] ? 1 : bq == 6 and rb[1] and rb[2] and rb[3] and rb[4] and rb[5] ? 1 : 0
greenbars = bq == 2 and gb and gb[1] ? 1 : bq == 3 and gb and gb[1] and gb[2] ? 1 : bq == 4 and gb and gb[1] and gb[2] and gb[3] ? 1 : bq == 5 and gb[1] and gb[2] and gb[3] and gb[4] ? 1 : bq == 6 and gb[1] and gb[2] and gb[3] and gb[4] and gb[5] ? 1 : 0

//Signals
up1 = redbars == 1
dn1 = greenbars == 1
exit = bar != bar[1]

if up1
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na)

if dn1
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na)
    
if time > timestamp(toyear, tomonth, today, 00, 00) or exit
    strategy.close_all()

Mais.