Die Intelligente Akkumulator-Kaufstrategie ist ein Proof-of-Concept-Strategie. Sie kombiniert wiederkehrenden Buy-in mit technischen Analyse-basierten Ein- und Ausgänge.
Die Strategie wird einen Teil der Fonds zuweisen und weiterhin Positionen erhöhen, solange die technische Analyse Bedingung gültig ist.
Sie können zu Verlustpositionen hinzufügen, um durchschnittlich nach unten zu gehen, oder wählen Sie einen aggressiveren Ansatz, der zu Gewinnpositionen hinzufügt.
Sie können wählen, ob Sie den vollen Gewinn aufnehmen oder Ihre Exits in mehrere gleichgroße Take-Gewinne verteilen.
Sie können auch entscheiden, ob Sie Ihre Ausstiegsbedingungen zulassen, um Ihre Position mit Verlust zu schließen, oder ob Sie einen Mindestgewinnanteil verlangen.
Die Strategie enthält Standardtechnische Analyse Eingangs- und Ausstiegsbedingungen nur um die Idee zu präsentieren, aber die endgültige Absicht dieses Skripts ist, Eingänge und Ausstiege an externe Quellen zu delegieren.
Die internen Bedingungen verwenden einen RSI mit einer Länge von 7, die unterhalb der Bollinger-Bänder mit 1 Standardabweichung für Eintritte und über 7 für Ausgänge kreuzt.
Um die Anzahl der Bestellungen zu steuern, passen Sie die Parameter in den Einstellungen an:
Das Skript ist als Alternative zu täglich oder wöchentlich wiederkehrenden Einkäufen konzipiert, kann sich aber abhängig von der Genauigkeit Ihrer technischen Analysebedingungen auch in kürzeren Zeitrahmen als rentabel erweisen.
Das Skript wird Intelligent genannt, weil der häufigste wiederkehrende Kauf keine Entscheidungsfindung beinhaltet: Kaufen, egal was mit einer bestimmten Häufigkeit. Diese Strategie führt immer noch wiederkehrende Käufe durch, filtert aber einige potenzielle schlechte Einträge aus, die die Position unnötig verzögern können. Der zweite Grund ist auch, von Anfang an eine Ausstiegsstrategie zu haben, die keine wiederkehrende Kaufoption aus der Box bietet.
Die Strategie bestimmt Ein- und Ausstiege basierend auf dem Crossover des RSI-Indikators mit den Bollinger Bands. Insbesondere, wenn der RSI unterhalb der unteren Schiene ist, suchen Sie nach kurzen Einträgen und wenn der RSI über der oberen Schiene ist, suchen Sie nach langen Ausgängen.
Darüber hinaus bietet die Strategie Einstellungen für Pyramiden und gebündelte Ausgänge. Die Summe der Anzahl der Pyramiden und der prozentualen Eigenkapitalmenge, die jedes Mal verwendet wird, sollte 100 entsprechen, um eine übermäßige Verwendung von Geldern zu vermeiden. Sie können wählen, ob Sie das fortgesetzte Pyramiden auf Gewinnpositionen oder nur das Pyramiden auf Verlustpositionen zulassen, um einen durchschnittlichen Rückgang zu erzielen.
Bei dem Ausstieg können Sie wählen, ob Sie den vollen Gewinn oder den Gewinn nach dem festgelegten Prozentsatz in Chargen nehmen möchten.
Insgesamt kombiniert die Strategie wiederkehrende Einkäufe und Indikatoren der technischen Analyse, um durch das Filtern einiger falscher Signale eine stabilere Pyramidenbildung zu erreichen und gleichzeitig flexible Ausstiegsmechanismen zu schaffen, die je nach eigener Risikobereitschaft angepasst werden können.
Der größte Vorteil dieser Strategie im Vergleich zu traditionellen wiederkehrenden Kaufstrategien besteht darin, dass sowohl Eingänge als auch Ausgänge technische Indikatoren als Referenzen haben, die einige falsche Signale filtern können, im Gegensatz zu den täglichen und wöchentlichen Einkäufen ohne Entscheidung.
Zusammenfassend lässt sich mit der Strategie der periodische Pyramideneffekt wiederkehrender Einkäufe realisieren und gleichzeitig die Bewertung der technischen Indikatoren für Ein- und Ausgänge erhöhen, die Anpassung der Parameter an die eigenen Vorlieben ermöglichen, das Risiko von Blind-Einträgen verringern und die Gewinneffizienz verbessern.
Obwohl in der Strategie technische Indikatoren festgelegt werden, die Filterung und flexible Pyramiden-/Ausgangsmechanismen zur Verringerung von Risiken ermöglichen, bestehen für jede Strategie immer noch unvermeidliche Risiken.
Die entsprechenden Lösungen sind:
Die Strategie kann in folgenden Bereichen weiter optimiert werden:
Die Intelligente Akkumulator-Kaufstrategie behält den periodischen Pyramidenvorteil wiederkehrender Käufe bei, während Ein- und Ausstiege mit technischen Indikatoren gefiltert und klare Gewinn-/Stop-Loss-Ausgangmechanismen festgelegt werden, wodurch die Nachteile von Blind-Einträgen und unbegrenzten Beteiligungen vermieden werden.
Natürlich bestehen immer noch Risiken von Signalfehlern und unangemessenen Parametern, die durch kontinuierliche Optimierung von Indikatoren und Parametern sowie Hilfsmittel zum Stop-Loss-Verfahren angegangen werden müssen.
/*backtest start: 2023-02-19 00:00:00 end: 2024-02-25 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © TheTradingParrot //@version=5 strategy("TTP Intelligent Accumulator", overlay=true) maxEntries = 0.0 if not na(maxEntries[1]) maxEntries := maxEntries[1] rsi = ta.rsi(close, 7) rsima = ta.sma(rsi, 14) bbstd = ta.stdev(rsi, 14) // plot(rsi) // plot(rsima) // plot(rsima - bbstd) // plot(rsima + bbstd) intEntry = rsi < rsima - bbstd intExit = rsi > rsima + bbstd maxEntries := math.max(strategy.opentrades, maxEntries) plot(maxEntries, "maxEntries") addWhileInProfit = input.bool(false, "Add while in profit") extLong = input.bool(false, "", inline = "long") entry = input.source(close,"entry", inline = "long") == 1 if not extLong entry := intEntry longCondition = entry and (strategy.opentrades == 0 or (not addWhileInProfit or close < strategy.position_avg_price)) if (longCondition) strategy.entry("long", strategy.long) minProfit = input.float(0.0, "Required profit % to exit") exitPxcandle = input.float(100.0,"% exit per candle") extShort = input.bool(false, "", inline = "exit") exit = input.source(close,"exit", inline = "exit") == 1 if not extShort exit := intExit shortCondition = exit if (shortCondition and strategy.opentrades > 0) strategy.close("long", qty_percent = exitPxcandle) plot(strategy.position_avg_price, "Avg")