Strategie zur Nachverfolgung von Trendwechseln

Schriftsteller:ChaoZhang, Datum: 2023-12-13 18:01:53
Tags:

img

Übersicht

Dies ist eine Trendverfolgungsstrategie, die zwei Umkehrsignale kombiniert. Sie integriert die 123 Umkehrstrategie und die Performance-Index-Strategie, um Preisumkehrpunkte für eine zuverlässigere Trendbeurteilung zu verfolgen.

Strategieprinzip

Die Strategie besteht aus zwei Teilstrategien:

  1. 123 Umkehrstrategie

    Verwenden Sie die 14-Tage-K-Linie, um Umkehrsignale zu beurteilen.

    • Bullish Signal: Der Schlusskurs fiel in den letzten zwei Tagen. Der aktuelle K-Line-Schlusskurs ist höher als der Schlusskurs des vorherigen Tages. 9-Tage Stochastic Slow ist unter 50
    • Bärensignal: Der Schlusskurs stieg in den letzten zwei Tagen. Der aktuelle Schlusskurs der K-Linie ist niedriger als der Schlusskurs des vorherigen Tages. Der 9-tägige Stochastic Fast liegt über 50
  2. Strategie für den Leistungsindex

    Berechnen Sie den Prozentsatz der Zunahme/Verringerung in den letzten 14 Tagen als Indikator.

    • Leistungsindex > (0), erzeugt ein Aufwärtssignal - Leistungsindex <(0), erzeugen ein bärisches Signal

Das endgültige Signal ist eine Kombination beider Signale, d.h. zur Erzeugung tatsächlicher Kauf-/Verkaufstransaktionen sind gleichartige bullische/bärenische Signale erforderlich.

Dadurch kann etwas Lärm ausfiltert und die Signale zuverlässiger gemacht werden.

Vorteile der Strategie

Dieses Doppelumkehrsystem weist folgende Vorteile auf:

  1. Zuverlässigere Signale durch Kombination zweier Faktoren
  2. Kann Marktlärm effektiv filtern und falsche Signale vermeiden
  3. 123 Muster ist klassisch und praktisch, leicht zu beurteilen und zu reproduzieren
  4. Der Leistungsindex kann die zukünftige Trendrichtung beurteilen
  5. Flexible Parameterkombination, kann weiter optimiert werden

Risiken der Strategie

Die Strategie birgt auch einige Risiken:

  1. Kann plötzliche Umkehrungen übersehen, kann Trends nicht vollständig erfassen
  2. Doppelsignalkombinationen führen zu weniger Signalen, was sich auf die Rentabilität auswirken kann
  3. Erfordert ein konsequentes Urteilsvermögen, das leicht von individuellen Bestandsschwankungen beeinflusst wird
  4. Probleme bei der Einstellung von Parametern können zu Signalentfernungen führen

Für die Optimierung können folgende Aspekte berücksichtigt werden:

  1. Anpassen von Parametern wie K-Linienlänge, Stochastischen Zyklus usw.
  2. Optimieren der Logik für das Doppelsignal-Urteil
  3. Mehr Faktoren wie Volumen etc. berücksichtigen.
  4. Hinzufügen eines Stop-Loss-Mechanismus

Zusammenfassung

Die Strategie integriert doppelte Umkehrurteile, um Preis-Wendepunkte effektiv zu entdecken. Obwohl die Wahrscheinlichkeit des Auftretens von Signalen abnimmt, ist die Zuverlässigkeit höher, geeignet für die Erfassung von mittelfristigen und langfristigen Trends. Der Strategieeffekt kann durch Parameteranpassung und Multi-Faktor-Optimierung weiter verbessert werden.


/*backtest
start: 2023-11-12 00:00:00
end: 2023-12-12 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 15/04/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
// The Performance indicator or a more familiar term, KPI (key performance indicator), 
// is an industry term that measures the performance. Generally used by organizations, 
// they determine whether the company is successful or not, and the degree of success. 
// It is used on a business’ different levels, to quantify the progress or regress of a 
// department, of an employee or even of a certain program or activity. For a manager 
// it’s extremely important to determine which KPIs are relevant for his activity, and 
// what is important almost always depends on which department he wants to measure the 
// performance for.  So the indicators set for the financial team will be different than 
// the ones for the marketing department and so on.
//
// Similar to the KPIs companies use to measure their performance on a monthly, quarterly 
// and yearly basis, the stock market makes use of a performance indicator as well, although 
// on the market, the performance index is calculated on a daily basis. The stock market 
// performance indicates the direction of the stock market as a whole, or of a specific stock 
// and gives traders an overall impression over the future security prices, helping them decide 
// the best move. A change in the indicator gives information about future trends a stock could 
// adopt, information about a sector or even on the whole economy. The financial sector is the 
// most relevant department of the economy and the indicators provide information on its overall 
// health, so when a stock price moves upwards, the indicators are a signal of good news. On the 
// other hand, if the price of a particular stock decreases, that is because bad news about its 
// performance are out and they generate negative signals to the market, causing the price to go 
// downwards. One could state that the movement of the security prices and consequently, the movement 
// of the indicators are an overall evaluation of a country’s economic trend.
//
// 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


PI(Period) =>
    pos = 0.0
    xKPI = (close - close[Period]) * 100 / close[Period]
    pos := iff(xKPI > 0, 1,
              iff(xKPI < 0, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Perfomance index", 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, "---- Perfomance index ----")
Period = input(14, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posPI = PI(Period)
pos = iff(posReversal123 == 1 and posPI == 1 , 1,
	   iff(posReversal123 == -1 and posPI == -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 )

Mehr