
Основная идея этой стратегии заключается в том, чтобы использовать скольжение скользящих средних для определения рыночных тенденций и создания индекса анализа тенденций (Trend Analysis Index, TAI) в качестве торгового сигнала. Когда цены движутся в тренде, скольжение скользящих средних увеличивается; когда цены колеблются в пределах, где нет четкой тенденции, скольжение скользящих средних уменьшается.
Эта стратегия сначала рассчитывает простую скользящую среднюю цены (X-дневную скользящую среднюю). Затем рассчитывает высокие и низкие значения скользящей средней за прошедшие Y-днев. С помощью этих двух экстремальных значений вычисляет колебания скользящей средней за прошедшие Y-днев.
Эта стратегия имеет следующие преимущества:
Однако эта стратегия также несет в себе определенные риски:
Решение проблемы:
Эта стратегия может быть оптимизирована в следующих аспектах:
Эта стратегия в целом является средней длинной линией, которая определяет тенденцию с помощью скольжения скользящих средних, эффективно улавливает тенденцию, но также существует определенный риск ложного сигнала. Использование в сочетании с другими показателями, добавление стоп-лосса, оптимизация параметров и другие способы могут сделать стратегию более устойчивой и надежной, по сути оставаясь относительно простой стратегией отслеживания тенденции.
//@version=2
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 21/12/2017
// In essence, it is simply the standard deviation of the last x bars of a
// y-bar moving average. Thus, the TAI is a simple trend indicator when prices
// trend with authority, the slope of the moving average increases, and when
// prices meander in a trendless range, the slope of the moving average decreases.
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Trend Analysis Index", shorttitle="TAI")
AvgLen = input(28, minval=1)
TAILen = input(5, minval=1)
TopBand = input(0.11, step=0.01)
LowBand = input(0.02, step=0.01)
reverse = input(false, title="Trade reverse")
hline(TopBand, color=red, linestyle=line)
hline(LowBand, color=green, linestyle=line)
xPrice = close
xSMA = sma(xPrice, AvgLen)
xHH = highest(xSMA, TAILen)
xLL = lowest(xSMA, TAILen)
nRes = (xHH - xLL) * 100 / xPrice
pos = iff(nRes > TopBand, 1,
iff(nRes < LowBand, -1, nz(pos[1], 0)))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1, 1, pos))
if (possig == 1)
strategy.entry("Long", strategy.long)
if (possig == -1)
strategy.entry("Short", strategy.short)
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(nRes, color=blue, title="TAI")