Quantitative Bitcoin-Handelsstrategie, die MACD, RSI und FIB kombiniert


Erstellungsdatum: 2023-12-26 17:08:03 zuletzt geändert: 2023-12-26 17:08:03
Kopie: 0 Klicks: 932
1
konzentrieren Sie sich auf
1623
Anhänger

Quantitative Bitcoin-Handelsstrategie, die MACD, RSI und FIB kombiniert

Überblick

Diese Strategie, die als Gold-Cross-Finch-Strategie bezeichnet wird, kombiniert den Moving Average-Tech-Indikator MACD, den relativ starken RSI und die Fibonacci-Rückzug/Ausdehnungstheorie im Gold-Split-Line-Prinzip und ermöglicht den quantitativen Handel mit Kryptowährungen wie Bitcoin.

Strategieprinzip

  1. Der MACD-Index beurteilt die Kauf- und Verkaufspunkte.
  • EMA-Perioden 15 und 30 für MACD-Schnell- und Langzeitlinien
  • Das ist die Art, wie man über die schnelle Linie als Kaufpunkt und über die langsame Linie als Verkaufspunkt urteilt.
  1. Der RSI-Indikator filtert falsche Signale
  • Setzen Sie den RSI-Parameter auf 50 Perioden
  • Der RSI-Indikator kann verwendet werden, um die falschen Signale des MACD zu filtern
  1. Die Fibonacci-Theorie definiert SUPPORT/RESISTANCE
  • Höchste und niedrigste Preise der jüngsten Zeit (z. B. 38 K-Linien)
  • Berechnung von 0,5 Fibonacci-Rückzug und Ausdehnung der Goldschnittlinie
  • Verwendet als Unterstützung und Widerstand
  1. Die Durchschnittslinie und der RSI beurteilen Überkauf und Überverkauf.
  • 50 Die Periodische Durchschnittslinie zeigt an, ob ein Überkauf oder Überverkauf stattfindet.
  • Der RSI ist auch ein Indikator für Überkauf und Überverkauf.
  1. Gegenpositionseröffnung
  • Benutzer haben die Möglichkeit, sich zu entscheiden.
  • Mehrfachunterbrechungslogik flexibel angepasst nach Benutzerwunsch

Analyse der Stärken

Der größte Vorteil dieser Strategie besteht darin, dass sie rund um die Uhr funktioniert und die Kosten für die Arbeitskosten erheblich reduziert. Darüber hinaus können Sie durch eine Kombination verschiedener Indikatoren die Gewinnrate verbessern, was besonders deutlich in den Bull Markets ist. Die konkreten Vorteile sind:

  1. Sieben*24 Stunden vollautomatische Quantifizierung ohne menschliche Intervention
  2. Der MACD-Indikator beurteilt die richtige Kauf- und Verkaufszeit
  3. Der RSI-Indikator filtert einige falsche Signale aus
  4. Die Fibonacci-Theorie erhöht die Basis für Handelsentscheidungen
  5. 50 Durchschnitt und RSI beurteilen Überkauf und Überverkauf
  6. Anpassung an Marktveränderungen durch Rückwirkung

Risikoanalyse

Diese Strategie ist mit Risiken verbunden, die hauptsächlich aus einem Rückschlag in der Marktentwicklung resultieren, bei dem Stop Losses schwerer wirken können. Darüber hinaus besteht ein gewisses Risiko aus einer zu langen Haltedauer. Die Hauptrisiken sind:

  1. Die Schadensbegrenzung ist zu nahe, um die Masse zu schützen.
  2. Systematische Risiken bei zu langen Haltungen

Die entsprechenden Lösungen sind wie folgt:

  1. Entspannung der Stoppdistanz, damit die Stoppdistanz wirksam wirkt
  2. Optimierung des Positionszyklus und Verringerung des Risikos einer zu langen Haltedauer

Optimierungsrichtung

Die Strategie kann in folgenden Bereichen optimiert werden:

  1. Optimierung der Parameter des MACD-Indikators, um die Genauigkeit von Kauf- und Verkaufssignalen zu verbessern
  2. Optimierung der Parameter des RSI und Verbesserung der Funktionalität des Indikators
  3. Die Fibonacci-Theorie mit mehr als einer Periode
  4. Weitere Filteranzeigen, um die Wahrscheinlichkeit von Falschsignalen weiter zu verringern
  5. Zusammen mit mehr Big Cycle Indikatoren zu Markttrends

Zusammenfassen

Diese Strategie kombiniert mehrere quantitative Indikatoren, um zu entscheiden, wann zu kaufen und zu verkaufen, und kann den Kryptowährungsmarkt rund um die Uhr automatisieren. Durch die Optimierung der Indikatorparameter und die Hinzufügung von mehr Hilfsindikatoren wird erwartet, dass die Strategie die Ertragslage weiter erhöht. Die Strategie kann den Benutzern erhebliche Kosten für die manuelle Betriebszeit sparen und ist für quantitative Händler eine gründliche Untersuchung und Anwendung wert.

