Diese Strategie basiert auf einem einzigen Indikator, der die Flachsecklinie ausgleicht, um einfache Trendverfolgung zu ermöglichen. Die Strategie nutzt die Flachsecklinie, um die Richtung des Trends zu identifizieren, in Kombination mit der historischen K-Linie-Form, um die Ein- und Ausstiegsmomente zu beurteilen, um zu profitieren.
Die Strategie erstellt eine Gleitlinie durch die Berechnung von Moving Averages. Konkret handelt es sich um einen gleitenden Durchschnitt von Eröffnung, Höchst, Tiefst und Schließung, der dann von der Gleitlinie aus berechnet wird.
Kaufbedingungen: Der aktuelle K-Line-Abschlusspreis ist größer als der vorherige K-Line-Abschlusspreis, der vorherige K-Line-Abschlusspreis ist größer als der vorherige K-Line-Abschlusspreis, die drei K-Linien sind alle Y-Linien.
Verkaufskonditionen: Der aktuelle K-Linien-Abschlusspreis ist kleiner als der vorherige K-Linien-Abschlusspreis, der vorherige K-Linien-Abschlusspreis ist kleiner als der vorherige zwei K-Linien-Abschlusspreis, fast drei K-Linien sind schwarz.
Die Kauf- und Verkaufskonditionen müssen mit dem letzten Signal 0 oder dem gegenteiligen Signal vereinbar sein, um eine fortlaufende Wiederholung zu vermeiden.
In Kombination mit anderen Indikatoren können langfristige Trends beurteilt, Stop-Loss-Strategien optimiert und die Umgebung der großen Märkte berücksichtigt werden.
Die Strategie nutzt die Trend-Tracking-Funktion der K-Linie-Indikatoren, um die Einstiegszeit in Verbindung mit der K-Linie-Form zu bestimmen und die Handelsfrequenz durch die Filterung von Wiederholungssignalen zu steuern. Die Strategie-Logik ist einfach, klar und einfach zu implementieren. Die Strategie kann jedoch durch eine Kombination aus mehreren Indikatoren, Optimierung von Stop-Losses, Aufmerksamkeit auf die Große Masse usw. verbessert werden, um die Strategie stabiler und zuverlässiger zu machen.
/*backtest
start: 2022-09-30 00:00:00
end: 2023-10-06 00:00:00
period: 2d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//Masoud Abdoli
//Heikin Ashi Smoothed Buy & Sell Strategy Rev.4
//Date: 01-Oct-2021
//@version=4
strategy(title="Abdoli's Heikin Ashi Smoothed Buy & Sell Strategy Rev.4", shorttitle="Heikin-Ashi Smoothed Rev.4", overlay=true,
initial_capital=1000, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
MaPeriod = input (title="Moving Average Period?", type=input.integer, defval=65, minval=5, maxval=100, step=5)
maOpen = ema(open , MaPeriod)
maHigh = ema(high , MaPeriod)
maLow = ema(low , MaPeriod)
maClose = ema(close, MaPeriod)
haClose = (maOpen+maHigh+maLow+maClose)/4
haOpen = 0.0
haOpen:= na(haOpen[1]) ? (maOpen[1]+maClose[1])/2 : (haOpen[1]+haClose[1])/2
haHigh = max(maHigh, max(haClose, haOpen))
haLow = min(maLow , max(haClose, haOpen))
plotcandle(haOpen, haHigh, haLow, haClose, title="heikin-Ashi smoothed", color=haOpen>haClose ? color.orange : color.blue)
B0 = haClose - haOpen
B1 = haClose[1] - haOpen[1]
B2 = haClose[2] - haOpen[2]
BuyCondition = B0 > 0.0 and B1 > 0.0 and B2 > 0.0 and haClose > haClose[1] and haClose[1] > haClose[2]
SellCondition= B0 < 0.0 and B1 < 0.0 and B2 < 0.0 and haClose < haClose[1] and haClose[1] < haClose[2]
last_signal = 0
Buy_final = BuyCondition and (nz(last_signal[1]) == 0 or nz(last_signal[1]) ==-1)
Sell_final = SellCondition and (nz(last_signal[1]) == 0 or nz(last_signal[1]) == 1)
last_signal := Buy_final ? 1 : Sell_final ? -1 : last_signal[1]
plotshape(Buy_final , style=shape.labelup , location=location.belowbar, color=color.blue, title="Buy label" , text="BUY" , textcolor=color.white)
plotshape(Sell_final, style=shape.labeldown, location=location.abovebar, color=color.red , title="Sell label", text="SELL", textcolor=color.white)
strategy.entry("Buy", strategy.long, when=Buy_final)
strategy.close("Buy", when=Sell_final)