
Эта стратегия определяет направление тенденции с помощью показателя Awesome Oscillator ((AO) и подтверждает тенденцию в сочетании с движущейся средней. Эта стратегия относится к стратегии отслеживания тенденции.
Эта стратегия основана на показателях AO для определения направления тенденции. Показатель AO рассчитан на основе разницы между средней точкой линии {-{ и простым движущимся средним за 5 циклов, 34 циклов, и относится к показателям категории Momentum.
Таким образом, индикатор AO может эффективно определять направление тенденции. Когда AO пересекает 0-ую ось, это означает, что рыночная тенденция переходит в позитивную сторону, и следует сделать больше; когда AO пересекает 0-ую ось, это означает, что рыночная тенденция переходит в нисходящую сторону, и следует сделать пустоту.
Кроме того, в эту стратегию также включены движущиеся средние значения 20 и 200 циклов. Эти два средних значения представляют собой направление среднесрочной тенденции. Недостаточно полагаться только на показатель AO для определения направления краткосрочной тенденции, а также необходимо подтверждение среднесрочной тенденции, поэтому вводится решение о движущихся средних значениях.
Когда быстрая средняя линия пересекает медленную среднюю линию, среднесрочная тенденция переходит в позитивную, мы делаем больше, когда мы пересекаем 0-ую ось на AO, и получаем прибыль с ростом тенденции; когда быстрая средняя линия пересекает медленную среднюю линию, среднесрочная тенденция переходит в нисходящую, мы делаем пустое, когда мы пересекаем 0-ую ось под AO, и получаем прибыль с понижением тенденции.
Эта стратегия относится к простой стратегии отслеживания тенденций, и ее эффективность может быть улучшена путем дальнейшей оптимизации параметров и оптимизации комбинированных показателей.
/*backtest
start: 2023-12-12 00:00:00
end: 2023-12-14 20:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// https://www.youtube.com/watch?v=zr3AVwjCtDA
//@version=5
strategy(title="Bingx ESTRATEGIA de Trading en 1 minuto ", shorttitle="AO")
long = input.bool(true, "long")
short = input.bool(true, "short")
profit = (input.float(10, "profit") / 100) + 1
stop = (input.float(5, "stop") / 100) + 1
ao = ta.sma(hl2,5) - ta.sma(hl2,34)
diff = ao - ao[1]
plot(ao, color = diff <= 0 ? #F44336 : #009688, style=plot.style_columns)
changeToGreen = ta.crossover(diff, 0)
changeToRed = ta.crossunder(diff, 0)
alertcondition(changeToGreen, title = "AO color changed to green", message = "Awesome Oscillator's color has changed to green")
alertcondition(changeToRed, title = "AO color changed to red", message = "Awesome Oscillator's color has changed to red")
ema20 = ta.ema(close, 20)
ema200 = ta.ema(close, 200)
rsi = ta.rsi(close, 7)
plot(rsi)
plot(0, color=color.white)
var float pentry = 0.0
var float lentry = 0.0
var bool oab = false
// oab := ta.crossover(ao, 0) ? true : ta.crossover(0, ao) ? false : oab[1]
if long and close > open and ta.crossover(close, ema20) and ema20 > ema200 and ao > 0 and rsi > 50
strategy.entry("long", strategy.long)
pentry := close
strategy.exit("exit long", "long", limit=pentry * profit, stop=pentry / stop)
if short and close < open and ta.crossunder(close, ema20) and ema20 < ema200 and ao < 0 and rsi < 50
strategy.entry("short", strategy.short)
lentry := close
strategy.exit("exit short", "short", limit=lentry / profit, stop=lentry * stop)