
Die Strategie, die sich mit der Umkehrung der Quantifizierung der Doppeltrendsignale bezeichnet, wird als Umkehrungsstrategie bezeichnet. Sie kombiniert zwei verschiedene Strategie-Signale, ein kurzfristiges Umkehrungssignal, das auf einem zufälligen Indikator basiert, und ein langfristiges Trendsignal, das auf einer Transaktionsmenge basiert, die zusammen ein stabiles Einstiegssignal bilden.
Die Strategie besteht aus zwei Teilen. Der erste Teil verwendet den 9-Tage-Stoch-Indikator, um ein kurzfristiges Umkehrsignal zu erzeugen. Insbesondere, wenn der Schlusskurs am 9. Tag höher ist als 50 und die langsame Linie über 50 ist, wird mehr getan; wenn der Schlusskurs am 9. Tag niedriger ist als 50 und die langsame Linie über 50 ist, wird leer gemacht.
Der zweite Teil verwendet den Negativvolumenindex (NVI), um ein langfristiges Trendsignal zu erzeugen. Die Berechnungsformel für das NVI lautet: Wenn der Handel am Tag geringer ist als am Vortag, wird die Schließungskursänderung am Tag aufgestockt.
Letztendlich kombiniert die Strategie zwei Signale. Ein Einstiegssignal wird nur erzeugt, wenn ein kurzfristiger Umkehrsignal und ein langfristiger Trendsignal synchronisiert sind. Dies hilft, falsche Signale zu filtern und die Stabilität zu erhöhen.
Der größte Vorteil dieser Strategie liegt in der Signalstabilität. Kurzfristige Umkehrsignale können kurzfristige Marktanpassungen erfassen, langfristige Trendsignale sorgen dafür, dass die große Tendenz unverändert bleibt. Die Kombination der beiden erhöht die Stabilität des Signals erheblich und filtert effektiv kurzfristige Signale mit einer hohen Falschmeldungsrate.
Außerdem sind die Parameter der Strategie geringer und leicht zu optimieren. Der Benutzer muss nur die Parameter des NVI anpassen, um sie an die Merkmale der verschiedenen Märkte anzupassen.
Das größte Risiko dieser Strategie besteht darin, dass zwischen den beiden Signalen ein Zeitunterschied bestehen kann. Es kann eine gewisse Verzögerung zwischen einem kurzfristigen Umkehrsignal und einem langfristigen Trendsignal geben, was dazu führt, dass die beiden Signale über einen Zeitraum nicht übereinstimmen und kein stabiles Einstiegssignal bilden können.
Außerdem ist der NVI-Indikator für ungewöhnlich große Veränderungen im Transaktionsvolumen empfindlich, was zu falschen langfristigen Trendbeurteilungen führen kann.
Um diese Risiken zu verringern, können die NVI-Indikatorparameter entsprechend angepasst oder die Stop-Loss-Einheiten erhöht werden, um einzelne Verluste zu kontrollieren.
Die Strategie kann vor allem in folgenden Bereichen optimiert werden:
Optimierung der Parameter des Stoch-Indikators zur Verbesserung der Rückwärtsfangfähigkeit.
Optimierung der Länge der NVI-Zyklen und Verbesserung der Fähigkeit, langfristige Trends zu erkennen.
Erhöhung der Filterbedingungen, um falsche Signale auszuschließen.
Erhöhen Sie Ihre Stop-Loss-Strategie und kontrollieren Sie Ihre Einzelschäden.
Die Strategie basiert auf dem Konzept von kurzfristigen Umkehrungen und langfristigen Trends, um einen stabilen Einstiegsmechanismus zu entwickeln, der die Falschmeldungsrate effektiv kontrolliert und die Stabilität des Signals erhöht. Der nächste Schritt kann optimiert werden, um die Stabilität der Strategie weiter zu verbessern, z. B. durch Anpassung der Parameter, Erhöhung der Filterbedingungen.
/*backtest
start: 2023-12-18 00:00:00
end: 2023-12-21 05:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 29/03/2021
// This is combo strategies for get a cumulative signal.
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
// The strategy sells at market, if close price is lower than the previous close price
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// The theory behind the indexes is as follows: On days of increasing
// volume, you can expect prices to increase, and on days of decreasing
// volume, you can expect prices to decrease. This goes with the idea of
// the market being in-gear and out-of-gear. Both PVI and NVI work in similar
// fashions: Both are a running cumulative of values, which means you either
// keep adding or subtracting price rate of change each day to the previous day`s
// sum. In the case of PVI, if today`s volume is less than yesterday`s, don`t add
// anything; if today`s volume is greater, then add today`s price rate of change.
// For NVI, add today`s price rate of change only if today`s volume is less than
// yesterday`s.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
vFast = sma(stoch(close, high, low, Length), KSmoothing)
vSlow = sma(vFast, DLength)
pos = 0.0
pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0)))
pos
NVI(EMA_Len) =>
pos = 0.0
nRes = 0.0
xROC = roc(close, EMA_Len)
nRes := iff(volume < volume[1], nz(nRes[1], 0) + xROC, nz(nRes[1], 0))
nResEMA = ema(nRes, EMA_Len)
pos := iff(nRes > nResEMA, 1,
iff(nRes < nResEMA, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Negative Volume Index", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- Negative Volume Index ----")
EMA_Len = input(50, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posNVI = NVI(EMA_Len)
pos = iff(posReversal123 == 1 and posNVI == 1 , 1,
iff(posReversal123 == -1 and posNVI == -1, -1, 0))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1 , 1, pos))
if (possig == 1 )
strategy.entry("Long", strategy.long)
if (possig == -1 )
strategy.entry("Short", strategy.short)
if (possig == 0)
strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )