Quantitative Handelsstrategie basierend auf monatlichen gleitenden Durchschnittswerten


Erstellungsdatum: 2023-12-15 11:49:06 zuletzt geändert: 2023-12-15 11:49:06
Kopie: 2 Klicks: 654
1
konzentrieren Sie sich auf
1621
Anhänger

Quantitative Handelsstrategie basierend auf monatlichen gleitenden Durchschnittswerten

Überblick

Diese Strategie basiert hauptsächlich auf dem Mond- und Quartallinien-Gleichgewicht, insbesondere auf der 20-Tage-Linie als Mond- und der 60-Tage-Linie als Quartalline. Die Strategie-Signalquelle ist die Gold- und Forken-Totenforke der beiden Gleichlinien.

Strategieprinzip

Die Strategie verwendet den 20-Tage-Simple Moving Average als Monats- und den 60-Tage-Simple Moving Average als Quartals-Indikator. Die spezifische Handelssignal-Generierungslogik lautet wie folgt:

  1. Wenn die 20-Tage-Linie die 60-Tage-Linie überschreitet, d.h. eine Goldfalke auftritt, wird ein zusätzlicher Einstieg vorgenommen.
  2. Wenn der Aktienpreis um mehr als 10% zurückgegangen ist, wird die Position beendet.
  3. Wenn die 20-Tage-Linie die 60-Tage-Linie durchschreitet, also wenn eine Todesfalle auftritt, wird die Lagerhaltung aufgelöst.
  4. Wenn der Verlust 10% erreicht, wird der Verlust beendet.

Der mittlere Long-Line-Trend wird durch die Durchschneidung der Monats- und Quartalslinie beurteilt. Die Goldschnecke bedeutet, dass Sie in einen mittleren Long-Line-Bullmarkt eintreten, die Deckschnecke bedeutet, dass Sie in einen mittleren Long-Line-Bärmarkt eintreten.

Strategische Vorteile

  1. Die Verwendung von Quartalsdurchschnitten, um Marktlärm zu filtern und mittlere und längere Trends zu erfassen.
  2. Die Parameter der Strategie sind einfach und leicht umzusetzen.
  3. Die Stop-Loss-Parameter können konfiguriert werden, um das Risiko zu kontrollieren.

Risikoanalyse

  1. Es ist unklar, wann die Tendenz umkehren wird, und es besteht die Gefahr, Verluste zu erleiden.
  2. Es gibt eine Verzögerung bei der Monats- und Quartalslinie und es kann sein, dass Sie eine kurze Linie verpassen.
  3. Es ist notwendig, die richtigen Stopps auszuwählen, um zu vermeiden, dass zu radikale Aktionen ausgeschaltet werden.

Die Lösung:

  1. Die Anwendungen der mobilen Stop-Loss-Tracking-Technologie sind so konzipiert, dass die Verluste zeitnah gestoppt werden können.
  2. In Kombination mit anderen Indikatoren werden Trends durch Filtersignale bestimmt.
  3. Anpassung der Mittellinienparameter und Optimierung der Strategie.

Richtung der Strategieoptimierung

  1. Hinzufügen von Filtern für andere Indikatoren, wie z. B. KD-Indikatoren, um falsche Durchbrüche zu vermeiden.
  2. Optimierung der Mittellinienparameter und Suche nach der optimalen Kombination von Mittellinienperioden.
  3. Die Einführung von Stop-Off-Strategien, wie beispielsweise mobile Stop-Off-Strategien, ermöglicht mehr Gewinn.

Zusammenfassen

Diese Strategie Overall XXXXX Systematically nutzt die Vorteile der Monat-Quartal-Mittellinie, um die Richtung der mittleren langen Trendlinie durch die Gold-Silber-Sternenforke der Mittellinie zu bestimmen. Gleichzeitig ist eine angemessene Stop-Loss-Mechanismus zur Risikokontrolle eingerichtet. Die Strategie hat noch viel Optimierungsraum und lohnt sich für weitere Test-Optimierung.

Strategiequellcode
/*backtest
start: 2022-12-08 00:00:00
end: 2023-12-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("均線操作-月季", overlay=true, initial_capital = 100000, default_qty_type = strategy.percent_of_equity, default_qty_value = 30)
sma20 = sma(close, 20)
sma60 = sma(close, 60)

plot(sma20, title="月線", color=color.purple,linewidth=2)
plot(sma60, title="季線", color=color.yellow,linewidth=2)

backtest_year = input(title="backtest_year",type=input.integer,defval=2020)
backtest_month = input(title="backtest_month",type=input.integer,defval=10)
backtest_date = input(title="backtest_date",type=input.integer,defval=1)
backtest_start_time = timestamp(backtest_year,backtest_month,backtest_date,0,0,0)

to_long = sma20 > sma60  and close > highest(10)*0.9 // 黃金交叉
to_close = sma20 < sma60 // 死亡交叉
to_exit = close < highest(10)*0.9 //股價嚴重回檔
to_stop = close < 0.9*strategy.position_avg_price 

// to_long = crossover(sma20, sma60)   // 黃金交叉
// to_close = crossunder(sma20, sma60) // 死亡交叉

//plotchar(to_long, char="B", text="買", color=color.red, location=location.belowbar)
//plotchar(to_close, char="S", text="賣", color=color.green, location=location.abovebar)
//strategy.close("open long",when = tslide, comment="多單滑價7%出場")
if true
    strategy.entry("golden", strategy.long,  when=to_long,comment="多單入場")
    strategy.close("golden",  when=to_exit,comment="多單滑價7%出場")
    strategy.close("golden",  when=to_close,comment="月線季線死亡交叉")
    strategy.close("golden",  when=to_stop,comment="虧損10%強迫停損")