
Эта стратегия, основанная на индикаторе Брин-Бенда и индикаторе волатильно-движущейся средней, создает ценовой канал, который посылает торговый сигнал через прорыв верхней и нижней границ канала. Она сочетает в себе адаптивность Брин-Бенда и гибкость волатильно-движущего индикатора, позволяя своевременно улавливать изменения рыночных тенденций.
В этой стратегии используются среднеполосатые траектории Булина и колеблющиеся скользящие средние для построения ценового канала. Среднеполосатые траектории используют среднеполосатые траектории Булина с 21 циклом, верхние и нижние траектории расширяются вверх и вниз по одному процентному диапазону соответственно.
В частности, среднее орбитальное расчетное формулой Брина является:
中轨 = N日收盘价的移动平均线
Формула для вычисления находящихся в пути:
上轨 = 中轨 + WidthDev * 布林带N日标准差
下轨 = 中轨 - WidthDev * 布林带N日标准差
где WidthDev представляет собой процентный интервал, простирающийся вверх и вниз.
Скользящая скользящая средняя основана на средней орбите, которая растягивается или сжимается в соответствии с определенными правилами. Когда рынок входит в состояние перекупа или перепродажи, она расширяется дальше от средней орбиты, расширяя возможности для дополнительного короткого курса; когда рынок становится спокойным, она сжимается к средней орбите.
В целом, эта стратегия изображает ценовой канал через пояса бурин, а затем использует шокирующий средний показатель для определения времени входа в рынок, что позволяет совершить сделку с прорывом. Когда цена сверху вверх прорывает бурин, она делает больше; когда цена сверху вниз прорывает бурин, она делает пустоту.
Отражение рыночной волатильности Брин-пояса могут в реальном времени отражать волатильность рынка и изменяющиеся тенденции, а верхние и нижние рельсы будут самостоятельно адаптироваться к изменениям волатильности.
Снижение ложных сигналов Ускоренный показатель скользящего среднего значения эффективно уменьшает ложные сигналы, создаваемые лентой Бринна, посредством растягивающего эффекта ленты Бринна. Он увеличивает ширину ленты Бринна, продлевает время удержания позиции и, таким образом, получает больше прибыли.
Вовремя поймать обратный тренд Скрещивание понижающейся и колеблющейся скользящей средней по Брин-Бенду дает временное и ценовое преимущество для выпуска торговых сигналов, что позволяет эффективно улавливать ключевые многоголовые и пустые коррективы и вовремя улавливать рыночные перемены.
Настройка параметров по ленте Бринга Неправильная настройка параметров брин-пояса, таких как вычислительный цикл и стандартное расхождение, может привести к слишком большому или слишком маленькому расстоянию между верхней и нижней полосами, что создаст большое количество ложных сигналов, влияющих на стабильность стратегии.
Землетрясения были слишком сильными. Слишком большая частота колебаний колебания скользящей средней величины может привести к тому, что остановка будет слишком далеко, увеличивая риск потери.
Не успел вернуться Когда рынок находится в состоянии колебаний или отсутствует четкая тенденция, торговые сигналы, исходящие от буринских поясов и колеблющихся скользящих средних индикаторов, могут задерживаться и не отражать изменения цены вовремя, что приводит к риску несвоевременного возврата.
Оптимизация параметров Брин-полосы
Можно тестировать различные циклические параметры, кратность стандартного отклонения, выбирать оптимальное количество сигналов и меньшее количество ложных сигналов.
Оптимизация параметров скользящих средних Можно тестировать различные частоты и циклы колебаний, выбрать параметры, которые могут улавливать тенденции и уменьшать задержку сигнала.
Добавить условия фильтрации На основе перекрестного сигнала, полученного от Брин-Бенда и колеблющейся движущейся средней, можно добавлять фильтры для вспомогательных показателей, таких как объем торгов, чтобы исключить некоторые неэффективные торговые сигналы.
Пакет стратегий Эта стратегия может быть использована в сочетании с другими стратегиями отслеживания стоп-убытков или комбинацией стратегий машинного обучения для дальнейшего контроля риска и повышения устойчивости.
Эта стратегия, основанная на индикаторах Брин-пояса адаптивного канала и волатильных движущихся средних, реализует органическое сочетание отслеживания тенденций и захвата обратных тенденций. Она объединяет преимущества обоих показателей, учитывая как волатильность рынка, так и гибкость торговых сигналов, чтобы обеспечить стабильную и эффективную торговлю. Конечно, оптимизация параметров и контроль риска также имеют особое значение и требуют постоянного тестирования и корректировки в зависимости от различных рыночных условий.
/*backtest
start: 2022-12-29 00:00:00
end: 2024-01-04 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
// Hull Cloud v2 by SEASIDE420
strategy("Hull Moving Average Cloud v2", shorttitle="hull_cloud_v2", overlay=true, commission_type=strategy.commission.percent, commission_value=0.075, default_qty_type=strategy.percent_of_equity, max_bars_back=200, default_qty_value=100, calc_on_order_fills= true, calc_on_every_tick=true, pyramiding=0)
hullperiod=input(title="HullMA Period",defval=210, minval=1)
Width=input(title="Cloud Width",defval=200, minval=2)
price=input(ohlc4,title="Price data")
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear = input(defval = 2017, title = "From Year", minval = 2017)
ToMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear = input(defval = 9999, title = "To Year", minval = 2017)
start = timestamp(FromYear, FromMonth, FromDay, 00, 00)
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59)
window() => true
n2ma=2*wma(price,round(hullperiod/2))
nma=wma(price,hullperiod)
diff=n2ma-nma
sqn=round(sqrt(hullperiod))
n2ma1=2*wma(price[1],round(hullperiod/2))
nma1=wma(price[1],hullperiod)
diff1=n2ma1-nma1
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
Hull_Line=n1-n1[1]/n2[1]
Hull_retracted=if(n1>n2)
Hull_retracted=Hull_Line-Width
else
Hull_retracted=Hull_Line+Width
c1=(Hull_retracted*n1)/price[1]
c2=(Hull_retracted*n2)/price[1]
c4=c1>c2?green:red
c2p=plot(c2, color=black, linewidth=1)
c3p=plot(price, color=black, linewidth=1)
fill(c3p, c2p, color=c4, transp=75)
plot(cross(c1, c2) ? c1 : na, style = circles,color=c4, linewidth = 4)
if (price<c2)
strategy.close("BUY", when=window())
if (price>c2)
strategy.close("SELL", when=window())
if (price[1]>c2 and price[1]>c1)
strategy.entry("BUY",strategy.long, when=window())
if (price[1]<c1 and price[1]<c2)
strategy.entry("SELL",strategy.short, when=window())// /L'-,
// ,'-. ` ```` / L '-,
// . _,--dMMMM\ ` ` ` '`.. / '-,
// : _,--, )MMMMMMMMM),. ` ,<> /_ '-,'
// ; ___,--. \MM( `-' )M//MM\ ,',.; .-'* ; .'
// | \MMMMMM) \MM\ ,dM//MMM/ ___ < ,; `. )`--' /
// | \MM()M MMM)__ /MM(/MP' ___, \ \ ` `. `. /__, ,'
// | MMMM/ MMMMMM( /MMMMP'__, \ | / `. `-,_\ /
// | MM /MMM---' `--'_ \ |-' |/ `./ .\----.___
// | /MM' `--' __,- \"" |-' |_, `.__) . .F. )-.
// | `--' \ \ |-' |_, _,-/ J . . . J-'-. `-.,
// | __ \`. | | | \ / _ |. . . . \ `-. F
// | ___ / \ | `| ' __ \ | /-' F . . . . \ '`
// | \ \ \ / | __ / \ | |,-' __,- J . . . . . \
// | | / |/ __,- \ ) \ / |_,- __,--' |. .__.----,'
// | |/ ___ \ |'. |/ __,--' `.-;;;;;;;;;\
// | ___ \ \ | | ` __,--' /;;;;;;;;;;;;.
// | \ \ |-'\ ' __,--' /;;;;;;;;;;;;;;\
// \ | | / | __,--' `--;;/ \;-'\
// \ | |/ __,--' / / \ \
// \ | __,--' / / \ \
// \|__,--' _,-;M-K, ,;-;\
// <;;;;;;;; '-;;;;
// :D