Сочетание стратегии двойной скользящей средней и стохастического индикатора


Дата создания: 2024-01-12 11:16:52 Последнее изменение: 2024-01-12 11:16:52
Копировать: 0 Количество просмотров: 567
1
Подписаться
1617
Подписчики

Сочетание стратегии двойной скользящей средней и стохастического индикатора

Обзор

В данной статье представлена стратегия количественного трейдинга, использующая комбинацию стратегий двойной равнолинейной стратегии и случайных индикаторов. Эта стратегия использует возможности отслеживания тенденций с помощью движущейся равнолинейной стратегии и особенности сверхпокупа и сверхпродажи случайных индикаторов для формирования торговых сигналов.

Стратегический принцип

Стратегия состоит из двух частей:

  1. Двойная стратегия

Используя быстро движущуюся среднюю линию и медленно движущуюся среднюю линию, формируются сигналы покупки и продажи. Быстрая средняя линия позволяет быстрее улавливать тенденции изменения цены, а медленная средняя линия фильтрует ложные сигналы.

  1. Случайные показатели

Используйте колебательные свойства случайных индикаторов для идентификации перепродажи. Когда случайный индикатор выше долговой линии, это сигнал перекупа, когда случайный индикатор ниже долговой линии - сигнал перепродажи.

После объединения двух частей сигнала формируется окончательный торговый сигнал. Двойная равнолинейная стратегия отслеживает основные тенденции, а случайные индикаторы помогают избежать неблагоприятных ситуаций.

Анализ преимуществ стратегии

  • Преимущества комбинированных двухместных и случайных индикаторов, более стабильные.
  • Следить за среднелинейным трендом, подтверждать случайные индикаторы, хорошо работать.
  • Настраиваемые параметры, адаптированные к различным рыночным условиям.

Анализ стратегических рисков

  • Двойная равномерная линия может привести к ошибочным сигналам.
  • Неправильная настройка параметров случайного индикатора может пропустить тенденцию.
  • Параметры должны быть скорректированы в соответствии с изменяющимися обстоятельствами.

Снижение риска может быть достигнуто путем оптимизации комбинации параметров, а также путем добавления стоп-лосса для контроля потерь.

Направление оптимизации стратегии

Эта стратегия может быть оптимизирована в следующих аспектах:

  1. Тестирование влияния различных средних параметров на эффективность стратегии.
  2. Тестирование влияния различных параметров случайных показателей на стабильность стратегии.
  3. Добавление фильтрации трендов повышает вероятность победы стратегии.
  4. Создание динамического механизма для отслеживания убытков, чтобы контролировать их.

Подвести итог

Эта стратегия использует комбинированную стратегию двойной равнолинейной стратегии и преимущества случайных индикаторов. Следя за основными тенденциями рынка, одновременно избегайте неблагоприятных обратных действий. Лучшую эффективность стратегии можно получить путем оптимизации комбинации параметров.

Исходный код стратегии
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 24/11/2020
// This is combo strategies for get a cumulative signal. 
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The 
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close 
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. 
// The strategy sells at market, if close price is lower than the previous close price 
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// As the name suggests, High low bands are two bands surrounding the underlying’s 
// price. These bands are generated from the triangular moving averages calculated 
// from the underlying’s price. The triangular moving average is, in turn, shifted 
// up and down by a fixed percentage. The bands, thus formed, are termed as High 
// low bands. The main theme and concept of High low bands is based upon the triangular 
// moving average. 
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
    vFast = sma(stoch(close, high, low, Length), KSmoothing) 
    vSlow = sma(vFast, DLength)
    pos = 0.0
    pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
	         iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) 
	pos

    
HLB(Length, PercentShift) =>
    pos = 0.0
    xTMA = sma(sma(close, Length), Length)
    xHighBand = xTMA + (xTMA * PercentShift / 100)
    xLowBand = xTMA - (xTMA * PercentShift / 100)
    pos :=iff(close > xHighBand, 1,
           iff(close <xLowBand, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & High Low Bands", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
Length_HLB = input(14, minval=1)
PercentShift = input(1, minval = 0.01, step = 0.01)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posHLB = HLB(Length_HLB, PercentShift)
pos = iff(posReversal123 == 1 and posHLB == 1 , 1,
	   iff(posReversal123 == -1 and posHLB == -1, -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)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )