Umkehrvorhersage und Oszillatorkombinationsstrategie


Erstellungsdatum: 2023-10-10 10:39:44 zuletzt geändert: 2023-10-10 10:39:44
Kopie: 1 Klicks: 651
1
konzentrieren Sie sich auf
1617
Anhänger

Überblick

Diese Strategie ist eine Kombination aus Reversal- und Oscillator-Strategien, um zuverlässigere Handelssignale zu erhalten. Sie kombiniert die Reversal Prediction-Strategie und die Chande-Prediction-Oscillator-Strategie, um einen Handel auszuführen, wenn beide Strategien gleichzeitig ein Kauf- oder Verkaufssignal senden.

Strategieprinzip

  1. Umkehrung der Vorurteilsstrategie

    • Der Stochastic-Oszillator wird verwendet, um Überkauf und Überverkauf zu bestimmen.

    • Umkehrung des Kurses, wenn der Preis zwei Bar nach dem Schlusskurs umgekehrt ist und gleichzeitig ein Überkauf- oder Überverkaufsignal des Stochastic Oscillator-Indikators auftritt

  2. Chande prognostiziert eine Strategie für die Oszillatoren

    • Prognose von Preisen mit linearer Regression

    • Die Oszillatorkurve ist gleich der Differenz zwischen dem Schlusskurs und dem prognostizierten Preis

    • Handelsignale werden erzeugt, wenn die tatsächlichen und die prognostizierten Preise deutlich voneinander abweichen

  3. Strategielogik

    • Gleichzeitig berechnen Sie die Signale für die Umkehrvorhersage-Strategie und die Chande-Vorhersage-Oszillator-Strategie

    • Tatsächliche Handelssignale werden nur erzeugt, wenn die Signale der beiden Strategien übereinstimmen, d. h. wenn beide als Kauf- oder Verkaufssignale dienen

    • Verbesserung der Signalsicherheit durch kombinierte Ausfilterung von möglichen Falschsignalen einer einzelnen Strategie

Strategische Stärkenanalyse

  1. Kombination mehrerer Strategien, um die Märkte zu beurteilen und zuverlässiger zu sein

  2. Ausgrenzung von möglichen Falschsignalen bei einem einzigen Technischen Indikator

  3. Umkehrvorurteilungsstrategien, die kurzfristige Umkehrmöglichkeiten erfassen

  4. Chande prognostiziert, dass die Oszillatoren die langfristigen Trends richtig einschätzen

  5. Die Stochastic Oscillator-Indikatorparameter sind flexibel und anpassungsfähig

  6. Die Analyse der verschiedenen Dimensionen von Handelschancen

Risikoanalyse

  1. Kombinationsstrategien erhöhen die Zuverlässigkeit, reduzieren jedoch die Frequenz der Signalerzeugung

  2. Die Optimierung der einzelnen Strategieparameter ist komplexer.

  3. Es ist schwierig zu bestimmen, wann die Umkehrung eintritt, und es besteht die Gefahr von Verlusten.

  4. Die lineare Regression ist nicht für stark schwankende Märkte geeignet.

  5. Beobachten Sie, ob die Aktienkurse von dem stochastischen Oszillator abweichen

  6. Die Daten sind unzureichend, die Wirksamkeit der Festplatte ist fraglich.

Richtung der Strategieoptimierung

  1. Optimierung der Parameter des stochastischen Oszillators und Verkürzung der K- und D-Linien-Perioden

  2. Lineare Regressionszyklen angepasst, um weitere Periodiparameter zu testen

  3. Erhöhung der Stop-Loss-Strategie und Verringerung der Einzelschäden

  4. Modifizierung der Positionsöffnungslogik und Wartezeit, bis der Stochastic-Oszillator vollständig in die Überkauf-Überverkaufszone eingetreten ist

  5. Erweiterung der Analyse der statistischen Merkmale von Handelssorten

  6. In Kombination mit weiteren Indikatoren, wie MACD, bietet dies mehr Dimensionen.

Zusammenfassen

Die Strategie verwendet verschiedene Analysemethoden, um die Signalqualität durch Kombination zu verbessern und gleichzeitig die beiden Aspekte der Entdeckung von kurzfristigen Umkehrungen und der Beurteilung von großen Trends zu berücksichtigen, um eine umfassendere Handelsmöglichkeit zu ergreifen. Die Strategie kann jedoch auf die Wirksamkeit des Realplatzes und die entsprechende Anpassung der Parameter eingegangen werden.

Strategiequellcode
/*backtest
start: 2023-09-09 00:00:00
end: 2023-10-09 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 08/08/2019
// 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 Chande Forecast Oscillator developed by Tushar Chande The Forecast 
// Oscillator plots the percentage difference between the closing price and 
// the n-period linear regression forecasted price. The oscillator is above 
// zero when the forecast price is greater than the closing price and less 
// than zero if it is below.
//
// 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

ChandeForecastOscillator(Length, Offset) =>
    pos = 0
    xLG = linreg(close, Length, Offset)
    xCFO = ((close -xLG) * 100) / close
    pos := iff(xCFO > 0, 1,
           iff(xCFO < 0, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Chande Forecast Oscillator", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
LengthCFO = input(14, minval=1)
Offset = input(0)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posChandeForecastOscillator = ChandeForecastOscillator(LengthCFO, Offset)
pos = iff(posReversal123 == 1 and posChandeForecastOscillator == 1 , 1,
	   iff(posReversal123 == -1 and posChandeForecastOscillator == -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 )