Varianzumkehr-Handelsstrategie


Erstellungsdatum: 2023-10-31 14:42:13 zuletzt geändert: 2023-10-31 14:42:13
Kopie: 0 Klicks: 650
1
konzentrieren Sie sich auf
1617
Anhänger

Varianzumkehr-Handelsstrategie

Überblick

Die Differenz-Umkehr-Trading-Strategie erzeugt ein Handelssignal, wenn diese Rate umgekehrt wird, indem sie die Rate der gebuchten und gebuchten und gebuchten Optionen berechnet. Die Strategie kombiniert einfache Fundmanagementregeln, um einen Gewinn zu erzielen. Sie gilt für die 30-Minuten-Perioden der NDX und SPX. Die Schwingungsindikatoren müssen angepasst werden, um den richtigen Umkehrpunkt zu reflektieren.

Strategieprinzip

Der Kern der Strategie ist der Mittelwert der Kurs-/Bewertungsoptionsquote und ihre Standarddifferenz. Zuerst wird der Mittelwert der Kurs-/Bewertungsoptionsquote für die letzten 20 Tage berechnet, dann der Standarddifferenz für die letzten 30 Tage.

Wenn die Rate nach dem Überschreiten wieder über dem Durchschnitt liegt, wird die Off-Position ausgeglichen. Die Stop-Loss-Linie ist auf 1% des Eröffnungspreises festgelegt. Die Stop-Loss-Linie ist auf die Dreifache der Stop-Loss-Distanz des Eröffnungspreises festgelegt.

Analyse der Stärken

Der größte Vorteil dieser Strategie besteht darin, die Wendepunkte der Marktstimmung zu erfassen. Wenn der Markt übermäßig pessimistisch oder übermäßig optimistisch ist, treten die Kurs-Bewertungs-Option-Verhältnisse abnormal auf, und die Umkehrung kann die Möglichkeit einer lokalen Umkehrung erfassen. Außerdem haben die Geldmanagement-Regeln eine Stop-Loss- und Stop-Distance, um das Risiko und die Gewinne eines einzelnen Handels effektiv zu kontrollieren.

Risikoanalyse

Das Hauptrisiko dieser Strategie liegt in den Problemen mit der Parameter-Einstellung. Wenn die Parameter nicht richtig eingestellt sind, kann dies dazu führen, dass die Handelssignale zu häufig sind und somit keine größeren Umkehrmöglichkeiten erfasst werden. Zusätzlich kann das Umkehrsignal falsch durchbrochen werden, was zu Verlusten führt.

Optimierungsrichtung

Es kann in Kombination mit anderen Indikatoren in Betracht gezogen werden, um Rückschlagsignale zu verifizieren und zu verhindern, dass Sie durch falsche Durchbrüche irregeführt werden. Zum Beispiel kann ein Handelsvolumen-Indikator hinzugefügt werden, der nur dann Rückschlagsignale berücksichtigt, wenn der Handelsvolumen zunimmt. Es kann auch einige Trendindikatoren hinzugefügt werden, um Rückschlagoperationen zu vermeiden.

Zusammenfassen

Die Strategie versucht, Marktwechselpunkte zu erfassen, indem sie die Optionsquote von bullish/bullish berechnet und mit einfachen Geldmanagementprinzipien kombiniert wird. Ihr Vorteil besteht darin, dass Sie die Möglichkeit einer lokalen Wende ergreifen können, aber es besteht auch die Gefahr, von einem falschen Durchbruch irregeführt zu werden. Die Stabilität und die Ertragsfähigkeit der Strategie können durch Optimierung der Parameter-Einstellungen und die Hinzufügung von mehr Verifizierungsindikatoren verbessert werden.

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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © I11L

//@version=5
strategy("I11L Long Put/Call Ratio Inversion", overlay=false, pyramiding=1, default_qty_value=10000, initial_capital=10000, default_qty_type=strategy.cash)

SL = input.float(0.01,step=0.01)
CRV = input.float(3)
TP = SL * CRV

len = input.int(30,"Lookback period in Days",step=10)
ratio_sma_lookback_len = input.int(20,step=10)
mult = input.float(1.5,"Standard Deviation Multiple")

ratio_sma = ta.sma(request.security("USI:PCC","D",close),ratio_sma_lookback_len)

median = ta.sma(ratio_sma,len)
standartDeviation = ta.stdev(ratio_sma,len)
upperDeviation = median + mult*standartDeviation
lowerDeviation = median - mult*standartDeviation


isBuy = ta.crossunder(ratio_sma, upperDeviation)// and close < buyZone
isCloseShort = (ratio_sma > median and strategy.position_size < 0)
isSL = (strategy.position_avg_price * (1.0 - SL) > low and strategy.position_size > 0) or (strategy.position_avg_price * (1.0 + SL) < high and strategy.position_size < 0)
isSell = ta.crossover(ratio_sma,lowerDeviation) 
isTP = strategy.position_avg_price * (1 + TP) < high

if(isBuy)
    strategy.entry("Long", strategy.long)

if(isCloseShort)
    strategy.exit("Close Short",limit=close)

if(isSL)
    strategy.exit("SL",limit=close)

if(isTP)
    strategy.exit("TP",limit=close)
    
plot(ratio_sma,color=color.white)
plot(median,color=color.gray)
plot(upperDeviation,color=color.rgb(0,255,0,0))
plot(lowerDeviation,color=color.rgb(255,0,0,0))

bgcolor(isBuy?color.rgb(0,255,0,90):na)
bgcolor(isSell?color.rgb(255,0,0,90):na)