
Eine automatische Support/Resistance-Strategie ist eine Trendverfolgungsstrategie. Sie ermittelt die wichtigsten Unterstützungs- und Widerstandspunkte, indem sie die Höchst- und Tiefstpreise eines bestimmten Zeitraums berechnet. Sie kauft oder verkauft, wenn die Preise diese Punkte durchbrechen.
Die Strategie berechnet zuerst die Höchst- und die Tiefstpreise innerhalb einer bestimmten Anzahl von Perioden auf der linken und rechten Seite, um die wichtigsten Unterstützungs- und Widerstandspunkte zu ermitteln. Dann werden die Höchst- und Tiefstpreise innerhalb kürzerer Perioden berechnet, um die schnellen Unterstützungs- und Widerstandspunkte zu ermitteln.
Die Schlüssellogik der Strategie ist, dass ein neuer Trend wahrscheinlich ist, wenn der Preis diese Stellen durchbricht, nachdem die Preise auf der linken und linken Seite Unterstützung oder Widerstand gebildet haben. Die Strategie kombiniert gleichzeitig die Beurteilung von Trends aus verschiedenen Zeiträumen, um zu vermeiden, dass sie von kurzfristigen Dynamiken beeinflusst werden.
Der größte Vorteil dieser Strategie besteht darin, dass die wichtigsten Unterstützungs- und Widerstandsplätze automatisch ermittelt werden können. Es ist nicht erforderlich, die Position der Unterstützung und des Widerstands manuell zu bestimmen.
Außerdem sind die Kauf- und Verkaufskonditionen der Strategie einfach und klar, und es ist einfach, die Optimierungsparameter zu ermitteln und zu implementieren.
Das größte Risiko dieser Strategie besteht darin, dass die automatisch berechneten Unterstützungs- und Widerstandspunkte nicht immer zuverlässig sind und der Preis diese Bits direkt durchbrechen kann, um neue Trends zu bilden. Dies kann zu Verlusten führen.
Außerdem kann es dazu führen, dass zu viele falsche Durchbruchsignale erzeugt werden, wenn die Schnell-Unterstützungs- und Widerstands-Einstellungen zu kurz sind. Dies erhöht die Verluste des tatsächlichen Handels.
Um das Risiko zu verringern, kann man die Filterung in Verbindung mit anderen Indikatoren, wie z. B. der Ausrichtung der Indikatoren für die Transaktionsmenge, den Moving Averages, oder die Rationalität der automatisch berechneten Unterstützungs- und Widerstandspunkte manuell überprüfen.
Diese Strategie kann in zweierlei Hinsicht optimiert werden:
Optimierung der eingegebenen Periodenparameter und Suche nach der optimalen Kombination der Parameter. Versuchen Sie verschiedene Kombinationen der rechten und rechten Perioden, um die Parameter zu finden, die die höchste Durchbruchrate haben.
Hinzufügen von Filterbedingungen für Kennzahlen, wie z. B. Quantifizierung, Moving Averages usw., um falsche Durchbrüche zu vermeiden. Die Strategie kann auch in Kombination mit einer künstlichen Methode zur Bestimmung der Schlüsselpositionen verbessert werden.
Die Strategie als Ganzes ist ein gutes Strategie-Framework für die automatische Beurteilung von Unterstützungs- und Widerstandspunkten. Da die automatische Beurteilung von Unterstützungs- und Widerstandspunkten durchgeführt wird, ist die Implementierung nicht sehr schwierig und eignet sich für die Richtung, in der Trends erfasst werden.
/*backtest
start: 2023-01-01 00:00:00
end: 2023-12-05 00:00:00
period: 1d
basePeriod: 1h
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/
// © lukaRT
//@version=5
strategy("Auto S/R Strategy", shorttitle="Auto S/R", overlay=true)
// Ваши входные параметры
leftBars = input.int(50, title="Left Bars")
rightBars = input.int(25, title="Right Bars")
quickRightBars = input.int(5, title="Quick Right Bars")
src = input(close, title="Source")
pivotHigh = ta.pivothigh(src, leftBars, rightBars)
pivotLow = ta.pivotlow(src, leftBars, rightBars)
quickPivotHigh = ta.pivothigh(src, leftBars, quickRightBars)
quickPivotLow = ta.pivotlow(src, leftBars, quickRightBars)
// Ваши уровни сопротивления и поддержки
resistanceLevel1 = ta.valuewhen(quickPivotHigh, high[quickRightBars], 0)
supportLevel1 = ta.valuewhen(quickPivotLow, low[quickRightBars], 0)
// Пересечение ценой уровней
longCondition = ta.crossover(close, supportLevel1)
shortCondition = ta.crossunder(close, resistanceLevel1)
strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)
// Отображение линий сопротивления и поддержки на графике
plot(resistanceLevel1, color=color.red, title="Resistance Level 1")
plot(supportLevel1, color=color.green, title="Support Level 1")