O recurso está a ser carregado... Carregamento...

Estratégia de falha dentro do bar

Autora:ChaoZhang, Data: 14 de setembro de 2023 16:43:52
Tags:

Estratégia lógica

Esta estratégia opera com base em quebras dentro da barra. Se o alto/baixo da barra após uma barra dentro penetrar no intervalo anterior da barra dentro, os sinais comerciais são gerados.

A lógica é:

  1. Verifique se as 2 barras anteriores formaram uma barra interna, ou seja, barra 2s alta/baixa dentro do intervalo de barra 1s

  2. Se bar 3 alto exceder bar 2 alto e fechar acima de bar 2 baixo, vá longo

  3. Se bar 3 baixo quebra bar 2 baixo, e fecha abaixo de bar 2 alto, vá curto

  4. Opcionalmente fechar ordens X bar mais tarde (por exemplo, 3 bares)

O objetivo é capturar tendências emergentes de consolidações de barras internas.

Vantagens

  • Barras internas fáceis de identificar, avarias dão sinais claros

  • Fechar ordens cedo evita problemas.

  • Regras simples e intuitivas

Riscos

  • Necessidade de validar ainda mais a eficácia do sinal

  • Formação de barras interiores e avarias menos frequentes

  • Poderia negociar contra a tendência principal

Resumo

Esta estratégia tenta capitalizar as tendências de quebras de barras internas. mas a menor frequência de negociação precisa de avaliação de risco-recompensa. combinando com outros fatores poderia melhorar o desempenho.


/*backtest
start: 2022-09-07 00:00:00
end: 2022-10-31 00:00:00
period: 4d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Inside Bar Failure", overlay=true)

forward = input(defval=3, title="Look Forward")

longCondition = if (high[2] > high[1] and low[2] < low[1] and low < low[1] and high < high[1] and close > low[1])
    x = true
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = if (high[2] > high[1] and low[2] < low[1] and high > high[1] and low > low[1] and close < high[1])
    y = true
if (shortCondition)
    strategy.entry("Short", strategy.short)
    
if (longCondition[forward])
    strategy.close("Long")
if (shortCondition[forward])
    strategy.close("Short")

Mais.