
Diese Strategie ist eine Ichimoku-Cloud-Trading-Strategie, die nur mehrere Haupte ausführt. Sie eröffnet Positionen, wenn sie die Referenzlinie auf der Umstellungslinie überschreiten, und platziert Positionen, wenn sie die Referenzlinie unterhalb der Umstellungslinie überschreiten. Darüber hinaus wird bei der Eröffnung von Positionen und Positionen der Spannungsdruck erkannt, und wenn der Spannungsdruck höher als die Wolke ist, wird eine Position eröffnet, wenn die Wolke niedriger ist, wird die Position platziert.
Die Strategie nutzt einige Zeilen aus dem Ichimoku-Technik-Kennzeichen.
Umrechnungslinie: Durchschnitt der Höchst- und Tiefstpreise der letzten 9 Tage, die eine Trendumrechnung über einen Zeitraum darstellen.
Benchmark: Durchschnitt der Höchst- und Tiefstpreise der letzten 26 Tage, der die durchschnittliche Preisentwicklung in einem Zeitraum darstellt.
Frontlinie A: Mittelwert zwischen Umstellungslinie und Referenzlinie.
Frontlinie B: Durchschnittswert der Höchst- und Tiefstpreise der letzten 52 Tage, ein Vorzeichen für mittlere und langfristige Trends.
Spannung: Der aktuelle Schlusskurs, der 26 Tage zurückliegt. Die Spannung repräsentiert die Kraft der Tendenz.
Bei der Eröffnung einer Position muss gleichzeitig die Bedingung erfüllt sein, dass die Übergangslinie die Referenzlinie überschreitet und der Spannungsrückstand über der Wolke liegt. Dies bedeutet, dass die kurz- und mittelfristigen Trends ein Aufwärtssignal sind.
Wenn die Position gerade ist, muss die Bedingung, dass die Transformationslinie unterhalb der Basislinie durchschritten wird und der Span unterhalb der Wolken lag, gleichzeitig erfüllt werden. Dies bedeutet, dass sich der Trend umkehrt und die Position beendet werden sollte.
Die Tendenz wird mit Hilfe der Ichimoku-Cloud-Indikatoren mit hoher Genauigkeit beurteilt.
Es ist wichtig, dass wir uns in der Lage fühlen, ein falsches Signal zu erzeugen, indem wir mehrere Beurteilungslinien verwenden.
Das ist ein Trend, der sich bei den meisten digitalen Währungen in der langen Linie zeigt.
Die Bedingungen für die Filterung sind relativ streng und ermöglichen eine höhere Qualität der Signale.
Positionen können nur mit vollem oder leeren Lagerstätten gehalten werden.
In der Bull-Markt-Region ist das Ergebnis gut, aber in der Bären-Region ist die Gefahr groß.
Die Parameter sind standardmäßig für Kryptowährungen eingestellt und müssen an andere Varianten angepasst werden.
Es gibt weniger Handelssignale und es ist leicht, einige Gelegenheiten zu verpassen.
Positionsanpassungsfunktionen hinzugefügt, um Positionen zu schließen, wenn ein gewisser Prozentsatz der Verluste erreicht wird.
Hinzufügen von Verkaufssignalen, Ausgleich unterhalb der wichtigen Unterstützung und Verringerung der Verluste.
Optimierte Parameter-Einstellungen, die es ermöglichen, mehr Sorten anzupassen und die Stabilität zu verbessern.
Erhöhung der Stop-Loss-Funktion, um die Verluste zu stoppen, wenn sie den Schwellenwert erreicht haben.
Diese Strategie ist als eine nur mehrköpfige Ichimoku-Cloud-Handelsstrategie mit einer hohen Genauigkeit bei der Beurteilung von Trends. Sie kombiniert gleichzeitig mehrere Ichimoku-Linien als Filterbedingungen, um die Trendwendepunkte zuverlässig zu beurteilen. Die Strategie eignet sich besonders für Sorten, die in den langen Linien aufsteigen, wie Kryptowährungen. Durch weitere Verbesserungen der Funktionen wie Stop-Loss- und Positionsregelung kann die Risikokontrolle der Strategie verbessert werden, um mehr Sorten und ein breiteres Marktumfeld zu berücksichtigen.
/*backtest
start: 2024-01-02 00:00:00
end: 2024-02-01 00:00:00
period: 1h
basePeriod: 15m
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/
// Simple long-only Ichimoku Cloud Strategy
// Enter position when conversion line crosses base line up, and close it when the opposite happens.
// Additional condition for open / close the trade is lagging span, it should be higher than cloud to open position and below - to close it.
//@version=4
strategy("Ichimoku Cloud Strategy Long Only", shorttitle="Ichimoku Cloud Strategy (long only)", overlay=true )
conversion_length = input(9, minval=1, title="Conversion Line Periods"),
base_length = input(26, minval=1, title="Base Line Periods")
lagging_length = input(52, minval=1, title="Lagging Span 2 Periods"),
delta = input(26, minval=1, title="Delta")
average(len) => avg(lowest(len), highest(len))
conversion_line = average(conversion_length) // tenkan sen - trend
base_line = average(base_length) // kijun sen - movement
lead_line_a = avg(conversion_line, base_line) // senkou span A
lead_line_b = average(lagging_length) // senkou span B
lagging_span = close // chikou span - trend / move power
plot(conversion_line, color=color.blue, linewidth=2, title="Conversion Line")
plot(base_line, color=color.white, linewidth=2, title="Base Line")
plot(lagging_span, offset = -delta, color=color.purple, linewidth=2, title="Lagging Span")
lead_line_a_plot = plot(lead_line_a, offset = delta, color=color.green, title="Lead 1")
lead_line_b_plot = plot(lead_line_b, offset = delta, color=color.red, title="Lead 2")
fill(lead_line_a_plot, lead_line_b_plot, color = lead_line_a > lead_line_b ? color.green : color.red)
// Strategy logic
long_signal = crossover(conversion_line,base_line) and ((lagging_span) > (lead_line_a)) and ((lagging_span) > (lead_line_b))
short_signal = crossover(base_line, conversion_line) and ((lagging_span) < (lead_line_a)) and ((lagging_span) < (lead_line_b))
strategy.entry("LONG", strategy.long, when=strategy.opentrades == 0 and long_signal, alert_message='BUY')
strategy.close("LONG", when=strategy.opentrades > 0 and short_signal, alert_message='SELL')
// === Backtesting Dates === thanks to Trost
testPeriodSwitch = input(true, "Custom Backtesting Dates")
testStartYear = input(2021, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testStartHour = input(0, "Backtest Start Hour")
testPeriodStart = timestamp(testStartYear, testStartMonth, testStartDay, testStartHour, 0)
testStopYear = input(2021, "Backtest Stop Year")
testStopMonth = input(12, "Backtest Stop Month")
testStopDay = input(1, "Backtest Stop Day")
testStopHour = input(0, "Backtest Stop Hour")
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, testStopHour, 0)
testPeriod() => true
testPeriod_1 = testPeriod()
isPeriod = testPeriodSwitch == true ? testPeriod_1 : true
// === /END
if not isPeriod
strategy.cancel_all()
strategy.close_all()