Günstig kaufen und teuer Gewinn mitnehmen


Erstellungsdatum: 2023-11-23 11:03:18 zuletzt geändert: 2023-11-23 11:03:18
Kopie: 1 Klicks: 667
1
konzentrieren Sie sich auf
1617
Anhänger

Günstig kaufen und teuer Gewinn mitnehmen

Überblick

Die Strategie basiert auf dem Gedanken, die niedrigsten Punkte des Marktes zu kaufen und zu verkaufen. Sie verfolgt die höchsten und niedrigsten Preise der letzten Zeiträume, errichtet mehrere Positionen, wenn der Preis die niedrigsten Preise überschreitet, und platziert, wenn der Preis den höchsten Preis überschreitet oder die Stopp-Bedingungen erreicht. Die Strategie enthält außerdem einen optionalen Trendfilter, der nur dann gekauft wird, wenn der Preis im Aufwärtstrend ist.

Strategieprinzip

Berechnung der niedrigsten und höchsten Preise

  • Mindestpreise ((lowcriteria): Aufruf der Funktion ta.lowest, basierend auf dem vom Benutzer eingestellten Rückblickzyklus ((Standard 20 K-Linien) berechnen Sie die niedrigsten Preise der letzten Zeiträume und zeichnen Sie eine niedrigste Preislinie.

  • Höchste Preise ((highcriteria): Die Funktion ta.highest wird auf der Grundlage des vom Benutzer festgelegten Rückblickzyklus ((Standard 10 K-Linien) verwendet, um die höchsten Preise der vergangenen Zeiträume zu berechnen und die höchste Preislinie zu zeichnen.

Eintrittszeichen

Wenn der aktuelle Preis die Mindestpreislinie überschreitet, wird ein Kaufsignal ausgesendet, um eine Mehrkopfposition aufzubauen.

Startsignal

Es gibt zwei Möglichkeiten:

  1. Fixed-Stop-Hold: Der Stop-Hold-Harding wird ausgeschaltet, wenn der Preis den festgelegten Stop-Hold-Level erreicht (wenn der Einstiegspreis 8% überschreitet).

  2. Höchstpreis-Breakout: Wenn der Preis unter die Höchstpreislinie fällt, wird eine Trendwende beurteilt, und die Position wird angehalten.

Trendfilter

Die EMA-Gehaltseite, die die Richtung des Trends bestimmt, wird nur dann gekauft, wenn der Preis über der EMA-Gehaltseite liegt (als Aufwärtstrend bezeichnet). Dieser Filter kann optional eingeschaltet oder ausgeschaltet werden.

Analyse der Stärken

  • Die Strategie, die durch die niedrigsten Punkte zu kaufen und die höchsten Punkte zu verkaufen, entspricht den grundlegenden Regeln des Marktes.

  • Es wurde ein Trendbeurteilungsmechanismus eingeführt, um zu vermeiden, dass bei Preisschwankungen häufig Positionen aufgenommen werden.

  • Es gibt zwei Ausgangsoptionen, die sowohl eine hohe Stop-Loss als auch eine niedrigere Verlustquote ermöglichen.

  • Anpassbare Parameter, die sich an ein breiteres Marktumfeld anpassen.

  • Die Strategie kann durch Parameteranpassung, Filterdesign usw. weiterentwickelt werden.

Risikoanalyse

  • Ein Fixed Stop kann sich nicht an die tatsächliche Marktentwicklung anpassen und kann zu einem vorzeitigen Stop oder zu geringen Stop-Werten führen.

  • Wenn der Verkaufspreis über den Höchstpreis hinausgeht, kann ein erheblicher Verlust entstehen, der nicht wirksam kontrolliert werden kann.

  • Die EMA beurteilt Trends nur nach einem bestimmten historischen Zeitraum und kann die tatsächliche Trendwende hinter sich lassen.

  • Die Daten sind nicht repräsentativ für die Zukunft, und die Wirksamkeit der Festplatte ist unsicher.

Optimierungsrichtung

  • Hinzufügen von Stop-Methoden, wie beispielsweise mobile Stop-Methoden oder Level-Difference-Stop-Methoden, so dass die Stop-Level in Echtzeit an die Marktentwicklung angepasst werden kann.

  • Optimierung des Ausgangssignals: z.B. durch die Änderung des Ausgangssignals in Abteilungen oder durch die Hinzufügung weiterer Kennzahlen.

  • Optimierung von Trendbeurteilungen, z. B. durch Hinzufügen weiterer Kennzahlen oder durch maschinelles Lernen.

  • Optimierung der Parameter: Ermittlung der optimalen Parameterkombination durch umfangreichere Rückmeldungen.

  • Erhöhung der Stop-Loss-Methoden: Die Verlustkontrolle wird flexibler und effektiver.

Zusammenfassen

Diese Strategie verwendet im Allgemeinen die klassische Low-Buy-High-Sell-Prinzipien, die unter bestimmten Bedingungen bessere Ergebnisse erzielen können. Die Strategie selbst kann jedoch noch optimiert werden, um durch Parameteranpassung, Einstiegsoptimierung, Verbesserung der Stop-Loss-Methode usw. Stabilere Erträge zu erzielen. In diesem Artikel werden die Prinzipien, Vorteile, Risiken und Optimierungsrichtungen der Strategie umfassend und eingehend analysiert.

Strategiequellcode
/*backtest
start: 2022-11-16 00:00:00
end: 2023-11-22 00:00:00
period: 1d
basePeriod: 1h
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="Low-High-Trend Strategy", shorttitle="Low-High-Trend Strategy", process_orders_on_close=true, overlay=true, commission_type=strategy.commission.cash_per_order, commission_value=1, slippage=3, initial_capital = 25000, margin_long=50, margin_short=50, default_qty_type=strategy.percent_of_equity, default_qty_value=110)


// Backtest Date Range Inputs // 
StartTime = input(defval=timestamp('01 Jan 2000 05:00 +0000'), title='Start Time')
EndTime = input(defval=timestamp('01 Jan 2099 00:00 +0000'), title='End Time')
InDateRange = true

// Strategy Calculations //
lowcriteria = ta.lowest(close, input(20, "Lowest Price Lookback", tooltip="The strategy will BUY when the price crosses over the lowest it has been in the last X amount of bars"))[1]
highcriteria = ta.highest(close, input(10, "Highest Price Lookback", tooltip="If Take-Profit is not checked, the strategy will SELL when the price crosses under the highest it has been in the last X amount of bars"))[1]
plot(highcriteria, color=color.green)
plot(lowcriteria, color=color.red)

// Take Profit //
TakeProfitInput = input(true, "Sell with Take-Profit % intead of highest price cross?")
TakeProfit = ta.crossover(close,strategy.position_avg_price*(1+(.01*input.float(8, title="Take Profit %", step=.25))))

// Operational Functions //
TrendFilterInput = input(true, "Only buy when price is above EMA trend?")
ema = ta.ema(close, input(200, "EMA Length"))
TrendisLong = (close>ema)
plot(ema)

// Entry & Exit Functions//
if (InDateRange and TrendFilterInput==true)
    strategy.entry("Long", strategy.long, when = ta.crossover(close, lowcriteria) and TrendisLong)
if (InDateRange and TrendFilterInput==false)
    strategy.entry("Long", strategy.long, when = ta.crossover(close, lowcriteria))
if (InDateRange and TakeProfitInput==true)
    strategy.close("Long", when = TakeProfit)
if (InDateRange and TakeProfitInput==false)
    strategy.close("Long", when = ta.crossunder(close, highcriteria))
if (not InDateRange)
    strategy.close_all()