Les ressources ont été chargées... Je charge...

Ligne de détection

Auteur:ChaoZhang est là., Date: 2022-05-20 16h58 et 28 min
Les étiquettes:HMA

Cet indicateur détermine les périodes de marché haussier où un investisseur peut détenir l'actif et les périodes de marché baissier où il devrait éviter de le détenir. Techniquement, l'indicateur est un filtre de tendance asymétrique visant à tenir compte du fait que les sold-offs du marché ont tendance à être plus marqués que les tendances haussières.

Comment l' utiliser L'indicateur de tendance est un filtrage de tendance, qui est un filtrage de tendance à la hausse et à la baisse. Lorsque le prix ou la ligne lissée traverse le filtre de tendance ci-dessus, il s'agit d'un signal de tendance haussière. L'indicateur marque de tels croisements avec des cercles verts. Il colore également le fond du graphique en vert dans une tendance haussière. Le prix ou la ligne violette qui traverse le filtre de tendance ci-dessous signifie un signal de tendance baissière. Les signaux de tendance baissière s'affichent sous forme de cercles rouges.

Réglages Sensitivité une liste déroulante qui permet à l'utilisateur de choisir une période de moyenne de l'indicateur. Utiliser l'assouplissement allume et éteint l'assouplissement du prix avec HMA. Avec l'assouplissement activé, l'indicateur répond plus lentement aux changements de prix, mais en même temps produit moins de faux signaux.

test de retour

img


/*backtest
start: 2022-05-12 00:00:00
end: 2022-05-18 23:59:00
period: 5m
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/
// © AstrideUnicorn

// Asymmetrical Trend Filter aka HODL Line

//@version=5
indicator("HODL LINE", overlay=true)

// initialize indicator period parameter and the asymmetry paramter
length = 300
asymmetry =  0.05 //input.float(defval=0.05,step=0.01, minval=0.01, maxval=0.3)

// script inputs
sensitivity = input.string(defval="Hold Short Term", title="Sensitivity", options=['Super Sensitive','Hold Short Term', 'Hold Medium Term', 'Hold Long Term'])
use_smoothing = input.bool(defval=true, title="Use Smoothing")


// Set the indicator period based on the choosen sensitivity 
if sensitivity == 'Super Sensitive'
    length:=50

if sensitivity == 'Hold Short Term'
    length:=100

if sensitivity == 'Hold Medium Term'
    length:=300
    
if sensitivity == 'Hold Long Term'
    length:=500    

// Calculate HODL Line - an assymetric trend filter
HODL_line = (ta.highest(close,length) + ta.lowest(close,length))/(2.0 + asymmetry)

// Calculate smoothed price time series
smoothed_price = ta.hma(close,50)

// Use closing price or smoothed price based on the choosen option for smoothing
price_model = use_smoothing ? smoothed_price : close

// Define conditional color for the HODL Line
hodl_line_color = price_model >= HODL_line ? color.green : color.red

// define the HODL Line crossing conditions
crossing_condition_bull = ta.crossover(price_model, HODL_line)
crossing_condition_bear = ta.crossunder(price_model, HODL_line)

// plotting
plot(HODL_line, color = hodl_line_color, linewidth = 2)

plot(crossing_condition_bull?HODL_line:na, color = color.new(color.green,40), style= plot.style_circles, linewidth = 20)
plot(crossing_condition_bear?HODL_line:na, color = color.new(color.red,40), style= plot.style_circles, linewidth = 20)

bgcolor(color.new(hodl_line_color,80))

plot(use_smoothing?price_model:na, color=color.purple, linewidth=2)

if crossing_condition_bull
    strategy.entry("Enter Long", strategy.long)
else if crossing_condition_bear
    strategy.entry("Enter Short", strategy.short)

Relationnée

Plus de