Умная стратегия выхода из кризиса

Автор:Чао Чжан, Дата: 2023-10-08 15:17:51
Тэги:

Обзор

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

Принципы

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

  1. 123 Стратегия отмены

    Стратегия 123 переворота происходит из книги "Как я утроил свои деньги на фьючерсном рынке" Ульфа Дженсена, страница 183.

    Логика заключается в следующем: когда цена закрытия выше предыдущей цены закрытия в течение 2 дней подряд, а 9-дневная линия Stochastic Slow ниже 50, вы идете в длинный; когда цена закрытия ниже предыдущей цены закрытия в течение 2 дней подряд, а 9-дневная линия Stochastic Fast выше 50, вы идете в короткий.

  2. Стратегия осциллятора с дифференцированным детектором

    Стратегия коэффициента колебания пивового детектора была предложена Джоргосом Силигардосом.

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

    When price > moving average:
        Indicator value = (RSI value - 35) / (85 - 35)
    When price <= moving average: 
        Indicator value = (RSI value - 20) / (70 - 20)
    
    If indicator value > 50, go long
    If indicator value < 50, go short
    

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

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

  • Использует двойные индикаторы для более надежных сигналов
  • Зафиксирует новые тенденции на ключевых технических уровнях
  • Операции по выходу из банковской системы позволяют увеличить потенциал прибыли
  • Сочетание обратных и индикаторных фильтров позволяет избежать сбоев в диапазоне
  • Применяется для нескольких продуктов с гибкостью

Анализ рисков

  • Двойные вершины не могут полностью устранить риски ложного взрыва
  • Настройка индикатора требует опыта, неправильные параметры могут вызвать неправильные сигналы
  • Эффективные стратегии стоп-лосса необходимы для контроля одиночных потерь
  • Неудачный выход может привести к большим потерям
  • Производительность зависит от настройки параметров для различных продуктов

Управление рисками и оптимизация:

  • Оптимизировать параметры индикатора для снижения ложных сигналов
  • Используйте движущиеся или задерживающиеся остановки для ограничения потерь
  • Оценить устойчивость вырывов, чтобы избежать их отмены
  • Настройка параметров на основе различных характеристик продукта

Руководство по оптимизации

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

  1. Испытать различные системы скользящих средних для поиска оптимальных комбинаций параметров

  2. Оптимизировать параметры RSI для уменьшения ложных сигналов

  3. Добавить фильтр объема для обеспечения действительных вырывов

  4. Включить индикаторы, определяющие тенденцию, чтобы избежать перерывов в противоположной тенденции

  5. Использование машинного обучения для автоматической настройки параметров

  6. Добавление стратегий стоп-лосса для контроля рисков

  7. Оценить устойчивость выхода и установить цели прибыли

  8. Анализировать различные характеристики продукта для корректировки параметров

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

Заключение

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


/*backtest
start: 2023-09-30 00:00:00
end: 2023-10-03 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 20/04/2021
// 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
// The Pivot Detector Oscillator, by Giorgos E. Siligardos
// The related article is copyrighted material from Stocks & Commodities 2009 Sep
//
// 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


PDO(Length_MA,Length_RSI,UpBand,DownBand,MidlleBand) =>
    pos = 0.0
    xMA = sma(close, Length_MA)
    xRSI = rsi(close, Length_RSI)
    nRes = iff(close > xMA, (xRSI - 35) / (85-35), 
             iff(close <= xMA, (xRSI - 20) / (70 - 20), 0))
    pos:= iff(nRes * 100 > 50, 1,
    	   iff(nRes * 100 < 50, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Pivot Detector Oscillator)", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- Pivot Detector Oscillator ----")
Length_MA = input(200, minval=1)
Length_RSI = input(14, minval=1)
UpBand = input(100, minval=1)
DownBand = input(0)
MidlleBand = input(50)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posPDO = PDO(Length_MA,Length_RSI,UpBand,DownBand,MidlleBand)
pos = iff(posReversal123 == 1 and posPDO == 1 , 1,
	   iff(posReversal123 == -1 and posPDO == -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 )

Больше