Kombinationsstrategie aus rekursivem gleitendem Trend-Durchschnitt kombiniert mit 123-Musterumkehr


Erstellungsdatum: 2024-02-21 16:02:32 zuletzt geändert: 2024-02-21 16:02:32
Kopie: 3 Klicks: 686
1
konzentrieren Sie sich auf
1617
Anhänger

Kombinationsstrategie aus rekursivem gleitendem Trend-Durchschnitt kombiniert mit 123-Musterumkehr

Überblick

Diese Strategie kombiniert die beiden Strategien Recursive Moving Average und 123 Form Reversal zu einem kombinierten Signal, um die Stabilität und Profitabilität der Strategie zu verbessern.

Grundsätze

123 Umkehrung der Form

Der Abschnitt basiert auf Ulf Jensens Buch “Wie ich dreifache Gewinne am Futures-Markt erzielen kann”. Sein Kaufsignal lautet: “Wenn der STO SLOWK-Wert in den letzten zwei Tagen gestiegen ist und der 9-Tage-Zyklus unter 50 liegt, ist das Kaufsignal gut”. Sein Verkaufssignal lautet: “Wenn der STO FASTK-Wert in den letzten zwei Tagen gesunken ist und der 9-Tage-Zyklus über 50 liegt, ist der Verkaufssignal schlecht”.

Rückläufige bewegliche Trendmittellinie

Dieser Teil verwendet eine Technik, die als “Rückläufige Multimodal-Synchronisation” bezeichnet wird. Die Idee ist, die Preise der letzten Tage sowie die Preise des Tages zu nutzen, um den Preis des nächsten Tages vorherzusagen.

Vorteile

Diese Kombinationsstrategie kann die Vorteile beider Strategien nutzen und die Einschränkungen einer einzigen Strategie vermeiden. 123 Formwechsel können größere Trends bei Preiswechseln erfassen. Die Recursive Moving Average kann die Kursrichtung des Preises genauer bestimmen.

Risiken und Lösungen

  • 123 Formwechsel gibt die Möglichkeit, dass ein falsches Signal aufgrund von kurzfristigen Preisschwankungen ausgegeben wird. Die Parameter können entsprechend angepasst werden, um den Lärm zu filtern.
  • Die Recursive Moving Average Line reagiert möglicherweise langsamer auf Überraschungen. Ein lokaler Trend kann in Kombination mit anderen Indikatoren berücksichtigt werden.
  • Es kann sein, dass die beiden Strategie-Signale nicht übereinstimmen. In diesem Fall ist es sinnvoll, die Position nur zu eröffnen, wenn zwei Signale ausgegeben werden, oder nur einem Signal zu folgen, je nach Marktlage.

Optimierungsrichtung

  • Verschiedene Kombinationen von Periodenparametern können getestet werden, um die besten Parameterpaare zu finden
  • Automatische Stop-Loss-Mechanismen können eingeführt werden
  • Die Parameter können je nach Sorte und Marktumfeld angepasst werden.
  • In Kombination mit anderen Strategien oder Kennzahlen kann ein stärker integriertes System in Betracht gezogen werden

Zusammenfassen

Diese Strategie kombiniert zwei verschiedene Arten von Strategien, um die Stabilität durch die Erzeugung von synthetischen Signalen zu verbessern. Die Vorteile beider Strategien können gleichzeitig bei Preiswechselpunkten erfasst und die zukünftige Kursentwicklung beurteilt werden.

Strategiequellcode
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 01/06/2021
// This is combo strategies for get a cumulative signal. 
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The 
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close 
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. 
// The strategy sells at market, if close price is lower than the previous close price 
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// Taken from an article "The Yen Recused" in the December 1998 issue of TASC, 
// written by Dennis Meyers. He describes the Recursive MA in mathematical terms 
// as "recursive polynomial fit, a technique that uses a small number of past values 
// of the estimated price and today's price to predict tomorrows price."
// Red bars color - short position. Green is long.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
    vFast = sma(stoch(close, high, low, Length), KSmoothing) 
    vSlow = sma(vFast, DLength)
    pos = 0.0
    pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
	         iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) 
	pos


RMTA(Length) =>
    pos = 0.0
    Bot = 0.0
    nRes = 0.0
    Alpha = 2 / (Length+1)
    Bot := (1-Alpha) * nz(Bot[1],close) + close
    nRes := (1-Alpha) * nz(nRes[1],close) + (Alpha*(close + Bot - nz(Bot[1], 0)))
    pos:= iff(nRes > close[1], -1,
    	     iff(nRes < close[1], 1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Recursive Moving Trend Average", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- Recursive Moving Trend Average ----")
LengthRMTA = input(21, minval=3)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posRMTA = RMTA(LengthRMTA)
pos = iff(posReversal123 == 1 and posRMTA == 1 , 1,
	   iff(posReversal123 == -1 and posRMTA == -1, -1, 0)) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1 , 1, pos))	   
if (possig == 1 ) 
    strategy.entry("Long", strategy.long)
if (possig == -1 )
    strategy.entry("Short", strategy.short)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )