Diese Strategie ist ein Trendfolgensystem, das auf historischen Preis-Breakouts und gleitenden Durchschnittsfiltern basiert. Sie kombiniert mehrjährige Preis-Breakout-Signale mit gleitenden Durchschnitten, um Markttrends zu identifizieren, wobei strenge Ein- und Ausstiegsregeln zur Erfassung mittel- bis langfristiger Marktbewegungen verwendet werden.
Die Kernlogik basiert auf Preisbrechungen und dem Trend folgen.
Das ist ein strategisches System, das klassische Schildkrötenhandelsregeln mit modernen technischen Analysewerkzeugen kombiniert. Es erfasst Trends durch Preisdurchbrüche, bestätigt die Richtung mithilfe gleitender Durchschnitte und kontrolliert das Risiko mit vernünftigem Positionsmanagement. Die Strategie-Logik ist klar, praktisch und hat eine gute Skalierbarkeit.
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-04 00:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Turtle Traders - Andrei", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10) // ====== Inputs ====== // Período para a máxima das compras lookback_buy = input.int(title="Período para Máxima de Compra", defval=55, minval=1) // Período para a mínima das vendas lookback_sell = input.int(title="Período para Mínima de Venda", defval=20, minval=1) // Período da Média Móvel ma_length = input.int(title="Período da Média Móvel", defval=200, minval=1) // Tipo de Média Móvel ma_type = input.string(title="Tipo de Média Móvel", defval="SMA", options=["SMA", "EMA", "WMA", "VWMA"]) // ====== Cálculos ====== // Cálculo da Média Móvel baseada no tipo selecionado ma = switch ma_type "SMA" => ta.sma(close, ma_length) "EMA" => ta.ema(close, ma_length) "WMA" => ta.wma(close, ma_length) "VWMA" => ta.vwma(close, ma_length) // Cálculo da máxima dos últimos 'lookback_buy' candles highest_buy = ta.highest(high, lookback_buy) // Cálculo da mínima dos últimos 'lookback_sell' candles lowest_sell = ta.lowest(low, lookback_sell) // ====== Condições de Negociação ====== // Condição de entrada: fechamento acima da máxima dos últimos 'lookback_buy' candles E acima da MA longCondition = (high == highest_buy) and (close > ma) if (longCondition) strategy.entry("Comprar", strategy.long) // Condição de saída: fechamento abaixo da mínima dos últimos 'lookback_sell' candles exitCondition = (low == lowest_sell) if (exitCondition) strategy.close("Comprar") // ====== Plotagens ====== // Plotar a máxima de 'lookback_buy' candles plot(highest_buy, color=color.green, title="Máxima", linewidth=2) // Plotar a mínima de 'lookback_sell' candles plot(lowest_sell, color=color.red, title="Mínima", linewidth=2) // Plotar a Média Móvel plot(ma, color=color.blue, title="Média Móvel", linewidth=2) // ====== Sinais Visuais ====== // Sinal de entrada plotshape(series=longCondition, location=location.belowbar, color=color.green, style=shape.labelup, title="Sinal de Compra", text="") // Sinal de saída plotshape(series=exitCondition, location=location.abovebar, color=color.red, style=shape.labeldown, title="Sinal de Venda", text="")