
Движущаяся средняя стратегия торговли pullback - это стратегия торговли в направлении тенденции. Она использует отношения между долгосрочными и краткосрочными движущимися средними для определения общего направления тенденции и совершает покупки на низком уровне при краткосрочном отступлении, с целью остановить убытки и остановку.
Основными правилами этой стратегии являются:
С помощью такого объединения мы можем построить позиции, используя возможности краткосрочной корректировки, при условии, что направление тренда соответствует ожиданиям.
Основным преимуществом этой стратегии является то, что она эффективно избегает риска рыночных потрясений, совершая многосторонние сделки только в ожидании больших тенденций. В то же время, она использует время для покупки в обратном направлении по краткосрочным средним значениям, что позволяет выйти на рынок по более выгодной цене.
Кроме того, в этой стратегии есть механизмы остановки и сдерживания потерь. Это позволяет контролировать убытки с помощью остановки, даже если ошибка была сделана, чтобы создать обратную ситуацию, а после получения прибыли - блокировать часть прибыли с помощью остановки.
Несмотря на то, что стратегия учитывает большие тенденции и настройки стоп-стоп, существуют определенные риски:
Риск ошибочного суждения о долгосрочных тенденциях. При выборе позиций, открытых после вступления в многоголовый рынок, но фактически рынок уже перешел из многоголового в шокирующий или в пустой рынок, это может привести к большим потерям.
Риск, что стоп-лошади будут перехвачены. Особенно при возникновении серьезных негативных событий рынок может перепрыгнуть и превысить заранее установленную линию стоп-лошади, что приводит к неконтролируемым потерям.
В соответствии с этим, мы можем рассмотреть несколько способов снижения риска:
Проведите анализ крупных рынков, чтобы избежать ошибочного суждения о тенденциях в зонах колебаний. Или установите более длинные циклические скользящие средние для подтверждения крупных тенденций.
Применение условных бумаг, которые вызывают выравнивание позиций при падении рынка, а не просто стоп-лосс, может в некоторой степени предотвратить преследование стоп-лосс.
Учитывая, что данная стратегия характеризуется длинной линией суждения и короткой линией входа в игру, мы можем оптимизировать ее в следующих аспектах:
Оптимизация циклических параметров для подвижных средних для поиска оптимальной комбинации параметров
Добавление других показателей. Например, добавление анализа объема сделки или объединение других показателей перекупа и перепродажи на основе показателя RSI
В реальном времени мы можем адаптироваться к колебаниям рынка, а в случае значительных колебаний - отпустить остановку.
Подобные стратегии могут быть более подходящими для продуктов индекса, если для отдельных статей требуется добавление других правил отбора.
В целом, стратегия движущейся средней ретроспективной торговли является более зрелой и стабильной. Она учитывает основные тенденции и краткосрочные возможности ретроспективной торговли, чтобы получить лучший момент входа при условии, что она не будет завышена. В то же время, с помощью установки стоп-стоп для блокирования прибыли и контроля риска.
/*backtest
start: 2022-11-30 00:00:00
end: 2023-12-06 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/
// © tsujimoto0403
//@version=5
strategy("simple pull back", overlay=true,default_qty_type=strategy.percent_of_equity,
default_qty_value=100)
//input value
malongperiod=input.int(200,"長期移動平均BASE200/period of long term sma",group = "パラメータ")
mashortperiod=input.int(10,"長期移動平均BASE10/period of short term sma",group = "パラメータ")
stoprate=input.int(5,title = "損切の割合%/stoploss percentages",group = "パラメータ")
profit=input.int(20,title = "利食いの割合%/take profit percentages",group = "パラメータ")
startday=input(title="バックテストを始める日/start trade day", defval=timestamp("01 Jan 2000 13:30 +0000"), group="期間")
endday=input(title="バックテスを終わる日/finish date day", defval=timestamp("1 Jan 2099 19:30 +0000"), group="期間")
//polt indicators that we use
malong=ta.sma(close,malongperiod)
mashort=ta.sma(close,mashortperiod)
plot(malong,color=color.aqua,linewidth = 2)
plot(mashort,color=color.yellow,linewidth = 2)
//date range
datefilter = true
//open conditions
if close>malong and close<mashort and strategy.position_size == 0 and datefilter and ta.rsi(close,3)<30
strategy.entry(id="long", direction=strategy.long)
//sell conditions
strategy.exit(id="cut",from_entry="long",stop=(1-0.01*stoprate)*strategy.position_avg_price,limit=(1+0.01*profit)*strategy.position_avg_price)
if close>mashort and close<low[1] and strategy.position_size>0
strategy.close(id ="long")