Richard's Turtle Trading Strategy ist eine Handelsstrategie, die auf Richard Dennis' Schildkrötenhandelstechniken basiert.
Die Kernlogik der Schildkrötenhandelsstrategie von Richard
Nach dem Eintritt in Positionen verwendet die Strategie den Average True Range (ATR) zur Berechnung des Stop-Loss-Preises. Sie verfolgt auch 10-tägige Höchst- und Tiefpreise für einen Slip-Stop-Loss. Wenn ein Long-Stop-Loss oder ein Slip-Stop-Loss ausgelöst wird, wird die Long-Position geschlossen. Wenn ein Short-Stop-Loss oder ein Slip-Stop-Loss ausgelöst wird, wird die Short-Position geschlossen.
Die Schildkrötenhandelsstrategie von Richard
Es gibt auch einige Risiken mit Richard
Um diese Risiken zu verringern, können wir die Einstiegsbedingungen mit mehr Indikatoren optimieren, um Trends vorherzusagen; Stopp-Loss-Algorithmen anpassen, um die Stopp-Loss-Frequenz zu reduzieren.
Die Schildkrötenhandelsstrategie von Richard
Die Schildkröten-Handelsstrategie von Richard
/*backtest start: 2023-02-05 00:00:00 end: 2024-02-05 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/ // © melodyera0822 //@version=4 strategy("Richard Strategy", overlay=true) // User input variable_for_stoploss = input(4,title="stop loss var") lenght = input(20,title="lenght") // high_low _20_day_highest = highest(nz(close[1]), lenght) _20_day_lowest = lowest(nz(close[1]), lenght) _10_day_low = lowest(nz(close[1]), lenght/2) _10_day_high = highest(nz(close[1]), lenght/2) //indicators atr20 = atr(20) ema_atr20 = ema(atr20,20) //vars var traded = "false" var buy_sell = "none" var buyExit = false var sellExit = false var stoploss = 0 buyCon = close > _20_day_highest and traded == "false" plotshape(buyCon,style = shape.triangleup,location = location.belowbar, color = color.green ) if (buyCon) strategy.entry("long", strategy.long, when = buyCon) traded := "true" buy_sell := "buy" stoploss := round(close - variable_for_stoploss * ema_atr20) sellCon = close < _20_day_lowest and traded == "false" plotshape(sellCon,style = shape.triangledown, color = color.red ) if (sellCon) strategy.entry("short", strategy.short) traded := "true" buy_sell := "sell" stoploss := round(close - variable_for_stoploss * ema_atr20) if traded == "true" if buy_sell == "buy" and ((close<stoploss)or(close<_10_day_low)) strategy.close("long") buyExit := true traded := "false" if buy_sell == "sell" and ((close>stoploss)or(close>_10_day_high)) strategy.close("short") sellExit := true traded := "false" plotshape(buyExit,style = shape.triangleup,location = location.belowbar, color = color.yellow ) buyExit := false plotshape(sellExit,style = shape.triangledown, color = color.yellow ) sellExit := false