
Die Strategie verwendet die Variable Index Moving Average (VIDYA) -Anzeige, um die Trendrichtung des Kryptowährungsmarktes zu identifizieren und auf der Grundlage von Trends zu handeln. Es ist eine quantitative Technologietrading-Strategie.
Die Strategie berechnet zunächst den VIDA-Indikator. Der VIDA-Indikator basiert auf der Dynamik von Preisänderungen und kann schneller auf Trendänderungen reagieren. Insbesondere kombiniert er den Chande Momentum Oscillator (CMO) und den einfachen Moving Average (SMA).
Nach der Berechnung von VIDYA beurteilt die Strategie die Richtung der Trendkurve in der Richtung ihrer Kurve. Wenn die VIDYA steigt, macht man mehr; wenn die VIDYA fällt, ist es schlicht.
Der VIDYA-Indikator reagiert schnell und erkennt Trendwechsel frühzeitig, was einen Vorteil gegenüber herkömmlichen Indikatoren wie SMA bietet.
In Kombination mit Trendstärke und Trendrichtung kann man starke und schwache Trends effektiv unterscheiden, um nicht von falschen Trends in wackligen Märkten irregeführt zu werden.
Die Einfachheit der Strategie wird nur durch eine einzelne VIDAY-Kennzahl beurteilt. Es entstehen keine Kollisionen und Irreführungen der Kennzahlen.
Die langfristige Vidia-Einstellung ermöglicht es, langfristige Trends zu verfolgen und die Richtung der wichtigsten Trends zu erfassen.
Die Strategie ist gut bewertet und erwartet positive Erträge.
VIDYA kann auf Markteinbrüche reagieren und kurzfristige Handelschancen nicht sofort nutzen.
Die langfristige VIDA-Einstellung ist nicht empfindlich für kurzfristige Trendänderungen und kann zu einem größeren Rückzug in der Mitte führen.
Eine reine Trend-Tracking-Strategie, die in einem wackligen Umfeld nicht gut funktioniert. Sie kann mit zusätzlichen Filterbedingungen verbunden werden, um die Leistung zu verbessern.
Die Rückmeldedaten sind nicht ausreichend, um die Strategie vollständig zu überprüfen. In der Praxis müssen die Parameter wiederholt optimiert werden.
Die Kryptowährungsmärkte sind sehr volatil, die Positionsgröße und die Stop-Loss-Bedingungen müssen sorgfältig kontrolliert und das Risiko streng verwaltet werden.
Tests mit Additions- oder Schwankungsindikatoren zur Erhöhung der Sensitivität auf Trendänderungen.
Die Kombination von VIDYA mit anderen Trendindikatoren wird als Aggregate-Effekt getestet.
Optimieren Sie Ihre Stop-Loss-Strategie, um bei einer Trendwende so früh wie möglich zu stoppen.
Optimierung der Positionsmanagement-Strategie und dynamische Anpassung der Positionen an die Marktlage.
Stabilität unter verschiedenen Kryptowährungsvarianten und Zyklusparametern testen.
Die Strategie insgesamt ist eine quantitative Trend-Tracking-Strategie. Es verwendet die VIDA-Indikatoren, um die Richtung der Trends zu bestimmen und die langfristige Trendentwicklung der Kryptowährung einfach und effektiv zu erfassen. Es gibt jedoch einige Einschränkungen, die weitere Optimierungen in Bezug auf Stop-Loss- und Positionsmanagement erfordern, um die Strategie stabiler und realer zu machen.
/*backtest
start: 2023-09-29 00:00:00
end: 2023-10-29 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/
// @version=5
// Author = TradeAutomation
strategy(title="VIDYA Trend Strategy", shorttitle="VIDYA Trend Strategy", process_orders_on_close=true, overlay=true, pyramiding=25, commission_type=strategy.commission.percent, commission_value=.075, slippage = 1, initial_capital = 1000000, default_qty_type=strategy.percent_of_equity, default_qty_value=4)
// Backtest Date Range Inputs //
StartTime = input(defval=timestamp('01 Jan 2000 08:00'), group="Date Range", title='Start Time')
EndTime = input(defval=timestamp('01 Jan 2099 00:00'), group="Date Range", title='End Time')
InDateRange = true
// Strategy Inputs //
len = input.int(title="VIDYA Length", defval=50, step=5,group="Trend Settings")
src = input.source(title="VIDYA Price Source",defval=ohlc4, group="Trend Settings")
// VIDYA Calculations //
valpha=2/(len+1)
vud1=src>src[1] ? src-src[1] : 0
vdd1=src<src[1] ? src[1]-src : 0
vUD=math.sum(vud1,9)
vDD=math.sum(vdd1,9)
vCMO=nz((vUD-vDD)/(vUD+vDD))
var VIDYA = 0.0
VIDYA := na(VIDYA[1]) ? ta.sma(src, len) : nz(valpha*math.abs(vCMO)*src)+(1-valpha*math.abs(vCMO))*nz(VIDYA[1])
plot(VIDYA, title="VIDYA",color=(VIDYA > VIDYA[1]) ? color.green : (VIDYA<VIDYA[1]) ? color.red : (VIDYA==VIDYA[1]) ? color.gray : color.black, linewidth=2)
// Entry & Exit Signals //
if (InDateRange)
strategy.entry("Long", strategy.long, when = VIDYA>VIDYA[1])
strategy.close("Long", when = VIDYA<VIDYA[1])
if (not InDateRange)
strategy.close_all()