
Eine dynamische Anlagerungsstrategie erreicht den Zweck der Stop-Loss-Rückgewinnung, indem sie die Kostenmittelpreise senkt, indem sie bei Verlusten anlagern. Wenn die Preise die Anlagerungsbedingungen auslösen, wird die Strategie in einer bestimmten Anzahl und in Abständen fortlaufend anlagern, wobei die maximale Anzahl anlagerungen festgelegt wird, um das Risiko einer unbegrenzten Anlagerung zu vermeiden.
Die Kernlogik der Strategie lautet:
Positionskauf: Wenn die Position 0 ist, wird die Position zum angegebenen Preis eröffnet.
Aufschlagskonditionen: Ein Aufschlag wird ausgelöst, wenn die aktuelle Anzahl der Aufschläge geringer ist als die maximale Anzahl der Aufschläge und der Preis niedriger ist als der Preis der vorherigen Position, der einen vorhergesehenen Rückgang aufweist.
Akkumulation: Die Anzahl der Akkumulationen erhöht sich um einen Schrumpfkoeffizienten der vorherigen Anzahl, und der Akkumulationsabstand wird um einen Schrumpfkoeffizienten des vorherigen Abstands reduziert.
Stopp-Bedingungen: Wenn ein vorgegebener Gewinn aus dem durchschnittlichen Preis der Positionen ausgelöst wird, wird die gesamte Position platziert.
Auf diese Weise kann die Strategie bei ungünstigen Märkten die Haltekosten reduzieren und zusätzliche Gewinne erzielen, während sie die Stop-Loss-Rückführung durchsetzt. Wenn sich die Marktlage nach oben dreht, werden die Stop-Loss-Bedingungen ausgelöst und alle Positionen sind profitabel.
Der größte Vorteil dieser Strategie besteht darin, dass die Kosten-Mittelpreis-Rückgang durch Lagerhaltung zu erreichen, um einen größeren Gewinn zu erzielen, unter der Voraussetzung, dass man einen gewissen Verlust toleriert, was besonders in einem Bullenmarkt deutlich ist. Insbesondere gibt es folgende Vorteile:
Die Strategie erhöht die Position, wenn die Preise sich umdrehen, um den zuvor höher gekauften Zitrone-Einzelstoff zu verdünnen und die Gesamtkosten zu senken.
Erhöhung der Gewinnspanne. Nach der Senkung der Kosten wird der Gewinnspanne erweitert, sofern die Preise sich wieder erholen.
Die Strategie erlaubt die Einstellung von Parametern wie die Höhe, die Anzahl und der Intervall der Verlagerung, die der Benutzer nach seinen eigenen Vorlieben anpassen kann.
Risikokontrolle: Setzen Sie eine Höchstgrenze für die Einlagerung. Die Begrenzung der Höchstzahl der Einlagerungen verhindert, dass die Strategie unbegrenzt Einlagerungen vornimmt, wodurch das Risiko kontrolliert wird.
Obwohl die Strategie durch die Verlagerung von Gewinne einen größeren Gewinnspielraum bietet, gibt es Risiken, vor denen man aufpassen sollte:
Verlustrisiko. Die Strategie setzt voraus, dass ein gewisser Verlust eingegangen wird. Wenn die Situation nachteilig bleibt, können die Verluste zunehmen.
Das Risiko eines Sturzes. Bei Extremsituationen kann es zu einem Sturz kommen, der über die Strategie hinausgeht. Dies erfordert eine vernünftige Einstellung der Anlagerungsparameter und der Stopppunkte.
Ein Rückschlag ist nicht zeitnah. Ein Rückschlag ist nicht unbedingt ein Auslöser für einen Stopp, und es ist eine Strategie, wenn man nicht in der Lage ist, einen Stopp zu stoppen.
Risiken bei der Einstellung von Parametern. Die falsche Einstellung von Parametern wie der Anlagefaktor und der Stop-Loss-Grenze kann zu einem Strategieversagen führen.
Diese Risiken können durch folgende Maßnahmen verringert werden:
Die Einnahme von Lagerbeständen soll angemessen reduziert und Einzelschäden kontrolliert werden.
Das Unternehmen hat sich in der Vergangenheit bemüht, die Kosten zu senken, indem es die Lagerhaltung verkürzt.
Setzen Sie einen vernünftigen Stop-Loss. Ein zu breiter Stop-Loss kann zu einem größeren Verlust führen.
In Anbetracht der Eigenschaft der Strategie, die Gewinne aus der Verlagerung zu erzielen, konzentriert sich die Optimierung hauptsächlich darauf, Risiken besser zu kontrollieren und Gewinne zu erzielen. Insbesondere gibt es folgende Hauptoptimierungsrichtungen:
Verbesserte Logik-Algorithmen für die Akquisition, um Akquisitionen intelligenter und marktorientierter zu gestalten. Sie können Akquisitionen basierend auf Indikatoren wie Volatilität und Preisschwankungen auslösen.
Optimierung der Stoppmethode, um eine effizientere Stoppmethode zu erzielen. Sie kann mit mobilen Stoppmethoden und Sattelstoppmethoden kombiniert werden, um die Unmöglichkeit des Stoppens durch Reibung zu reduzieren.
Die Einführung von Machine-Learning-Algorithmen ermöglicht die Optimierung der Anpassung der Parameter. Die Schlüsselparameter werden nicht mehr statisch, sondern dynamisch an Echtzeitsituationen und Feedback angepasst.
Erhöhen Sie die Stop-Loss-Mechanismen, um die maximalen Verluste zu kontrollieren. Die Stop-Loss-Methode kann die Vergrößerung von Verlusten durch Extremsituationen vermeiden, indem Sie den Stop-Loss bewegen, den Stop-Loss hängen usw.
Dynamische Anlagerungsstrategien ermöglichen einen Rückgang der Kosten-Nährpreise durch Anlagerungen, die unter der Voraussetzung einer angemessenen Risikokontrolle größere Gewinne erzielen. Diese Strategie, die auf eine gewisse Verlustschuldung basiert, ist besonders bei Investoren mit einer starken Verlustverträglichkeit beliebt. Die zukünftige Optimierungsrichtung wird sich auf intelligentere Anlagerungsmethoden und effizientere Stoppmechanismen richten.
/*backtest
start: 2023-12-14 00:00:00
end: 2023-12-18 19:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("DCA Bot Emulator", overlay=true, pyramiding=99, default_qty_type=strategy.cash, commission_value = 0.02)
// Date Ranges
from_month = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
from_day = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
from_year = input(defval = 2021, title = "From Year")
to_month = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
to_day = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
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 = time >= start and time <= finish ? true : false // create function "within window of time"
// Strategy Inputs
price_deviation = input(2, title='Price deviation to open safety orders', maxval=0)/100
take_profit = input(1.5, title='Target Take Profit', minval=0)/100
// base order
base_order = input(100000, title='base order')
safe_order = input(200, title='safe order')
safe_order_volume_scale = input(2, title='Safety order volume scale')
safe_order_step_scale = input(1, title='Safety order step scale')
max_safe_order = input(10, title='max safe order')
var current_so = 1
var initial_order = 0.0
// Calculate our key levels
pnl = (close - strategy.position_avg_price) / strategy.position_avg_price
take_profit_level = strategy.position_avg_price * (1 + take_profit)
// First Position
if(strategy.position_size == 0 and window)
strategy.entry("Long", strategy.long, qty = base_order/close)
initial_order := close
current_so := 1
// Average Down!
if current_so > 0 and close < initial_order * (1 - price_deviation * current_so * safe_order_step_scale) and current_so <= max_safe_order
so_name = "SO " + tostring(current_so)
strategy.entry(so_name, long=strategy.long , qty = safe_order * safe_order_volume_scale /close)
current_so := current_so + 1
// Take Profit!
strategy.close_all(when=take_profit_level <= close and strategy.position_size > 0)