Estratégia da linha divisória futura da Hearst

SMA
Data de criação: 2024-04-29 13:58:06 última modificação: 2024-04-29 13:58:06
cópia: 2 Cliques: 903
1
focar em
1617
Seguidores

Estratégia da linha divisória futura da Hearst

Visão geral

A estratégia de linha de demarcação futura de Hearst é uma estratégia de negociação baseada no conceito de linha de demarcação futura (Future Line of Demarcation, FLD) desenvolvido por J. M. Hearst na década de 1970. A estratégia prevê a movimentação de preços futuros, traçando uma linha simples, mas de profundo significado, que desvia os dados de preços para a frente por meio de um ciclo no eixo do tempo. Concretamente, a estratégia se concentra principalmente na interação entre os três períodos de Hearst: o ciclo de sinal, o ciclo de negociação e o ciclo de tendência.

Princípio da estratégia

O núcleo da estratégia da linha divisória futura de Hearst é o desvio de dados de preços para a frente em um semicíclo no tempo, construindo uma linha divisória futura (FLD). Por exemplo, no caso de um ciclo de 40 dias, a FLD será representada por 20 dias movendo os dados de preços atuais para a frente no gráfico. A estratégia se concentra principalmente em três ciclos de Hearst: o ciclo de sinal (considerando os 20 dias), o ciclo de negociação (considerando os 20 dias) e o ciclo de tendência (considerando os 80 dias).

Vantagens estratégicas

Os principais pontos positivos da estratégia futura de divisão de Hearst são:

  1. Simples e fácil de entender: a estratégia é baseada em conceitos simples de FLD, que são fáceis de entender e aplicar.
  2. Prospectiva: O FLD fornece uma previsão do movimento futuro dos preços, desviando os dados de preços para a frente.
  3. Análise multicíclica: a estratégia combina três diferentes ciclos de Hearst para fornecer uma análise mais abrangente do mercado.
  4. Identificação de tendências e correlações: Observando o modo como os preços interagem com as linhas de FLD, os comerciantes podem julgar a tendência ou correlação do mercado.
  5. Personalização: A estratégia fornece um gatilho de posição de liquidação ajustável, com o qual o comerciante pode definir o ponto de saída de acordo com suas preferências.

Risco estratégico

Embora a estratégia da futura linha divisória de Hearst tenha suas vantagens, há também alguns riscos potenciais:

  1. Sensibilidade de parâmetros: A performance da estratégia pode ser sensível a parâmetros como o comprimento do ciclo, e diferentes configurações de parâmetros podem levar a resultados diferentes.
  2. Adaptabilidade ao mercado: a estratégia pode ter um desempenho fraco em certas condições de mercado, como mercados com tendências obscuras ou com forte volatilidade.
  3. Atraso: Como o FLD é calculado com base em dados históricos, pode haver algum atraso.
  4. Transações excessivas: se o gatilho de liquidação for mal configurado, isso pode levar a transações excessivas e altos custos de transação.

Para mitigar esses riscos, os comerciantes podem considerar a otimização de parâmetros, adaptar a estratégia para diferentes condições de mercado e definir medidas adequadas de controle de perda e gestão de risco.

Direção de otimização da estratégia

A futura estratégia de divisão de fronteiras de Hearst pode ser otimizada nos seguintes aspectos:

  1. Optimização de parâmetros: Otimização de parâmetros como a duração do ciclo, o gatilho de liquidação para melhorar o desempenho da estratégia.
  2. Análise de múltiplos prazos: aplicar a estratégia em diferentes prazos para obter uma visão mais abrangente do mercado.
  3. Combinação com outros indicadores: Combine o FLD com outros indicadores técnicos (como a média móvel, oscilador, etc.) para aumentar a confiabilidade do sinal.
  4. Gerenciamento de riscos: introdução de mecanismos de gestão de stop loss e posições para controlar os riscos e otimizar os lucros.
  5. Adaptabilidade ao mercado: desenvolvimento de soluções de otimização direcionadas para diferentes condições de mercado (como tendências, turbulências, etc.).

Através dessas melhorias, a futura estratégia de divisão da Hearst pode se adaptar melhor a diferentes cenários de mercado, aumentando sua estabilidade e lucratividade.

Resumir

A estratégia de linha divisória futura de Hurst é uma estratégia de negociação inovadora baseada no conceito de linha divisória futura de J. M. Hurst. Construindo uma linha divisória futura, movendo os dados de preço para a frente por meio de um semicicíclo, e combinando três diferentes ciclos de Hurst: o ciclo de sinal, o ciclo de negociação e o ciclo de tendência, a estratégia fornece uma previsão do movimento de preços futuros.

