Bilaterale dreistufige quantitative Handelsstrategie für gleitende Durchschnitte

Schriftsteller:ChaoZhang, Datum: 2024-01-31 16:11:41
Tags:

img

Übersicht

Diese Strategie basiert auf dem bilateralen dreipunktigen gleitenden Durchschnittsindikator. Durch die Berechnung des Mittelwerts des höchsten Preises, des niedrigsten Preises und des Schlusskurses der letzten N-Perioden realisiert sie die Funktion, Preistrends zu beurteilen und Handelssignale zu generieren. Diese Strategie eignet sich für den mittelfristigen und kurzfristigen Handel und kann Marktlärm effektiv filtern und Preistrends erfassen.

Strategieprinzip

Der Kernindikator dieser Strategie ist der bilaterale dreipunktige gleitende Durchschnitt (XHL2, XHLC3). XHL2 berechnet den Durchschnittswert des höchsten Preises und des niedrigsten Preises der jüngsten N-Perioden. XHLC3 berechnet den Durchschnittswert des höchsten Preises, des niedrigsten Preises und des Schlusskurses der jüngsten N-Perioden. Diese beiden Indikatoren können die Preisdaten effektiv glätten und die Auswirkungen von kurzfristigen Schwankungen filtern.

Die Strategie beurteilt den Preistrend, indem sie die Differenz nMF zwischen XHL2, XHLC3 und dem Schlusskurs berechnet. Wenn nMF größer als ein Faktor ist, wird beurteilt, dass der Preis in einem Aufwärtstrend ist; wenn nMF kleiner als ein negativer Faktor ist, wird beurteilt, dass der Preis in einem Abwärtstrend ist. In Kombination mit dem Handelsvolumen wird der Indikator nRES berechnet. nRES größer als 0 zeigt ein Kaufsignal an, und kleiner als 0 zeigt ein Verkaufssignal an. Die Trendrichtung und Handelssignale werden auf der Grundlage des positiven/negativen Zeichen- und Größenverhältnisses von nRES bestimmt.

Analyse der Vorteile

Die Vorteile dieser Strategie sind:

  1. Die Verwendung des bilateralen dreipunktischen gleitenden Durchschnitts kann Marktlärm effektiv filtern und mittelfristige und langfristige Preisentwicklungen beurteilen;

  2. Durch die Kombination von Änderungen des Handelsvolumens kann die Richtung des Kapitalflusses genauer bestimmt und Handelssignale ausgegeben werden.

  3. Die Strategie hat wenige Parameter, einfache und leicht verständliche Methoden und ist leicht umzusetzen.

  4. Flexible Einstellung der Anlagerichtung, geeignet für verschiedene Anleger.

Risikoanalyse

Die wichtigsten Risiken dieser Strategie sind:

  1. Die falsche Einstellung der Parameter kann zu fehlerhaften Handelssignalen führen.

  2. In einem langfristig starken Trendmarkt kann die Strategie zu viele falsche Handelssignale erzeugen;

  3. In einem volatilen Markt können zu kleine Stop-Loss-Einstellungen das Verlustrisiko erhöhen.

Lösungen:

  1. Optimierung der Parameter und Bestimmung der besten Parameter auf der Grundlage von Backtesting;

  2. Beurteilen Sie die Zuverlässigkeit der Signale in Kombination mit Trends und Unterstützungs-/Widerstandsfaktoren;

  3. Entspannen Sie den Stop-Loss-Bereich angemessen, um Einzelverluste zu kontrollieren.

Optimierungsrichtlinien

Die Optimierungsrichtungen dieser Strategie:

  1. Optimierung der gleitenden Durchschnittsparameter und Handelsvolumenparameter zur Verbesserung der Empfindlichkeit des Indikators;

  2. Hinzufügen von Trendbeurteilungsindikatoren zur Verbesserung der Genauigkeit der Handelssignale;

  3. Hinzufügen von Stop-Loss-Strategien zur Verringerung des Verlustrisikos;

  4. Kombination von Methoden des maschinellen Lernens zur automatischen Optimierung von Parametern.

Zusammenfassung

Diese Strategie basiert auf dem bilateralen dreipunktigen gleitenden Durchschnittsindikator, um die mittelfristige und langfristige Trendrichtung der Preise zu bestimmen. Sie verwendet Veränderungen des Handelsvolumens, um Kapitalzuflüsse und -ausflüsse zu bestätigen, und erzeugt schließlich Kauf- und Verkaufs-Handelssignale. Die Strategie bietet großen Raum für Optimierung und kann in mehreren Dimensionen verbessert werden, um sich komplexeren Marktumgebungen anzupassen.


/*backtest
start: 2023-01-24 00:00:00
end: 2024-01-30 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 25/06/2018
// The FVE is a pure volume indicator. Unlike most of the other indicators 
// (except OBV), price change doesn?t come into the equation for the FVE (price 
// is not multiplied by volume), but is only used to determine whether money is 
// flowing in or out of the stock. This is contrary to the current trend in the 
// design of modern money flow indicators. The author decided against a price-volume 
// indicator for the following reasons:
// - A pure volume indicator has more power to contradict.
// - The number of buyers or sellers (which is assessed by volume) will be the same, 
//     regardless of the price fluctuation.
// - Price-volume indicators tend to spike excessively at breakouts or breakdowns.
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Finite Volume Elements (FVE) Backtest", shorttitle="FVE")
Period = input(22, minval=1)
Factor = input(0.3, maxval=1)
reverse = input(false, title="Trade reverse")
xhl2 = hl2
xhlc3 = hlc3
xClose = close
xVolume = volume
xSMAV = sma(xVolume, Period)
nMF = xClose - xhl2 + xhlc3 - xhlc3[1]
nVlm = iff(nMF > Factor * xClose / 100,  xVolume, 
         iff(nMF < -Factor * xClose / 100, -xVolume, 0))
nRes = nz(nRes[1],0) + ((nVlm / xSMAV) / Period) * 100
pos = iff(nRes > nRes[1] and nRes > nRes[2], 1,
         iff(nRes < nRes[1] and nRes < nRes[2], -1, nz(pos[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)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue ) 
plot(nRes, color=red, title="FVE")

Mehr