
Двойная стратегия отслеживания трендов с помощью движущихся средних - это количественная торговая стратегия, основанная на движущихся средних двух разных периодов, для определения направления тенденции на рынке. Эта стратегия использует быстрое движение средних и медленное движение средних для определения направления тенденции и торговли в направлении тенденции.
Эта стратегия использует два движущихся средних, включая быстрые движущиеся средние (например, 10-ти циклов) и медленные движущиеся средние (например, 30-ти циклов). Если оба движущихся средних растут, то это считается многоголовым трендом; если оба движущихся средних падают, то это считается пустым трендом.
В частности, стратегия сначала вычисляет быстрые и медленные скользящие средние. Затем сравнивает текущие скользящие средние с величиной предыдущего цикла. Если текущая величина больше, чем в предыдущем цикле, она присваивается 1, то есть вверх; в противном случае она присваивается -1, то есть вниз.
Наконец, быстро и медленно судите о суждениях двух скользящих средних. Если оба значения суждения равны 1, то окончательное суждение - 1, что указывает на многоглазовую тенденцию; если оба значения суждения - 1, то окончательное суждение - 1, что указывает на пустую тенденцию.
После определения направления тренда, эта стратегия открывает позиции при многоголосной тенденции и открывает позиции при пустой тенденции.
Эта стратегия имеет следующие преимущества:
Однако эта стратегия также несет в себе определенные риски:
Для снижения вышеупомянутых рисков можно установить более разумные параметры цикла движущихся средних, ввести другие технические показатели в качестве вспомогательных суждений, установить правила стоп-стоп или соответствующим образом скорректировать позиции.
Эта стратегия также может быть оптимизирована в следующих аспектах:
Двойная подвижная средняя стратегия для отслеживания тенденций имеет четкую и понятную общую концепцию, фильтрует колебания с помощью двойной подвижной средней, определяет направление тенденции и торгует в соответствии с ее результатами. Эта стратегия является типичной стратегией отслеживания тенденций.
/*backtest
start: 2022-12-12 00:00:00
end: 2023-12-18 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/
// © noro
// 2020
//@version=4
strategy(title = "Noro's TrendMA Strategy", shorttitle = "TrendMA str", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0, commission_value = 0.1)
//Settings
needlong = input(true, title = "Long")
needshort = input(true, title = "Short")
fast = input(10, minval = 1, title = "MA Fast (red)")
slow = input(30, minval = 2, title = "MA Slow (blue)")
type = input(defval = "SMA", options = ["SMA", "EMA"], title = "MA Type")
src = input(ohlc4, title = "MA Source")
showma = input(true, title = "Show MAs")
showbg = input(false, title = "Show Background")
//MAs
fastma = type == "EMA" ? ema(src, fast) : sma(src, fast)
slowma = type == "EMA" ? ema(src, slow) : sma(src, slow)
//Lines
colorfast = showma ? color.red : na
colorslow = showma ? color.blue : na
plot(fastma, color = colorfast, title = "MA Fast")
plot(slowma, color = colorslow, title = "MA Slow")
//Trend
trend1 = fastma > fastma[1] ? 1 : -1
trend2 = slowma > slowma[1] ? 1 : -1
trend = 0
trend := trend1 == 1 and trend2 == 1 ? 1 : trend1 == -1 and trend2 == -1 ? -1 : trend[1]
//Backgrouns
colbg = showbg == false ? na : trend == 1 ? color.lime : trend == -1 ? color.red : na
bgcolor(colbg, transp = 80)
//Trading
if trend == 1
if needlong
strategy.entry("Long", strategy.long)
if needlong == false
strategy.close_all()
if trend == -1
if needshort
strategy.entry("Short", strategy.short)
if needshort == false
strategy.close_all()