Эта стратегия использует двойные индикаторы для проверки сигналов для определения тенденций и торговли путем комбинации движущихся средних и бриндовых поясов. Стратегия использует золотые форки быстрого и медленного движения средних, чтобы сделать больше, а мертвые - чтобы сделать меньше; в то же время в сочетании с прорывом бриндовых поясов вниз как вспомогательный сигнал проверки, повышает стабильность стратегии.
Вычислить быстрые и медленные скользящие средние, при которых быстрые и медленные скользящие средние производят многосигналы при прохождении медленных линий, а низкие - пустые. Одновременно рассчитывать верхние и нижние трейлеры по буринской полосе. Только тогда, когда цены одновременно прорывают верхние или нижние трейлеры по буринской полосе, подтверждаются торговые сигналы скользящих средних.
Можно уместно сократить средний и циклы Брин-пояса, или оптимизировать комбинацию параметров для управления рисками.
Эта стратегия объединяет двойные индикаторы подтверждения сигналов, может уменьшить ложные сигналы, подходит для средних и длинных позиций.
/*backtest
start: 2023-08-18 00:00:00
end: 2023-09-17 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("MA-Zorrillo",overlay=true)
ma_short= sma(close,8)
ma_long= sma(close,89)
entry_ma = crossover (ma_short,ma_long)
exit_ma = crossunder (ma_short,ma_long)
BBlength = input(24, minval=1,title="Bollinger Period Length")
BBmult = 2 // input(2.0, minval=0.001, maxval=50,title="Bollinger Bands Standard Deviation")
BBbasis = sma(close, BBlength)
BBdev = BBmult * stdev(close, BBlength)
BBupper = BBbasis + BBdev
BBlower = BBbasis - BBdev
source = close
entry_bb = crossover(source, BBlower)
exit_bb = crossunder(source, BBupper)
vs_entry = false
vs_exit = false
for i = 0 to 63
if (entry_bb[i])
vs_entry := true
if (exit_bb[i])
vs_exit := true
entry = entry_ma and vs_entry
exit = exit_ma and vs_exit
strategy.entry(id="long_ma",long=true,when=entry)
strategy.close(id="long_ma", when=exit)
strategy.entry(id="short_ma",long=false,when=exit)
strategy.close(id="short_ma",when=entry)