Diese Strategie verwendet 4 verschiedene Zeitrahmen, um die Trendrichtung zu bestimmen, um den langfristigen Trend zu entdecken und dabei den kurzfristigen als Einstiegsmöglichkeiten zu nutzen. Wenn die offenen Preise der 4 Zeitrahmen (täglich, wöchentlich, 15 Tage, monatlich) alle niedriger sind als die Schlusskurse, wird sie als langfristiger bullischer Trend bestimmt; wenn die offenen Preise der 4 Zeitrahmen alle höher sind als die Schlusskurse, wird sie als langfristiger bärischer Trend bestimmt. Die Strategie eröffnet Positionen, wenn der langfristige Trend bestätigt wird und ein kurzfristiges Signal generiert wird.
Diese Strategie verwendet vier Zeitrahmen: täglich, wöchentlich, 15-tägig und monatlich.
Wenn die Öffnungskurse der Tages-, Wochen-, 15-Tage- und Monatszeiträume alle niedriger sind als die Schlusskurse, zeigt dies, dass die Preise in diesen 4 Zeitrahmen einen Aufwärtstrend zeigen, so dass es als Bullenmarkt und langfristig bullish bezeichnet wird.
Im Gegenteil, wenn die Öffnungspreise dieser vier Zeitrahmen alle höher sind als die Schlusskurse, deutet dies darauf hin, dass die Preise in diesen vier Zeitrahmen einen Abwärtstrend zeigen, so dass es sich um einen Bärenmarkt und einen langfristigen Bärenmarkt handelt.
Nach der Bestimmung der langfristigen Trendrichtung eröffnet die Strategie Positionen, wenn kurzfristig ein Kauf-/Verkaufssignal generiert wird.
Diese Strategie hat folgende Vorteile:
Mehrzeitrahmen-Urteilsvermögen verbessern die Genauigkeit
Die Verwendung von 4 verschiedenen Zeitrahmen zur umfassenden Beurteilung der langfristigen Entwicklung kann die Richtigkeit der Beurteilung verbessern und verhindern, dass man durch kurzfristige Marktgeräusche irregeführt wird.
Kombination einer langfristigen und einer kurzfristigen, flexiblen Strategie
Diese Strategie ist flexibel und kann kurzfristige Chancen nutzen, ohne sich von der Haupttrendrichtung abzuwenden.
Einfache Parameter, einfach umzusetzen
Die wichtigsten Beurteilungsindikatoren dieser Strategie sind lediglich die Eröffnungs- und Schlusskurse der 4 Zeitrahmen.
Diese Strategie birgt auch einige Risiken:
Langfristige Trendumkehrung
Wenn sich der langfristige Aufwärtstrend in einen langfristigen Abwärtstrend umkehrt, kann diese Strategie nicht sofort beurteilen, was zu größeren Verlusten führen kann.
Schlechte kurzfristige Leistung
Diese Strategie stützt sich hauptsächlich auf kurzfristige Signale, um spezifische Einstiegsmöglichkeiten zu bestimmen. Wenn die kurzfristige Performance schlecht ist und nicht in der Lage ist, Positionen zur richtigen Zeit zu eröffnen, wirkt sich dies auf die Gesamtperformance aus. Die kurzfristigen Parameter können angepasst oder die kurzfristige Strategie kann in diesem Fall optimiert werden.
Für diese Strategie gibt es weitere Optimierungsmöglichkeiten:
Hinzufügen einer Stop-Loss-Strategie
Bewegung oder Stop-Loss-Order können so eingestellt werden, dass der maximale Verlust kontrolliert wird.
Optimierung der kurzfristigen Strategie
Verschiedene kurzfristige Indikatoren können getestet werden, um geeignete kurzfristige Strategien zu finden und die Einstiegsleistung zu verbessern.
Dynamische Anpassung der Positionen
Positionen können dynamisch anhand der Marktvolatilität angepasst und erhöht werden, wenn der Trend offensichtlicher wird.
Kombination von maschinellem Lernen
Eine große Datenmenge kann gesammelt werden und Maschinenlernmethoden können zur dynamischen Optimierung von Parametern und Regeln verwendet werden.
Diese Strategie bestimmt die Trendrichtung über mehrere Zeitrahmen hinweg, übernimmt die Idee der Kombination von langfristigem und kurzfristigem, was das Urteil über wichtige Trends gewährleistet und kurzfristige Chancen nutzt. Die Gesamtlogik ist klar und vernünftig, einfach zu implementieren und es ist eine effektive Trendfolgestrategie. Mit der Einführung von Techniken wie Stop-Loss und dynamischem Positionsmanagement hat diese Strategie großen Verbesserungsspielraum und lohnt sich zu üben und zu optimieren.
/*backtest start: 2023-11-27 00:00:00 end: 2023-12-27 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("[RichG] Easy MTF Strategy", overlay=false) TF_1_time = input("D", "Timeframe 1") TF_2_time = input("5D", "Timeframe 2") TF_3_time = input("15D", "Timeframe 3") TF_4_time = input("45D", "Timeframe 4") transaction_size = input(1, "Contract/Share Amount") src = close, len = 20 out = sma(src, len) width = 5 upcolor = green downcolor = red neutralcolor = blue linestyle = line TF_1 = request.security(syminfo.tickerid, TF_1_time, open) < request.security(syminfo.tickerid, TF_1_time, close) ? true:false TF_1_color = TF_1 ? upcolor:downcolor TF_2 = request.security(syminfo.tickerid, TF_2_time, open) < request.security(syminfo.tickerid, TF_2_time, close) ? true:false TF_2_color = TF_2 ? upcolor:downcolor TF_3 = request.security(syminfo.tickerid, TF_3_time, open) < request.security(syminfo.tickerid, TF_3_time, close) ? true:false TF_3_color = TF_3 ? upcolor:downcolor TF_4 = request.security(syminfo.tickerid, TF_4_time, open) < request.security(syminfo.tickerid, TF_4_time, close) ? true:false TF_4_color = TF_4 ? upcolor:downcolor TF_global = TF_1 and TF_2 and TF_3 and TF_4 TF_global_bear = TF_1 == false and TF_2 == false and TF_3 == false and TF_4 == false TF_global_color = TF_global ? green : TF_global_bear ? red : white TF_trigger_width = TF_global ? 6 : width plot(1, style=linestyle, linewidth=width, color=TF_1_color) plot(5, style=linestyle, linewidth=width, color=TF_2_color) plot(10, style=linestyle, linewidth=width, color=TF_3_color) plot(15, style=linestyle, linewidth=width, color=TF_4_color) plot(25, style=linestyle, linewidth=4, color=TF_global_color) exitCondition_Long = TF_global_bear exitCondition_Short = TF_global longCondition = TF_global if (longCondition) strategy.entry("MTF_Long", strategy.long, qty=transaction_size, when=strategy.position_size == 0) shortCondition = TF_global_bear if (shortCondition) strategy.entry("MTF_Short", strategy.short, qty=transaction_size, when=strategy.position_size == 0) strategy.close("MTF_Long", when=exitCondition_Long) strategy.close("MTF_Short", when=exitCondition_Short)