Стратегия отслеживания количественного разворота с двойным фактором


Дата создания: 2023-12-20 17:26:38 Последнее изменение: 2023-12-20 17:26:38
Копировать: 0 Количество просмотров: 593
1
Подписаться
1621
Подписчики

Стратегия отслеживания количественного разворота с двойным фактором

Обзор

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

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

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

  1. 123 формы переворачиваются

Судя по величине соотношения между ценой закрытия за последние два дня и текущей ценой закрытия, формируется форма “высокий-высокий-низкий” или “низкий-низкий-высокий”, что указывает на возможный обратный сигнал.

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

  1. Ошеломляющий осциллятор

Awesome Oscillator - динамический индикатор, построенный на основе разницы между средне- и краткосрочной средней линией. Когда быстрая линия пересекает медленную линию сверху вниз, это продажная точка; когда она пересекает ее снизу вверх, это покупательная точка.

В этой стратегии используется свободное положение данного показателя для определения точки купли-продажи.

  1. Двофакторное подтверждение

С помощью двойного подтверждения 123 и Awesome Oscillator можно эффективно отфильтровывать ложную обратную связь и повышать точность ввода времени.

Стратегические преимущества

  1. Использование двойного фактора для определения точки обратного отклонения может эффективно отфильтровывать ложные обратные сигналы.

  2. Awesome Oscillator используется в качестве динамического индикатора для повышения точности Entry timing.

  3. Включение стохастических индикаторов позволяет избежать риска входа вверх и входа вниз.

  4. Сама по себе обратная стратегия обладает большим преимуществом по сравнению с выигрышем и убытком.

Стратегический риск

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

  2. Риск переоптимизации. Настройка параметров показателя требует тестовой оптимизации для разных рынков, чтобы предотвратить переоптимизацию.

  3. Риск обратного рынка. При сильной рыночной конъюнктуре обратная стратегия может привести к регрессионным убыткам.

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

  1. Оптимизация комбинации параметров показателей для повышения их надежности.

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

  3. Выбор в сочетании с отраслями и секторами, чтобы избежать неправильного выбора акций.

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

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

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

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

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

Исходный код стратегии
/*backtest
start: 2023-12-12 00:00:00
end: 2023-12-14 05:00:00
period: 20m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 12/08/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
//    This indicator is based on Bill Williams` recommendations from his book 
//    "New Trading Dimensions". We recommend this book to you as most useful reading.
//    The wisdom, technical expertise, and skillful teaching style of Williams make 
//    it a truly revolutionary-level source. A must-have new book for stock and 
//    commodity traders.
//    The 1st 2 chapters are somewhat of ramble where the author describes the 
//    "metaphysics" of trading. Still some good ideas are offered. The book references 
//    chaos theory, and leaves it up to the reader to believe whether "supercomputers" 
//    were used in formulating the various trading methods (the author wants to come across 
//    as an applied mathemetician, but he sure looks like a stock trader). There isn't any 
//    obvious connection with Chaos Theory - despite of the weak link between the title and 
//    content, the trading methodologies do work. Most readers think the author's systems to 
//    be a perfect filter and trigger for a short term trading system. He states a goal of 
//    10%/month, but when these filters & axioms are correctly combined with a good momentum 
//    system, much more is a probable result.
//    There's better written & more informative books out there for less money, but this author 
//    does have the "Holy Grail" of stock trading. A set of filters, axioms, and methods which are 
//    the "missing link" for any trading system which is based upon conventional indicators.
//    This indicator plots the oscillator as a histogram where periods fit for buying are marked 
//    as blue, and periods fit for selling as red. If the current value of AC (Awesome Oscillator) 
//    is over the previous, the period is deemed fit for buying and the indicator is marked blue. 
//    If the AC values is not over the previous, the period is deemed fir for selling and the indicator 
//    is marked red.
//
// 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


BWAO(nLengthSlow,nLengthFast) =>
    pos = 0.0
    xSMA1_hl2 = sma(hl2, nLengthFast)
    xSMA2_hl2 = sma(hl2, nLengthSlow)
    xSMA1_SMA2 = xSMA1_hl2 - xSMA2_hl2
    pos := iff(xSMA1_SMA2 > xSMA1_SMA2[1], 1,
    	      iff(xSMA1_SMA2 < xSMA1_SMA2[1], -1, nz(pos[1], 0)))   
    pos

strategy(title="Combo Backtest 123 Reversal & Awesome Oscillator (AO)", 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, "---- Awesome Oscillator (AO) ----")
nLengthSlow = input(34, minval=1, title="Length Slow")
nLengthFast = input(5, minval=1, title="Length Fast")
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posBWAO = BWAO(nLengthSlow,nLengthFast)
pos = iff(posReversal123 == 1 and posBWAO == 1 , 1,
	   iff(posReversal123 == -1 and posBWAO == -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 )