Стратегия разворота прорыва бинарного импульса


Дата создания: 2024-02-28 17:20:02 Последнее изменение: 2024-02-28 17:20:02
Копировать: 0 Количество просмотров: 633
1
Подписаться
1617
Подписчики

Стратегия разворота прорыва бинарного импульса

Обзор

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

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

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

  1. 123 Стратегия переворота

Используйте обратную стратегию, предложенную Ульфом Дженсеном в его книге “Как я могу удвоить свои средства на фьючерсном рынке” . Сделайте выигрыш, когда цена закрытия 2 дня подряд выше цены закрытия предыдущего дня, а на 9 день медленный K-линейный индекс акций ниже 50; сделайте выигрыш, когда цена закрытия 2 дня подряд ниже цены закрытия предыдущего дня, а на 9 день быстрый K-линейный индекс акций выше 50.

  1. Индекс быков

Используйте динамический показатель Вадима Гимельфаба, представленный в его книге “Сравнительный индикатор” “Толковый медведь”. Он определяет силу плюс-пустоты, рассчитывая отношение текущей K-линии к предыдущей K-линии, и дает сигнал для выполнения плюс-пустоты.

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

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

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

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

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

В этой стратегии есть определенные риски, главные из которых:

  1. Риск неудачи обратного курса. Бывает трудно распознать обратный сигнал, но есть большая вероятность того, что после него цена продолжит движение по своему тренду.
  2. Потеря возможности торговать при несоответствии сигналов двойной фильтрации.
  3. Неправильные параметры приводят к неточному распознаванию обратного сигнала.
  4. Эта стратегия больше подходит для средне- и долгосрочных сделок, а для коротких сделок она не работает.

Ответ на этот вопрос таков:

  1. Применение стратегии стоп-лосса для контроля за одиночными потерями.
  2. Параметры оптимизации, различные сорта могут выбирать различные комбинации параметров.
  3. В сочетании с другими показателями в качестве вспомогательного суждения.

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

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

  1. Тестирование влияния различных параметров на эффективность стратегии, поиск оптимального сочетания параметров. Например, параметры цикличности для корректировки показателя Стокера, параметры сглаживания для показателя KDJ и т. Д.
  2. Добавление стратегии стоп-лосса, чтобы контролировать одиночные потери. Стоп-лосса может быть установлен в сочетании с показателем ATR.
  3. Проверка сигналов в сочетании с другими индикаторами. При появлении сигналов от таких показателей, как MACD, KD, RSI, следует учитывать возможность подачи торговых сигналов.
  4. Параметры оптимизируются с помощью алгоритмов машинного обучения, что позволяет динамически корректировать параметры.

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

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

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

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 05/07/2019
// 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
//  Bull Power Indicator
//  To get more information please see "Bull And Bear Balance Indicator" 
//  by Vadim Gimelfarb. 
//
// 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

BullPower(SellLevel, BuyLevel) =>
    pos = 0
    value = iff (close < open ,  
             iff (close[1] < open ,  max(high - close[1], close - low), max(high - open, close - low)),
              iff (close > open, 
               iff(close[1] > open,  high - low, max(open - close[1], high - low)), 
                 iff(high - close > close - low, 
                  iff (close[1] < open, max(high - close[1], close - low), high - open), 
                   iff (high - close < close - low, 
                     iff(close[1] > open,  high - low, max(open - close, high - low)), 
                      iff (close[1] > open, max(high - open, close - low),
                       iff(close[1] < open, max(open - close, high - low), high - low))))))
    pos := iff(value > SellLevel, -1,
	         iff(value <= BuyLevel, 1, nz(pos[1], 0)))
    pos

strategy(title="Combo Backtest 123 Reversal & Bull Power", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
SellLevel = input(15, step=1)
BuyLevel = input(3, step=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posBullPower = BullPower(SellLevel, BuyLevel)
pos = iff(posReversal123 == 1 and posBullPower == 1 , 1,
	   iff(posReversal123 == -1 and posBullPower == -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 )