Stratégie de la future ligne de démarcation de Hearst

SMA
Date de création: 2024-04-29 13:58:06 Dernière modification: 2024-04-29 13:58:06
Copier: 2 Nombre de clics: 903
1
Suivre
1617
Abonnés

Stratégie de la future ligne de démarcation de Hearst

Aperçu

La stratégie de démarcation future de Hearst est une stratégie de négociation basée sur le concept de ligne de démarcation future (FLD) développé par J. M. Hearst dans les années 1970. Cette stratégie consiste à tracer une ligne simple mais profonde sur un graphique financier, en déplaçant les données de prix d’un demi-cycle vers l’avant sur l’axe du temps, afin de prédire les mouvements de prix futurs. Plus précisément, la stratégie se concentre principalement sur l’interaction entre trois cycles de Hearst: le cycle de signal, le cycle de transaction et le cycle de tendance.

Principe de stratégie

Le cœur de la stratégie de délimitation future de Hurst est de déplacer les données de prix d’un demi-cycle vers l’avant sur l’axe du temps pour construire la délimitation future (FLD). Par exemple, dans le cas d’un cycle de 40 jours, le FLD sera représenté par le déplacement des données de prix actuelles de 20 jours vers l’avant sur le graphique. La stratégie se concentre principalement sur les trois cycles de Hurst: le cycle de signal (20 jours par défaut), le cycle de négociation (20 jours par défaut) et le cycle de tendance (80 jours par défaut).

Avantages stratégiques

Les principaux avantages de la future stratégie de délimitation de Hearst sont les suivants:

  1. Simple et compréhensible: La stratégie est basée sur un concept simple de FLD, facile à comprendre et à appliquer.
  2. Prévisibilité: en déplaçant les données de prix vers l’avant, le FLD fournit une prévision de l’évolution future des prix.
  3. Analyse multi-cyclique: Cette stratégie combine trois cycles de Hearst différents pour fournir une analyse plus complète du marché.
  4. Identification des tendances et des convergences: en observant le mode d’interaction des prix avec les lignes FLD, les traders peuvent juger de la tendance ou de la convergence du marché.
  5. Personnalisabilité: La stratégie fournit un déclencheur de placement réglable, permettant au trader de définir un point de sortie en fonction de ses préférences.

Risque stratégique

Bien que la stratégie de délimitation future de Hearst ait ses avantages, elle comporte aussi des risques potentiels:

  1. Sensitivité des paramètres: la performance de la stratégie peut être sensible à des paramètres tels que la longueur des cycles, et différents paramètres peuvent entraîner des résultats différents.
  2. Adaptabilité au marché: la stratégie peut être moins performante dans certaines conditions de marché, telles que des tendances peu visibles ou des marchés très volatils.
  3. Légèreté: étant donné que la DFL est calculée à partir de données historiques, il est possible qu’il y ait une certaine légèreté.
  4. Surtrades: Si le déclencheur de la position de marché est mal configuré, cela peut entraîner des surtrades et des coûts de transaction élevés.

Afin d’atténuer ces risques, les traders peuvent envisager d’optimiser les paramètres, d’adapter leur stratégie aux différentes conditions du marché et de mettre en place des mesures appropriées de gestion des pertes et des risques.

Orientation de l’optimisation de la stratégie

La future stratégie de délimitation de Hearst pourrait être optimisée dans les domaines suivants:

  1. Optimisation des paramètres: Optimisation des paramètres tels que la longueur du cycle, le déclencheur de la position de vente libre pour améliorer les performances de la stratégie.
  2. Analyse de plusieurs périodes: appliquer la stratégie à différentes périodes afin d’obtenir une vision plus complète du marché.
  3. Combination avec d’autres indicateurs: Combiner le FLD avec d’autres indicateurs techniques (comme les moyennes mobiles, les oscillateurs, etc.) pour améliorer la fiabilité du signal.
  4. Gestion des risques: introduire des mécanismes de gestion des pertes et des positions pour contrôler les risques et optimiser les gains.
  5. Adaptabilité au marché: développer des stratégies d’optimisation ciblées pour répondre aux différentes conditions du marché (tendances, chocs, etc.).

Grâce à ces mesures d’optimisation, la future stratégie de délimitation de Hearst peut mieux s’adapter aux différents environnements de marché et améliorer sa stabilité et sa rentabilité.

Résumer

La stratégie de délimitation future de Hurst est une stratégie de négociation innovante basée sur le concept de délimitation future de J.M. Hurst. En déplaçant les données de prix d’un demi-cycle vers l’avant, en construisant une délimitation future et en combinant trois cycles de Hurst différents (cycle de signal, cycle de transaction et cycle de tendance), la stratégie fournit une prévision de la direction future des prix.

Code source de la stratégie
/*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 ✌💗📈