Tägliche Strategie zum Preisvergleich bei Schließung

Schriftsteller:ChaoZhang, Datum: 2023-09-17 18:28:31
Tags:

Übersicht

Diese Strategie bestimmt die Richtung, indem sie den aktuellen Schlusskurs der Bar mit dem Schlusskurs der vorherigen Bar vergleicht. Es handelt sich um eine einfache Trendstrategie, die lang geht, wenn der Preis steigt und kurz, wenn der Preis fällt. Keine komplexen Indikatoren sind erforderlich, nur die grundlegendsten Preisinformationen werden verwendet, um die Trendrichtung zu bestimmen.

Strategie Logik

  1. Berechnen Sie die prozentuale Differenz zwischen dem Schlusskurs der aktuellen Bar und dem Schlusskurs der vorherigen Bar.

  2. Wenn der Prozentsatz größer als die Schwelle ist, zeigt dies einen steigenden Preis an, gehen Sie lang.

  3. Wenn der Prozentsatz kleiner als die negative Schwelle ist, bedeutet das, dass der Preis sinkt, gehen Sie kurz.

  4. Der Schwellenwert ist auf 0, was bedeutet, bei jedem Anstieg lang und bei jedem Rückgang kurz zu gehen.

  5. Es gibt keine Stop-Loss- oder Take-Profit-Logik, die sich ausschließlich auf die Trendpersistenz für die Rentabilität stützt.

Analyse der Vorteile

  1. Sehr einfache und intuitive Trendbestimmungsmethode, leicht zu verstehen und umzusetzen.

  2. Es ist nicht notwendig, technische Indikatoren zu berechnen, wodurch der Ressourcenverbrauch verringert wird.

  3. Konzentriert sich ausschließlich auf Kernpreisinformationen und vermeidet unnötigen Indikatorlärm.

  4. Ausgezeichnete Rücktest-Ergebnisse, aber Live-Performance ist fragwürdig.

Risikoanalyse

  1. Keine Stop-Loss setzt unbegrenzte Verlustrisiken aus.

  2. Unwirksam in schwankenden Märkten mit hoher Reichweite, anfällig für Fallen.

  3. Es gibt Risiken für Überanpassung, Live-Performance muss noch validiert werden.

  4. Der reine Trend kann keinen Gewinn erzielen, der realisierte Gewinn ist begrenzt.

Optimierungsrichtlinien

  1. Hinzufügen von Stop-Loss für die Risikokontrolle.

  2. Einbeziehung von Volatilitätsmaßnahmen zur Verringerung von Whipsaws in unruhigen Märkten.

  3. Versuche verschiedene Periodenparameter zur Steigerung der Robustheit.

  4. Hinzufügen von Trendindikatoren, um irrationale Kursbewegungen zu vermeiden.

  5. Optimieren Sie den Gewinn, indem Sie den höchsten Preis betrachten, um das Gewinnpotenzial zu erweitern.

Zusammenfassung

Die Kernidee der Strategie ist einfach, aber ihre tatsächliche Leistungsfähigkeit ist fraglich. Stärkere Risikokontrollmechanismen und Parameteroptimierungstests sind vor der tatsächlichen Anwendung erforderlich.


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

//@version=2
strategy("Daily Close Comparison Strategy (by ChartArt)", 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", type=float, defval=0, 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