Fisherman-Indikator – Trailing-Stop-Loss-Strategie


Erstellungsdatum: 2024-02-02 14:57:33 zuletzt geändert: 2024-02-02 14:57:33
Kopie: 0 Klicks: 717
1
konzentrieren Sie sich auf
1617
Anhänger

Fisherman-Indikator – Trailing-Stop-Loss-Strategie

Überblick

Die Fischer-Indikator-Mobilstop-Strategie ist eine quantitative Handelsstrategie, die die Fischer-Indikator-Mobilstop-Strategie kombiniert. Die Strategie nutzt die Fischer-Indikator-Mobilstop-Strategie, um Kauf- und Verkaufssignale zu erzeugen, während die Stop-Tracking-Strategie eingerichtet wird, um die Gewinne zu sperren und gleichzeitig die Gewinne zu schützen.

Strategieprinzip

  1. Eingabe eines Datumsbereichs, der einen Zeitraum von Rückmessungen oder Festplatten einschränkt
  2. Die Parameter für den Fischer-Indikator eingeben, Standard 2 Perioden
  3. Eingabe Stop-Loss-Ratio, 5% Stop-Loss und 2% Stop-Loss als Standard
  4. Haupt- und Signalleitungen für die Berechnung der Fischerindex
  5. Wenn Sie die Signalleitung auf der Hauptleitung durchqueren, erzeugen Sie ein Kaufsignal.
  6. Setzen Sie einen Tracking-Stopp, bei einem Preisrückgang von 2% nach dem Eintritt in eine Long-Position
  7. Der Preisanstieg um mehr als 5% wird gestoppt.

Analyse der Stärken

  1. Der Fischer-Indikator ist leicht zu erkennen, und die Kaufsignale sind genau.
  2. Ein Stop-Loss-Tracking-Mechanismus kann den Großteil der Gewinne sperren, während die Überschreitung des eingestellten Stop-Loss-Punktes vermieden wird
  3. Anpassbare Parameter für unterschiedliche Marktumgebungen
  4. Einfach zu bedienen und zu verstehen

Risikoanalyse

  1. Unzureichende Parameter können zu extremem Handel führen und sollten mit Vorsicht getestet werden
  2. Ein zu großer Stop-Loss kann die Auswirkungen von Outiliers verursachen, was zu mehr als erwarteten Verlusten führt
  3. Eine zu niedrige Stop-Limit kann zu einem frühen Abbau der Gewinne führen und die Profitabilität beeinträchtigen.
  4. Die geeigneten Parameter sollten je nach Sorte festgelegt werden.

Die Optimierung der Parameter kann durch Anpassung der Stop-Loss-Stopp-Ratio, die Prüfung verschiedener Kombinationen von Parametern; in Kombination mit anderen Indikatoren Filtersignale; Einstellung der Position-Management-Regeln, um das einzelne Risiko zu steuern.

Optimierungsrichtung

  1. Optimierung der Parameter für die Indikatoren der Fischer, um die Auswirkungen verschiedener Parameter auf die Strategie zu testen
  2. In Kombination mit anderen Indikatoren wie MACD, KD und Filtersignale, um die Signalqualität zu verbessern
  3. Erhöhung der Voraussetzungen für die Eröffnung einer Position, wie z. B. durchbrechen der Brin-Band-Strecke
  4. Erweiterung des Positionsmanagement-Moduls, um die Risiken einer einzelnen Position zu kontrollieren
  5. Optimierung der mobilen Stop-Loss-Methoden, wie z. B. der glatten mobilen Stop-Loss, der Chandelier-Exit

Zusammenfassen

Die mobile Stop-Loss-Strategie von Fisherman Indicators integriert Trendbeurteilung und Stop-Loss-Management. Durch die Optimierung der Parameter, die Kombination der Indikatoren und die Verbesserung der Stop-Loss-Methode kann sie für die meisten Sorten geeignet sein und es lohnt sich, sie zu erforschen und zu praktizieren, um bessere Gewinne zu erzielen, wenn übertragbare Verluste verhindert werden.

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

//@version=5
strategy("Fisher_Yurik Strategy with Trailing Stop", shorttitle="FY Strategy", overlay=true)

// Date Ranges 
from_month = input(defval = 1, title = "From Month")
from_day   = input(defval = 1, title = "From Day")
from_year  = input(defval = 2021, title = "From Year")
to_month   = input(defval = 1, title = "To Month")
to_day     = input(defval = 1, title = "To Day")
to_year    = input(defval = 9999, title = "To Year")
start  = timestamp(from_year, from_month, from_day, 00, 00)  // backtest start window
finish = timestamp(to_year, to_month, to_day, 23, 59)        // backtest finish window
window = true
period = input(2, title='Period')
cost = input.float(1.05, title='profit level ', step=0.01)
dusus = input.float(1.02, title='after the signal', step=0.01)

var float Value = na
var float Fish = na
var float ExtBuffer1 = na
var float ExtBuffer2 = na

price = (high + low) / 2
MaxH = ta.highest(high, period)
MinL = ta.lowest(low, period)

Value := 0.33 * 2 * ((price - MinL) / (MaxH - MinL) - 0.5) + 0.67 * nz(Value[1])
Value := math.max(math.min(Value, 0.999), -0.999)
Fish := 0.5 * math.log((1 + Value) / (1 - Value)) + 0.5 * nz(Fish[1])

up = Fish >= 0

ExtBuffer1 := up ? Fish : na
ExtBuffer2 := up ? na : Fish

var float entryPrice = na
var float stopPrice = na
 
if (ExtBuffer1 > ExtBuffer1[1])
    entryPrice := close*dusus
    stopPrice := close * cost 
 
if (ExtBuffer2 < ExtBuffer2[1])
    entryPrice := close
    stopPrice := close * cost

// Sadece seçilen test döneminde işlem yapma koşulu eklenmiştir
strategy.entry("Buy", strategy.long, when=ExtBuffer1 > ExtBuffer1[1] and window)
strategy.exit("Take Profit/Trailing Stop", from_entry="Buy", when=(close >= entryPrice * cost) or (close < stopPrice), trail_offset=0.08, trail_price=entryPrice * cost)