die sogenannte Dual Peak Reversal Trading Strategy

Schriftsteller:ChaoZhang, Datum: 15.9.2023
Tags:

Diese Strategie erzeugt Kauf- und Verkaufssignale, die auf einfachen gleitenden Durchschnitten der höchsten Höchst- und niedrigsten niedrigen Preise über einen bestimmten Zeitraum basieren.

Die Dual Peak Reversal Trading Strategy nutzt die Theorie der Unterstützung und des Widerstands in der technischen Analyse. Sie geht davon aus, dass, wenn die Preise durch Widerstands- oder Unterstützungsniveaus durchbrechen, sich die Marktkräfte und die Dynamik verschieben. Insbesondere wird, wenn die Preise über den höchsten Punkt in einem jüngeren Zeitraum steigen, als Durchbrechen des Overhead-Widerstands angesehen. Und wenn die Preise unter den niedrigsten Punkt in einem jüngeren Zeitraum fallen, wird es als Durchbrechen der Unterstützungsniveaus angesehen. Der Mittelpunkt dieser beiden Grenzen wird als der Schwerpunkt des Wertes angesehen.

Die Dual Peak Reversal Trading Strategy berechnet zunächst die einfachen gleitenden Durchschnitte der höchsten Höchst- und niedrigsten Tiefpreise über einen bestimmten Zeitraum (Standstillstand 29 Tage). Dies erzeugt zwei Bands, die die oberen und unteren Grenzen des Preises darstellen. Es berechnet dann den Mittelpunkt dieser beiden Bands, um die Kauf- und Verkaufsschwellen zu bestimmen.

Wenn die Preise über das obere Band steigen, wird ein Kaufsignal generiert. Wenn die Preise unter das untere Band fallen, wird ein Verkaufssignal generiert. Der Händler kehrt dann die Position um, verkauft, wenn die Preise unter das obere Band fallen, und kauft, wenn die Preise über das untere Band steigen.

Der Vorteil dieser Strategie besteht darin, dass sie von der Dynamik profitiert, die durch Ausbrüche ausgelöst wird. Wenn die Preise aus den oberen oder unteren Grenzen ausbrechen, gibt es oft kurzfristig eine signifikante Preisbewegung. Dies bietet Händlern die Möglichkeit, nach dem Ausbruch zu handeln.

Allerdings gibt es auch einige Risiken mit dieser Strategie. Erstens hat die ausgewählte Lookback-Periode einen großen Einfluss auf die Ergebnisse. Wenn die Periode zu kurz ist, werden die Bands zu empfindlich sein und viele falsche Signale erzeugen. Wenn die Periode zu lang ist, wird es nicht gelingen, neue Trends rechtzeitig zu erfassen. Auch Preise, die die obere oder untere Grenze überschreiten, setzen den Trend nicht immer fort, und eine Rückkehr ist möglich. Händler müssen Stop-Losses anpassen, um das Risiko zu kontrollieren.

Zusammenfassend lässt sich sagen, dass die Dual Peak Reversal Trading Strategie nach Handelsmöglichkeiten sucht, indem sie Preisbreaks über Momentumsschwellen hinweg überwacht. Sie nutzt den Vorteil von Breakout-Impulsen kurzfristig, muss aber auch auf Parameteroptimierung und Risikokontrolle achten. Richtig eingesetzt, kann diese Strategie ein vorteilhaftes Werkzeug für den quantitativen Handel sein.


/*backtest
start: 2023-08-15 00:00:00
end: 2023-09-14 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
////////////////////////////////////////////////////////////
//  Copyright by HPotter v2.0 19/09/2022
// This is simple Highest high and Lowest low strategy.
// Buy when break HH+offset
// Sell when break LL+offset
// Offset = (HH-LL)/2
////////////////////////////////////////////////////////////
strategy(title='HHLL', overlay=true)
Len = input(29)
reverse = input(true, title='Trade reverse')
xHH = ta.sma(high, Len)
xLL = ta.sma(low, Len)

movevalue = (xHH - xLL) / 2
xHHM = xHH + movevalue
xLLM = xLL - movevalue

pos = 0
possig = 0
iff_1 = high > xHHM[1] and time > timestamp(2018, 01, 01, 09, 30) ? -1 : nz(pos[1], 0)
pos := low < xLLM[1] and time > timestamp(2018, 01, 01, 09, 30) ? 1 : iff_1

iff_2 = reverse and pos == -1 ? 1 : pos
possig := reverse and pos == 1 ? -1 : iff_2

if possig == 1 and possig[1] != possig and time > timestamp(2018, 01, 01, 09, 30)
    strategy.entry('Long', strategy.long)
if possig == -1 and possig[1] != possig and time > timestamp(2018, 01, 01, 09, 30)
    strategy.entry('Short', strategy.short)

barcolor(possig == -1 ? color.red : possig == 1 ? color.green : color.blue)

plot(xHHM, color=color.new(color.blue, 0), title='MA')
plot(xLLM, color=color.new(color.blue, 0), title='MA')
plot(xHH, color=color.new(color.red, 0), title='MA')
plot(xLL, color=color.new(color.red, 0), title='MA')

Mehr