Strategiequellcode
/*backtest
start: 2023-12-18 00:00:00
end: 2023-12-25 00:00:00
period: 10m
basePeriod: 1m
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/
// © onurenginogutcu

//@version=4
strategy("STRATEGY R18-F-BTC", overlay=true, margin_long=100, margin_short=100)

///////////default girişler 1 saatlik btc grafiği için geçerli olmak üzere - stop loss'lar %2.5 - long'da %7.6 , short'ta %8.1

sym = input(title="Symbol", type=input.symbol, defval="BINANCE:BTCUSDT") /////////btc'yi indikatör olarak alıyoruz

lsl = input(title="Long Stop Loss (%)",
     minval=0.0, step=0.1, defval=2.5) * 0.01
     
ssl = input(title="Short Stop Loss (%)",
     minval=0.0, step=0.1, defval=2.5) * 0.01
     
longtp = input(title="Long Take Profit (%)",
     minval=0.0, step=0.1, defval=7.6) * 0.01
     
shorttp = input(title="Short Take Profit (%)",
     minval=0.0, step=0.1, defval=7.5) * 0.01
     
capperc = input(title="Capital Percentage to Invest (%)",
     minval=0.0, maxval=100, step=0.1, defval=90) * 0.01
     
choice = input(title="Reverse ?", type=input.bool, defval=false)

symClose = security(sym, "", close)
symHigh = security(sym, "", high)
symLow = security(sym, "", low)

i = ema (symClose , 15) - ema (symClose , 30) ///////// ema close 15 ve 30 inanılmaz iyi sonuç verdi (macd standartı 12 26)
r = ema (i , 9)

sapust = highest (i , 100) * 0.729 //////////0.729 altın oran oldu 09.01.2022
sapalt = lowest (i , 100) * 0.729  //////////0.729 altın oran oldu 09.01.2022

///////////highx = highest (close , 365) * 0.72 fibo belki dahiledilebilir
///////////lowx = lowest (close , 365) * 1.272 fibo belki dahil edilebilir
simRSI = rsi (symClose , 50 ) /////// RSI DAHİL EDİLDİ "50 MUMLUK RSI EN İYİ SONUCU VERİYOR"


//////////////fibonacci seviyesi eklenmesi amacı ile koyuldu fakat en iyi sonuç %50 seviyesinin altı ve üstü (low ve high 38 barlık) en iyi sonuç verdi
fibvar = 38
fibtop = lowest (symLow , fibvar) + ((highest (symHigh , fibvar) - lowest (symLow , fibvar)) * 0.50)
fibbottom = lowest (symLow , fibvar) + ((highest (symHigh , fibvar) - lowest (symLow , fibvar)) * 0.50)

///////////////////////////////////////////////////////////// INDICATOR CONDITIONS

longCondition = crossover(i, r) and i < sapalt and symClose < sma (symClose , 50) and simRSI < sma (simRSI , 50) and symClose < fibbottom
shortCondition = crossunder(i, r) and i > sapust and symClose > sma (symClose , 50) and simRSI > sma (simRSI , 50)  and symClose > fibtop

////////////////////////////////////////////////////////////////

///////////////////////////////////////////STRATEGY ENTRIES AND STOP LOSSES /////stratejilerde kalan capital için strategy.equity kullan (bunun üzerinden işlem yap)


if (choice == false and longCondition)
    strategy.entry("Long", strategy.long , qty = capperc * strategy.equity / close ,   when = strategy.position_size == 0)
   

if (choice == false and shortCondition)
    strategy.entry("Short" , strategy.short , qty = capperc * strategy.equity / close ,  when = strategy.position_size == 0)

if (choice == true and longCondition)
    strategy.entry("Short" , strategy.short , qty = capperc * strategy.equity / close ,  when = strategy.position_size == 0)

if (choice == true and shortCondition)
    strategy.entry("Long", strategy.long , qty = capperc * strategy.equity / close ,   when = strategy.position_size == 0)
    

if (strategy.position_size > 0)
    strategy.exit("Exit Long", "Long", stop=strategy.position_avg_price*(1 - lsl) , limit=strategy.position_avg_price*(1 + longtp))

if (strategy.position_size < 0)
    strategy.exit("Exit Short", "Short", stop=strategy.position_avg_price*(1 + ssl) , limit=strategy.position_avg_price*(1 - shorttp))


////////////////////////vertical colouring signals
bgcolor(color=longCondition ? color.new (color.green , 70) : na)
bgcolor(color=shortCondition ? color.new (color.red , 70) : na)