Совместная стратегия создания богатства

Автор:Чао Чжан, Дата: 2023-11-01 16:28:55
Тэги:

img

Обзор

Эта стратегия представляет собой композитную торговую стратегию, которая направлена на получение прибыли в среднесрочной и краткосрочной перспективе.

Логика стратегии

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

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

Эта часть адаптирована из обратной стратегии, описанной на странице 183 книги Как я утроил свои деньги на фьючерсном рынке Ульфа Дженсена. Она длится, когда цена закрытия выше предыдущего закрытия в течение 2 дней подряд, а 9-дневный медленный стохастик ниже 50. Она длится коротко, когда цена закрытия ниже предыдущего закрытия в течение 2 дней подряд, а 9-дневный быстрый стохастик выше 50.

Отличная стратегия осциллятора

В этой части используется индикатор Awesome Oscillator, который сравнивает текущее значение AO с предыдущим. Если текущее значение AO выше предыдущего, это указывает на хорошую возможность пойти на длинный, а цвет панели гистограммы синий. Если текущее значение AO не выше предыдущего, это указывает на хорошую возможность пойти на короткий, а цвет панели красный.

Комбинированный сигнал генерируется следующим образом: если стратегии 123 Reversal и Awesome Oscillator оба дают сигналы покупки, примите длинную стратегию; если оба дают сигналы продажи, примите короткую стратегию.

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

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

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

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

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

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

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

Кроме того, настройки параметров также влияют на эффективность стратегии.

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

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

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

  1. Проверьте и оптимизируйте параметры, чтобы найти оптимальную комбинацию параметров.

  2. Добавить другие индикаторы или фильтры для дальнейшего улучшения качества сигнала.

  3. Оптимизировать в разных временных рамках для многочасового подхода.

  4. Добавьте динамические остановки для лучшего контроля рисков.

  5. Рассмотреть фактические затраты на транзакции и определить критерии входа/выхода.

  6. Рассмотрим направление основного тренда, чтобы избежать торговли контратендом.

Заключение

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


/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-31 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 09/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 plots the oscillator as a histogram where blue denotes 
//    periods suited for buying and red . for selling. If the current value 
//    of AO (Awesome Oscillator) is above previous, the period is considered 
//    suited for buying and the period is marked blue. If the AO value is not 
//    above previous, the period is considered suited for selling and the 
//    indicator marks it as 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


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

strategy(title="Combo Backtest 123 Reversal & Awesome Oscillator (AC)", 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 (AC) ----")
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)
posBWAC = BWAC(nLengthSlow,nLengthFast)
pos = iff(posReversal123 == 1 and posBWAC == 1 , 1,
	   iff(posReversal123 == -1 and posBWAC == -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 )

Больше