
Diese Handelsstrategie basiert auf einem einfachen Moving Average- und Equi-Line-Cross-System. Sie nutzt die Kreuzung von schnellen Moving Averages und langsamen Moving Averages in verschiedenen Perioden als Signal für eine Übernahme. Wenn ein schneller Moving Average den langsamen Moving Average von unten durchquert, macht man einen Übergang.
Die Strategie verwendet eine schnelle Periode wie einen 60-Tage-Simple Moving Average und eine langsame Periode wie einen 200-Tage-Simple Moving Average. Schnelle Moving Averages reagieren schneller auf Preisveränderungen und spiegeln die jüngsten Preistrends wider. Langsame Moving Averages reagieren langsamer auf Preisveränderungen und spiegeln die mittleren und langen Trends wider.
Wenn die kurzperiodische Durchschnittslinie von unten durch die langperiodische Durchschnittslinie geht, bedeutet dies, dass die kurzperiodischen Preise steigen und in den Mehrkopfmarkt gelangen. Wenn die kurzperiodische Durchschnittslinie von oben nach unten durch die langperiodische Durchschnittslinie geht, bedeutet dies, dass die kurzperiodischen Preise fallen und in den Leerkopfmarkt gelangen.
Die Strategie nutzt das Querprinzip der Durchschnittslinie, um die Richtung des Trends zu bestimmen. Wenn die kurzperiodischen Preise schneller steigen, treibt die kurzperiodische Durchschnittslinie den langperiodischen Durchschnitt nach oben und durchquert ihn von unten. Dies bedeutet, dass der Markt in eine steigende Tendenz eintritt und mehr getan werden sollte.
Die Kurse werden durch die Kreuzung von schnellen und langsamen Durchschnittslinien erfasst, um die Wendepunkte der Preisentwicklung zu erfassen, und die Positionen werden entsprechend angepasst. Dies ist das Hauptprinzip der Strategie, Trends zu beurteilen und Handelssignale zu erzeugen.
Es ist möglich, die Schwankungsfrequenz der verschiedenen Sorten an die Periodiparameter des Moving Averages anzupassen; die Stop-Loss- und Stop-Stopp-Strategie zu verbessern, indem kompliziertere Indikatoren verwendet werden, um Fehlsignale zu reduzieren; die Strategie zu optimieren und die Strategie zu verbessern, indem Methoden wie die Filterung des Handelsvolumens hinzugefügt werden.
Die Strategie kann in folgenden Bereichen weiter optimiert werden:
Optimierung der schnellen und langsamen Perioden der Moving Average-Parameter für Varianten mit unterschiedlichen Schwingungsfrequenzen. Es können mehr Kombinationen getestet werden, um die optimalen Parameter zu finden.
Die Eintrittsbedingungen wurden geändert und weitere Kennzahlen, wie z. B. die Überschreitung des Handelsvolumens, wurden gefiltert, um falsche Signale zu reduzieren.
Verbesserte Stop-Loss-Strategien wie Tracking-Stops oder Dynamic-Stops, um den Gewinn zu optimieren.
Berücksichtigen Sie die Transaktionskosten, wie z. B. Gebühren, und fügen Sie ein Kostenbewertungsmodul hinzu, um die Simulationen realistischer zu machen.
Das Design des Parameter Universums sucht nach der optimalen Kombination von Parametern für verschiedene Sorten.
Erhöhung der lokalen Merkmalerkennung, Unterstützung bei der Beurteilung von Trendwendepunkten und Verbesserung der Zeit für die Eröffnung und Schließung von Positionen.
Durch strategische Optimierung der Systeme können die Rentabilität und Stabilität erheblich verbessert und Rücknahmen verringert werden.
Die Handelsstrategie basiert auf der Überschneidung von Gleichgewichten, um die Preisentwicklung zu bestimmen. Sie gehört zu den typischen Trend-Tracking-Strategien. Sie nutzt die Kreuzung verschiedener periodischer Gleichgewichte als Multi-Lose-Signal, um die Trendrichtung durch eine Kombination aus schnellen Mittelwerten und langsamen Mittelwerten zu bestimmen und eine effektive Trendfangung zu erreichen. Die Strategie ist stabil, zuverlässig, leicht zu verstehen und zu implementieren.
/*backtest
start: 2024-01-04 00:00:00
end: 2024-01-11 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/
// © thebearfib
//
//@version=5
//
strategy("x-over 150d_200d_sma - Free", overlay = true)
repaint = input.bool(defval = false, title = "[RePaint] Uncheck to see real time results") //when you deselect it - it shows what would have happened in real time while trading the system
srcmc = request.security(syminfo.tickerid, 'D', open, lookahead= repaint ? barmerge.lookahead_on : barmerge.lookahead_off, gaps=barmerge.gaps_off)
fast_length = input(title="Fast Length", defval=60)
slow_length = input(title="Slow Length", defval=275)
_fast = ta.sma(srcmc, fast_length)
_slow = ta.sma(srcmc, slow_length)
plot(_fast,
title="Fast SMA",
color=color.red,
linewidth = 1)
plot(_slow,
title="Slow SMA",
color=color.white,
linewidth = 3)
//
// ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
// ————————————————————————————————— Calculating —————————————————————————————————————————————————————————————————————————
// ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
//
longProfitPerc = input.float(title="Long Take Profit (%)", minval=0.01, step=1.0, defval=42) * .01
longStopPerc = input.float(title="Long Stop (%)", minval=0.01, step=1.0, defval=13) * .01
//
// ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
// ————————————————————————————————— Stop Conditions ————————————————————————————————————————————————————————————————————
// ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
longExitPrice = strategy.opentrades > 0 ? strategy.position_avg_price * (1 + longProfitPerc) : srcmc * (1 + longProfitPerc)
longStopPrice = strategy.opentrades > 0 ? strategy.position_avg_price * (1 - longStopPerc) : srcmc * (1 - longStopPerc)
// ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
// ————————————————————————————————— Long Conditions ————————————————————————————————————————————————————————————————————
// ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
longCondition = srcmc > _slow and ta.crossover(_fast, _slow)
closeCondition = ta.crossover(srcmc, _slow)
if (longCondition)
strategy.entry("Entry (long)", strategy.long, comment="→ 𝗟𝗴 𝗘𝗻𝘁𝗿𝘆")
if (closeCondition)
strategy.close("Entry (long)", comment=" 𝗟𝗴 𝗘𝘅𝗶𝘁 ←")
if (strategy.position_size > 0)
strategy.exit(id="XL", limit=longExitPrice, stop = longStopPrice, comment_profit = "Take Profit", comment_loss = "Stop Loss")
//
// ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
// ————————————————————————————————— Never the End Just the beginning —————————————————————————————————————————————————
// ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
//