Эта стратегия называется
В частности, логика торговли очень проста:
Каждый понедельник бросают монету, произвольно получая результаты головы или хвоста.
Если голова, то в тот день выйдет длинный, если хвост, то короткий.
Установите стоп-лосс на 1 x ATR и возьмите прибыль на 1 x ATR при длинном, и наоборот при коротком, достигнув 1: 1 соотношения риск-вознаграждение.
Держите позицию до конца недели, а потом закрывайте.
Преимущество заключается в обратном тестировании многолетних данных для оценки среднего показателя выигрыша случайной торговли.
Но случайная торговля не может использовать рыночные модели и вряд ли будет приносить устойчивую прибыль. Фиксированные стоп-лосс и прибыль также рискуют увеличить убытки. Трейдеры могут использовать ее только в качестве экспериментальной стратегии, а не для живой торговли.
В заключение, результаты обратных тестов могут указывать на результаты случайной торговли, но не представляют собой действительно применимые стратегии.
/*backtest start: 2022-09-12 00:00:00 end: 2023-01-12 00:00:00 period: 2d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("CoinFlip", overlay = true) int result = int(math.random()+0.5) atr_period = input(defval = 20, title = "ATR Period") year_to_test = input(defval = 2022, title = "Year to Test") day_of_week = input(defval = 1, title = "Day of Week") atr = ta.atr(atr_period) shouldSell = result == 0 and dayofweek == day_of_week shouldBuy = result == 1 and dayofweek == day_of_week plotshape(result == 0 and dayofmonth == day_of_week, title="sell", location=location.abovebar, color=color.red, transp=0, style=shape.arrowdown) plotshape(result == 1 and dayofmonth == day_of_week, title="buy", location=location.belowbar, color=color.lime, transp=0, style=shape.arrowup) strategy.entry("short entry", strategy.short, 1000 / (1*atr), when=shouldSell and year == year_to_test) strategy.entry("long entry", strategy.long, 1000 / (1*atr), when=shouldBuy and year == year_to_test) strategy.exit("exit", "long entry", limit = close + 1*atr, stop = close - 1*atr, when = shouldBuy) strategy.exit("exit", "short entry", limit = close - 1*atr, stop = close + 1*atr, when = shouldSell)