Diese Strategie ist ein Trendfolgensystem, das auf der Kombination mehrerer gleitender Durchschnitte basiert und hauptsächlich die Crossover- und Positionsbeziehungen zwischen der wöchentlichen EMA20, dem täglichen SMA100, dem täglichen SMA50 und dem täglichen EMA20 nutzt, um mittelfristige bis langfristige Anlagemöglichkeiten zu erfassen.
Die Kernlogik der Strategie beruht auf folgenden Schlüsselbedingungen: 1. Verwendet als primären Trendindikator den wöchentlichen exponentiellen gleitenden Durchschnitt (EMA1W20) für 20 Perioden 2. Kombiniert mit dem 100-tägigen einfachen gleitenden Durchschnitt (SMA1D100) zur sekundären Trendbestätigung 3. Verwendet den 50-Tage-Simple Moving Average (SMA1D50) als mittelfristige Trendreferenz 4. Verwendet den 20-Tage-Exponential Moving Average (EMA1D20) zur kurzfristigen Trendbestätigung Das System erzeugt ein langes Signal, wenn der Preis 14 aufeinanderfolgende Tage über EMA1W20 und SMA1D100 hält und dann unter SMA1D50 fällt.
Diese Strategie stellt durch mehrere gleitende Durchschnittskombinationen einen relativ umfassenden Trend nach dem System her, der für mittelfristige bis langfristige Anleger geeignet ist. Obwohl sie bestimmte Verzögerungs- und Parameterempfindlichkeitsrisiken aufweist, hat die Strategie durch eine angemessene Risikokontrolle und kontinuierliche Optimierung praktischen Wert. Anlegern wird geraten, angemessene Anpassungen anhand ihrer Risikopräferenzen und Marktbedingungen vorzunehmen.
/*backtest start: 2024-11-12 00:00:00 end: 2024-12-11 08:00:00 period: 1h 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/ // © petitepupu //@version=5 ema20wTemp = ta.ema(close, 20) ema20w = request.security(syminfo.tickerid, "1W", ema20wTemp, barmerge.gaps_on, barmerge.lookahead_off) sma100d = ta.sma(close, 100) sma50d = ta.sma(close, 50) ema20d = ta.ema(close, 20) daysAbove = input.int(14, title="Days", minval=1) plot(ema20w, color=color.blue) plot(sma100d, color=color.yellow) plot(sma50d, color=color.red) plot(ema20d, color=color.green) longCondition = true clean = true for i = 0 to daysAbove if close[i] < ema20w or close[i] < sma100d or close > sma50d longCondition := false clean := false break //TODO: if clean != true longCondition := true for i = 0 to daysAbove if close[i] > ema20w or close[i] > sma100d or close >= ema20d or -100 * (close - ema20d)/ema20d < 5.9 longCondition := false break // plotshape(series=longCondition, location=location.belowbar, color=color.green, style=shape.triangleup, title="Buy Signal", size = size.small) if (longCondition) strategy.entry("Long", strategy.long) strategy(title="LT Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=800)