
Diese Strategie ermöglicht den Arbitragehandel zwischen verschiedenen Märkten durch Berechnung eines adaptiven regulären Moving Averages. Die Strategie weist Merkmale wie Cross-Market-Arbitrage, dynamische Parameteranpassung und Risikokontrolle auf.
Die Strategie definiert zunächst eine scaleMinimax-Funktion, um die Zeitreihen auf den angegebenen Bereich zu standardisieren. Dann wird eine adaptive regulärisierte Moving Average-Rema-Funktion definiert, um die Signallinie nach dem Glätten zu berechnen.
Nachdem die Signalleitung erhalten wurde, entscheidet die Strategie über die Freiheit, indem sie die Signalleitung und die Gold- und Goldfork-Death-Fork des Preises beurteilt.
Darüber hinaus wurde der Smooth-Faktor und die Anzeige-Signallinie show_line als einstellbare Parameter hinzugefügt, um die Flexibilität der Strategie zu erhöhen.
Die Strategie hat folgende Vorteile gegenüber herkömmlichen Moving Average Strategien:
Die Strategie birgt auch Risiken:
Bei bilateralen Kreuzungen besteht eine hohe Wahrscheinlichkeit für Fehlsignale. Die Lösung besteht darin, die Gleitparameter angemessen anzupassen, um die Schwingung der Signallinie zu vermeiden.
Es ist wichtig, sicherzustellen, dass die beiden Märkte in einem Preisverhältnis und in einer einheitlichen Entwicklung sind. Die Lösung besteht darin, einen Markt mit hoher Relevanz zu wählen.
Die Optimierung von Parametern erfordert die Ansammlung von ausreichend historischen Daten zur Rückprüfung. Die Lösung besteht darin, die Parameter im realen Handel sorgfältig anzupassen.
Die Strategie kann auch in folgenden Bereichen optimiert werden:
Bei der Parameterwahl kann eine automatisch optimierte Parameterpalette mit einem Machine-Learning-Algorithmus eingeführt werden.
Bei der Signalgenerierung können mehr Indikatoren eingeführt und kombiniert werden, um ein stabileres Handelssignal zu erstellen.
In der Risikokontrolle kann eine Stop-Loss-Linie festgelegt werden, um einzelne Verluste zu kontrollieren.
Auf der Cross-Market-Arbitrage-Plattform können weitere, relevantere Handelsarten ausgeweitet werden.
Diese Strategie ermöglicht den arbitragen Handel zwischen den Märkten durch die automatische Berechnung von Moving Averages. Im Vergleich zu herkömmlichen Moving Average-Strategien bietet sie Vorteile wie die Anpassung der Parameter, die glatte Verarbeitung und die arbitrage zwischen den Märkten. Im nächsten Schritt wird die Strategie durch maschinelles Lernen, Kombinationssignale und Risikomanagement weiter optimiert.
/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("Crossover82%", overlay=true)
//
// Functions
//
scaleMinimax(X, p, min, max) =>
hi = highest(X, p), lo = lowest(X, p)
(max - min) * (X - lo)/(hi - lo) + min
rema(ts, p) => // regularized ma
rm = 0.0, lambda = .5, a = 2 / (p + 1)
rm := (nz(rm[1]) + a * (ts - nz(rm[1])) + lambda * (2 * nz(rm[1]) - nz(rm[2]))) / (lambda + 1)
rm
//
// Inputs
//
X = input(close, title="Data source")
smooth = input(2, title="REMA smooth factor")
show_line = input(true, title="Show signal line")
//
// Main
//
p = 5
sig = rema(scaleMinimax(pow(X*p,-X) - 0.1, 100, lowest(X, 100), highest(X, 100)), smooth)
plot(show_line ? sig : na, linewidth=1)
plot(cross(sig, X) ? ohlc4 : na, style=circles, linewidth=8, color=blue, transp=50)
longCondition = crossover(sig, X)
if (longCondition)
strategy.entry("LE", strategy.long)
shortCondition = crossunder(sig, X)
if (shortCondition)
strategy.entry("SE", strategy.short)