Código-fonte da estratégia
/*backtest
start: 2024-04-27 00:00:00
end: 2024-04-28 00:00:00
period: 10m
basePeriod: 1m
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/
// © BarefootJoey

//@version=5
strategy("Hurst Future Lines of Demarcation Strategy", overlay=true)

// FLD Settings
source      = input(ohlc4, 'Source')
smoothFLD   = input.bool(false, 'Smooth FLD')
FLDtransp   = input(33, 'FLD transparency')
FLDsmooth   = input.int(5, "FLD Smoothing", minval=1, tooltip="Number of trading days to smooth the FLD")   
FLD_out = ta.sma(source , smoothFLD ? FLDsmooth : 1)

close_buy_in_1 = input.string('Price', 'Input Close Trigger 1', options=['Price', 'Signal', 'Trade', 'Trend', 'None'])
close_buy_in_2 = input.string('Trade', 'Input Close Trigger 2', options=['Price', 'Signal', 'Trade', 'Trend', 'None'])

// Quarter Cycle (Default: 20 day) Length Pivot Cycle
col_q = input.color(#da00ff, "Quarter Cycle Color")
cyc_q = input.int(5, "Signal Cycle Length")
plot(FLD_out, color=color.new(col_q, FLDtransp), title='Signal FLD', offset = math.round(cyc_q/2) )

// Trade Cycle (Default: 20 day) Length Pivot Cycle
col = input.color(#ff9800, "Trade Cycle Color")
cyc = input.int(20, "Trade Cycle Length")
plot(FLD_out, color=color.new(col, FLDtransp), title='Trade FLD', offset = math.round(cyc/2) )

// Double Cycle (Default: 80 day) Length Pivot Cycle
col_d = input.color(color.aqua, "Double Cycle Color")
cyc_d = input.int(80, "Trend Cycle Length")
plot(FLD_out, color=color.new(col_d, FLDtransp), title='Trend FLD', offset = math.round(cyc_d/2) )

// Strategy Plots
price = source
signal = FLD_out[math.round(cyc_q/2)]
trade = FLD_out[math.round(cyc/2)]
trend = FLD_out[math.round(cyc_d/2)]

// Trend State
var state = 0
if signal > trade and trade > trend 
    state := 1 // (A)
    state
if state == 1 and price < signal
    state := 2 // (B)
    state
if signal < trade and trade > trend 
    state := 3 // (C)
    state
if state == 3 and price < signal 
    state := 4 // (D)
    state
if signal < trade and trade < trend 
    state := 5 // (E)
    state
if state == 5 and price < signal
    state := 6 // (F)
    state
if signal > trade and trade < trend
    state := 7 // (G)
    state
if state == 7 and price < signal
    state := 8 // (H)
    state
state := state

// Strategy Definitions
close_buy_out_1 = close_buy_in_1 == 'Price' ? price : close_buy_in_1 == 'Signal' ? signal : close_buy_in_1 == 'Trade' ? trade : close_buy_in_1 == 'Trend' ? trend : na
close_buy_out_2 = close_buy_in_2 == 'Price' ? price : close_buy_in_2 == 'Signal' ? signal : close_buy_in_2 == 'Trade' ? trade : close_buy_in_2 == 'Trend' ? trend : na
buy = ta.crossover(price, signal) and state == 1
close_buy = strategy.position_size>0 and ta.crossunder(close_buy_out_1, close_buy_out_2)
sell = ta.crossunder(price, signal) and state == 6
close_sell = strategy.position_size<0 and ta.crossover(close_buy_out_1, close_buy_out_2)

// FLD Interaction State Background
interaction_color = state == 1 ? color.green : // A
  state == 2 ? color.aqua : // B
  state == 3 ? color.blue : // C
  state == 4 ? color.purple : // D
  state == 5 ? color.white : // E
  state == 6 ? color.red :// F
  state == 7 ? color.orange : // G
  state == 8 ? color.yellow : na // H

bgcolor(color.new(interaction_color, 90), title= "A-H Background")

bar_color = strategy.position_size>0 ? #00ff0a : strategy.position_size<0 ? #FF0000 : na
barcolor(bar_color)

if buy
    strategy.entry("Buy", strategy.long)
if close_buy
    strategy.close("Buy", qty_percent=100)

if sell
    strategy.entry("Sell", strategy.short)
if close_sell
    strategy.close("Sell", qty_percent=100)

// EoS made w/ ❤ by @BarefootJoey ✌💗📈