
Die Strategie basiert auf der Berechnung der Differenz zwischen den beiden Indikatoren ROC und SMA, der Differenz zwischen den beiden Indikatoren k, der Differenz zwischen den beiden Indikatoren ROC und SMA, der Differenz zwischen den beiden Indikatoren k, der Differenz zwischen den beiden Indikatoren k, der Differenz zwischen den beiden Indikatoren k, der Differenz zwischen den beiden Indikatoren k, der Differenz zwischen den beiden Indikatoren k, der Differenz zwischen den beiden Indikatoren k, der Differenz zwischen den beiden Indikatoren k, der Differenz zwischen den beiden Indikatoren k, der Differenz zwischen den beiden Indikatoren k, der Differenz zwischen den beiden Indikatoren k, der Differenz zwischen den beiden Indikatoren k, der Differenz zwischen den beiden Indikatoren k, der Differenz zwischen den beiden Indikatoren k, der Differenz zwischen den beiden Indikatoren k, der Differenz zwischen den beiden Indikatoren k und der Differenz zwischen den beiden Indikatoren k und der Differenz zwischen den beiden Indikatoren k und
Die Strategie berechnet zunächst den SMA-Meanline und den ROC-Indikator mit einer Länge von l und berechnet dann die Differenz zwischen dem aktuellen Schlusskurs und dem SMA k. Anschließend werden die s-Tage-Aggregate und Summe von k berechnet.
Der Code beinhaltet:
Berechnen Sie die SMA-Mittellinie a mit der Länge l
Berechnen Sie die Längen-ROC-R
Berechnen der Differenz zwischen dem aktuellen Schlusskurs und der SMA-Mittellinie k = close - a
Summieren Sie k für s Tage und erhalten Sie sum.
Wenn sum > 0 ist, dann mehr, und wenn sum < 0 ist, dann null.
Ausgleichsbedingungen: Sum<0 bei Über- und Ausgleichsposition; Sum>0 bei Ausgleichsposition
Der Schlüssel zu dieser Strategie ist die Berechnung der Aggregate und Summe von k, wobei die positive und negative Summe als Handelssignal verwendet wird. Wenn die jüngste Zeit k> 0 ist, bedeutet dies, dass der Preis steigt, und dies ist mehr; wenn die jüngste Zeit k < 0 ist, bedeutet dies, dass der Preis fällt, und dies ist leer.
Dies ist eine einfache und praktische Short-Line-Handelsstrategie mit folgenden Vorteilen:
Die verwendeten Indikatoren sind relativ einfach und leicht zu verstehen und zu implementieren.
Durch das Filtern der Differenz zwischen den Indikatoren lassen sich genauere Handelsmöglichkeiten erkennen.
Die Summierung der Differenzen erlaubt eine genauere Erfassung der Kurzlinientrends.
Die Parameter l und s können je nach Marktgeschwindigkeit angepasst werden, um sich an unterschiedliche Perioden anzupassen.
Die Strategie ist klar, die Prozedur ist einfach und leicht zu ändern und zu optimieren.
Die Kapitalnutzung ist effizient und ermöglicht häufige Short-Line-Transaktionen.
Die Strategie birgt auch Risiken, die sich auf folgende Bereiche beziehen:
Kurzfristige Geschäfte sind sehr riskant und können zu Verlusten führen.
Die falsche Einstellung der Parameter kann zu zu häufigen Transaktionen oder zu verpassten Gelegenheiten führen.
Es ist nicht möglich, die Trendwende effektiv zu bewältigen, und ein Überschreiten der Stop-Loss-Regelung kann zu einem größeren Verlust führen.
Die Parameter müssen häufig überwacht und angepasst werden und sind eher auf die Erfahrung der Händler angewiesen.
Häufige Transaktionen können zu höheren Transaktionskosten führen und zu Schlupfpunkten führen, was sich negativ auf die Gewinnspanne auswirkt.
Risiken können mit folgenden Lösungen begegnet werden:
Die Parameter wurden entsprechend angepasst, um die Handelsfrequenz zu verringern.
In Kombination mit einem Trendindikator identifiziert man eine Trendwende.
Optimierung der Stop-Loss-Strategie und Kontrolle von Einzelschäden.
Das Modul zur Optimierung der automatischen Parameter reduziert die Abhängigkeit von der Erfahrung der Händler.
Optimierung der Bestellmodule und Reduzierung der Transaktionskosten.
Die Strategie kann in folgenden Bereichen weiter optimiert werden:
Optimierung der Parameterberechnungsmethoden, um die Parameter anpassungsfähiger zu machen. Dynamische Optimierung der Parameter mit genetischen Algorithmen und Markov-Ketten kann in Betracht gezogen werden.
In Kombination mit mehr Indikatoren und Filterbedingungen verbessert sich die Qualität des Handelssignals.
Verbesserte Stop-Loss-Strategien, wie z.B. die Einführung von Moving Stop, Average Stop, um Einzelschäden zu kontrollieren.
Optimierung der Kapitalmanagementstrategien, z. B. Risikopunktmanagement, Festverteilung des Kapitals usw., um das Gesamtrisiko zu kontrollieren.
Optimierung der Bestellmodule, Verwendung von Algorithmen wie Trendverfolgung und Gleitpunktsteuerung, um die Transaktionskosten zu senken.
Hinzufügung eines Optimierungsmoduls für die automatische Rückmeldung, um die Auswirkungen verschiedener Parameter auf die Strategie schnell zu bewerten.
Erweiterung der Module zur Bewertung von quantitativen Kennzahlen, zur Bewertung der Qualität von Handelssignalen und zur Steigerung der Strategiestabilität.
Durch diese Optimierungen kann die Strategie zu einem umfassenderen, intelligenten, stabileren und kontrollierbaren System für den Short-Line-Handel werden.
Insgesamt ist die Strategie durch einfache Kennzahlen Handelssignale erzeugt, klar und leicht zu implementieren, gehört zu den typischen Short-Line-Handel Strategie. Durch weitere Optimierung der Parameter, Stop-Loss, Geld-Management und so weiter, kann das Risiko reduziert werden, erhöhen Stabilität, so dass es eine der wertvollen quantitative Handelsstrategien. Aber keine Strategie ist perfekt, der Händler muss auch vernünftig zu bleiben, und in angemessener Weise kombiniert mit Ihren eigenen Risikopräferenzen für die Anpassung der Anwendung.
/*backtest
start: 2023-10-06 00:00:00
end: 2023-11-05 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("Indicator Integrator Strat",default_qty_type = strategy.percent_of_equity, default_qty_value = 100,currency="USD",initial_capital=662, overlay=false)
l = input(defval=170,title="Length for indicator")
s = input(title="Length of summation",defval=18)
a= sma(close,l)
r=roc(close,l)
k=close-a
sum = 0
for i = 0 to s
sum := sum + k[i]
//plot(a,color=yellow,linewidth=2,transp=0)
//bc = iff( sum > 0, white, teal)
//plot(sum,color=bc, transp=20, linewidth=3,style=columns)
//plot(sma(sum,3),color=white)
//hline(0)
inpTakeProfit = input(defval = 0, title = "Take Profit", minval = 0)
inpStopLoss = input(defval = 0, title = "Stop Loss", minval = 0)
inpTrailStop = input(defval = 0, title = "Trailing Stop Loss", minval = 0)
inpTrailOffset = input(defval = 0, title = "Trailing Stop Loss Offset", minval = 0)
useTakeProfit = inpTakeProfit >= 1 ? inpTakeProfit : na
useStopLoss = inpStopLoss >= 1 ? inpStopLoss : na
useTrailStop = inpTrailStop >= 1 ? inpTrailStop : na
useTrailOffset = inpTrailOffset >= 1 ? inpTrailOffset : na
////buyEntry = crossover(source, lower)
////sellEntry = crossunder(source, upper)
if sum>0
strategy.entry("Long", strategy.long, oca_name="Long", comment="Long")
else
strategy.cancel(id="Long")
if sum<0
strategy.entry("Short", strategy.short, oca_name="Short", comment="Short")
else
strategy.cancel(id="Short")
strategy.initial_capital = 50000
plot(strategy.equity-strategy.initial_capital-strategy.closedtrades*.25/2, title="equity", color=red, linewidth=2)
hline(0)
//longCondition = sum>0
//exitlong = sum<0
//shortCondition = sum<0
//exitshort = sum>0
//strategy.entry(id = "Long", long=true, when = longCondition)
//strategy.close(id = "Long", when = exitlong)
//strategy.exit("Exit Long", from_entry = "Long", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset, when=exitlong)
//strategy.entry(id = "Short", long=false, when = shortCondition)
//strategy.close(id = "Short", when = exitshort)
//strategy.exit("Exit Short", from_entry = "Short", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset, when=exitshort)