Kurzfristige Handelsstrategie auf Basis der Schlusskursdifferenz

Schriftsteller:ChaoZhang, Datum: 2023-09-28 15:08:39
Tags:

Übersicht

Diese Strategie beurteilt die zukünftige Preisbewegung, indem sie die Differenz zwischen den Schlusskurs von zwei aufeinander folgenden Tagen analysiert, mit dem Ziel, kurzfristigen Handel umzusetzen.

Strategie Logik

Die Kernlogik dieser Strategie besteht darin, den heutigen Schlusskurs mit dem gestrigen Schlusskurs zu vergleichen.

  1. Berechnen Sie die Differenz zwischen dem heutigen und dem gestrigen Schlusskurs.
  2. Wenn die Differenz größer ist als die festgelegte Schwelle, dann ist der heutige Preis im Vergleich zu gestern gestiegen.
  3. Wenn die Differenz kleiner ist als die negative festgelegte Schwelle, dann ist der heutige Preis im Vergleich zu gestern gefallen, gehen Sie kurz.
  4. Ansonsten halten Sie die Position von gestern.

Der Schlüssel hier ist, einen angemessenen Schwellenwert festzulegen. Wenn der Schwellenwert zu groß ist, wird er kleinere Preisschwankungen verpassen. Wenn der Schwellenwert zu klein ist, wird er aufgrund normaler Schwankungen zu einem übermäßigen irrationalen Handel führen. Die Strategie verwendet ein anpassbares Schwellenwertdesign mit einem Standardwert von 0,004 und einem Schritt von 0,001. Angemessene Schwellenwerte können durch Backtesting auf Basis historischer Daten ausgewählt werden.

Zusammenfassend lässt sich sagen, dass diese Strategie Preisänderungen zwischen zwei aufeinanderfolgenden Handelstagen erfasst, mögliche zukünftige Preistrends beurteilt, indem normale Schwankungen durch Schwellenwerte herausgefiltert werden, und somit kurzfristigen Handel durchführt.

Vorteile der Strategie

  • Einfache und intuitive Idee, leicht zu verstehen und umzusetzen
  • Keine komplexen technischen Indikatoren, geringe Erfahrungsschwelle
  • Verwenden Sie den Schlusskurs, filtern Sie Geräusche effektiv aus, erhöhen Sie die Signalstabilität
  • Die Anpassung des Schwellenwerts ermöglicht es, den optimalen Parameter zu finden
  • Geeignet für den kurzfristigen Handel, schnell Preisänderungen erfassen
  • Kann in verschiedenen Marktumgebungen betrieben werden

Risiken der Strategie

  • Wahrscheinlichkeit eines Preisunterschieds beim Schlusskurs, der Preisänderungen verpassen kann
  • Verlassen Sie sich auf einen einzigen Indikator, können andere wichtige Informationen verpassen
  • Eine unsachgemäße Schwellenwerteinstellung führt zu übermäßigen falschen Handelssignalen
  • Häufige kurzfristige Transaktionen, Transaktionskosten können höher sein
  • Notwendigkeit einer sorgfältigen Überwachung und rechtzeitiger Anpassung der Parameter

Um diesen Risiken entgegenzuwirken, sollten Sie Folgendes berücksichtigen:

  1. Kombination anderer Indikatoren, wie Handelsvolumen, zur Verbesserung der Signalgenauigkeit
  2. Hinzufügen von Stop-Loss-Logik zur Steuerung von Einzelverlusten
  3. Optimierung der Parameter zur Verbesserung der Signalkwalität
  4. angemessene Verlängerung des Handelszyklus zur Verringerung der Betriebsfrequenz
  5. Erhöhung des Positionsmanagements zur Verbesserung der Rentabilität

Optimierungsrichtlinien

Die Strategie kann in folgenden Aspekten optimiert werden:

  1. Zurückprüfung in mehreren Zeitrahmen- Verwenden Sie verschiedene Zeitrahmen (täglich, 4 Stunden, 1 Stunde usw.) zum Backtest von Parametern und wählen Sie die optimalen Zeitrahmen und Parameter aus.

  2. Kombination von Volatilitätsindikatoren- Hinzufügen von Indikatoren, die die Preisvolatilität berücksichtigen, wie z. B. ATR, um dynamische Schwellenwerte besser festzulegen.

  3. Hinzufügen von Stop Loss Logik- Setzen Sie angemessene Stop-Loss-Punkte, um Einzelverluste zu kontrollieren.

  4. Optimierung des Positionsmanagements- Optimierung der Größe der Anfangspositionen und zusätzliche Regeln zur Steigerung der Rentabilität bei gleichzeitiger Gewährleistung von Stop-Loss.

  5. Berücksichtigen Sie die Handelskosten- Fügen Sie Handelskosten wie Provisionen und Slippage in Backtesting hinzu, um näher am Live-Handel zu sein.

  6. Einführung von maschinellem Lernen- Maschinelles Lernen-Algorithmen anwenden, um mehr Funktionen zu extrahieren und stärkere Handelssignale zu erstellen.

Schlussfolgerung

Diese Strategie beurteilt zukünftige Preistrends anhand von Schlusskursunterschieden und verwendet einen einfachen und intuitiven Ansatz zur Entwicklung von kurzfristigen Handelsstrategien. Die Strategie ist einfach umzusetzen und für kurzfristige Operationen geeignet, kann aber einige Verlustrisiken haben. Verschiedene Optimierungsmethoden können die Stabilität und Rentabilität der Strategie verbessern. Als grundlegende Strategie kann sie Ideen und Referenzen für weitere Forschung liefern.


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

//@version=2
strategy("Daily Close Comparison Strategy (by ChartArt) repainting results", shorttitle="CA_-_Daily_Close_Strat", overlay=false)

// ChartArt's Daily Close Comparison Strategy
//
// Version 1.0
// Idea by ChartArt on February 28, 2016.
//
// This strategy is equal to the very
// popular "ANN Strategy" coded by sirolf2009,
// but without the Artificial Neural Network (ANN).
//
// Main difference besides stripping out the ANN
// is that I use close prices instead of OHLC4 prices.
// And the default threshold is set to 0 instead of 0.0014
// with a step of 0.001 instead of 0.0001.
//
// This strategy goes long if the close of the current day
// is larger than the close price of the last day.
// If the inverse logic is true, the strategy
// goes short (last close larger current close).
//
// This simple strategy does not have any
// stop loss or take profit money management logic.
//
// List of my work: 
// https://www.tradingview.com/u/ChartArt/
// 
//  __             __  ___       __  ___ 
// /  ` |__|  /\  |__)  |   /\  |__)  |  
// \__, |  | /~~\ |  \  |  /~~\ |  \  |  
// 
// 

threshold = input(title="Price Difference Threshold repainting results", type=float, defval=0.004, step=0.001)

getDiff() =>
    yesterday=security(syminfo.tickerid, 'D', close[1])
    today=security(syminfo.tickerid, 'D', close)
    delta=today-yesterday
    percentage=delta/yesterday
    
closeDiff = getDiff()
 
buying = closeDiff > threshold ? true : closeDiff < -threshold ? false : buying[1]

hline(0, title="zero line")

bgcolor(buying ? green : red, transp=25)
plot(closeDiff, color=silver, style=area, transp=75)
plot(closeDiff, color=aqua, title="prediction")

longCondition = buying
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = buying != true
if (shortCondition)
    strategy.entry("Short", strategy.short)

Mehr