Стратегия DEC


Дата создания: 2023-10-31 11:47:00 Последнее изменение: 2023-10-31 11:47:00
Копировать: 0 Количество просмотров: 726
1
Подписаться
1617
Подписчики

Стратегия DEC

Обзор

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

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

Показатель Raleigh DEC используется для идентификации местной предельной точки цены. Он определяет, является ли эта точка потенциальной предельной точкой, путем статистического анализа отношений между ценой закрытия и ценой открытия на догеновой линии K.

Основная логика этой стратегии заключается в следующем:

  1. Вычислить показатель DEC основного переплета ((maj), параметром которого является barcount ((maj_qual) и найти диапазон ((maj_len) }}.

  2. Когда главный релейный DEC последовательно прорывает вверх K-линию maj_qual, и максимальная цена этой K-линии превышает максимальную цену предыдущей K-линии maj_len, то считается, что главный релейный DEC исчерпан вверх, и производится многосигнал.

  3. Вычислите второстепенный показатель DEC ((min), с параметрами barcount ((min_qual) и поисковой зоной ((min_len) ).

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

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

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

  • Стратегия обладает сильной способностью к определению тенденций.

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

  • Можно использовать сигналы DEC основного реле в отдельности или в сочетании с сигналами DEC второстепенного реле для более полного и точного суждения.

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

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

  • Как и другие индикаторы, индикатор Relay DEC также может иметь ложные сигналы, которые необходимо проверять в сочетании с другими индикаторами.

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

  • Эта стратегия основана на K-линейной форме и может упустить возможность в краткосрочных ценовых колебаниях.

  • Необходимо обратить внимание на K-линейную часть, которая пробивается через релейный DEC-сигнал, чтобы предотвратить провал обратного тренда.

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

  • Оптимизация параметров, повышение адаптивности параметров. Можно рассматривать динамические параметры оптимизации.

  • Фильтрация в сочетании с другими показателями, такими как величина энергии, скользящая средняя, повышает надежность сигнала.

  • Присоединяйтесь к стратегии Stop Loss и контролируйте свои убытки.

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

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

  • Оптимизация стратегий управления капиталом, например, размеров и управления позициями.

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

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

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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Joy_Bangla

//@version=4
strategy("A Strategy for Leledec", shorttitle ="Leledec Strategy", overlay=true, commission_value=0.075, initial_capital=10000, default_qty_type = strategy.percent_of_equity, default_qty_value = 10)

maj = input(true, "Major Leledec Exhausion Bar ::  Show")
min=input(false, "Minor Leledec Exhausion Bar ::  Show")
leledcSrc = input(close, "Major Leledec Exhausion Bar ::  Source")
maj_qual = input(6, "Major Leledec Exhausion Bar ::  Bar count no")
maj_len = input(30, "Major Leledec Exhausion Bar ::  Highest / Lowest")
min_qual=input(5, "Minor Leledec Exhausion Bar ::  Bar count no")
min_len=input(5, "Minor Leledec Exhausion Bar ::  Bar count no")
bindexSindex = input(1, "bindexSindex")
closeVal = input(4, "Close")

lele(qual, len) =>
    bindex = 0
    sindex = 0
    bindex := nz(bindex[bindexSindex], 0)
    sindex := nz(sindex[bindexSindex], 0)
    ret = 0
    if close > close[closeVal]
        bindex := bindex + 1
        bindex
    if close < close[closeVal]
        sindex := sindex + 1
        sindex
    if bindex > qual and close < open and high >= highest(high, len)
        bindex := 0
        ret := -1
        ret
    if sindex > qual and close > open and low <= lowest(low, len)
        sindex := 0
        ret := 1
        ret
    return = ret
    return

major = lele(maj_qual, maj_len)
minor=lele(min_qual,min_len)

plotchar(maj ? major == -1 ? high : na : na, char='•', location=location.absolute, color=color.red, transp=0, size=size.large)
plotchar(maj ? major == 1 ? low : na : na, char='•', location=location.absolute, color=color.lime, transp=0, size=size.large)

plotchar(min ? (minor==1?high:na) : na, char='x', location=location.absolute, color=color.red, transp=0, size=size.small)
plotchar(min ? (minor==-1?low:na) : na, char='x', location=location.absolute, color=color.lime, transp=0, size=size.small)

leledecMajorBullish = major==1?low:na
leledecMajorBearish = major==-1?high:na

leledecMinorBullish = minor==1?low:na
leledecMinorBearish = minor==-1?high:na



buySignalBasedOnMajorLeledecOnly = major==1?low:na
sellSignalBasedOnMajorLeldecOnly = minor==-1?high:na


// === INPUT BACKTEST RANGE ===
fromMonth = input(defval = 1,    title = "From Month",      type = input.integer, minval = 1, maxval = 12)
fromDay   = input(defval = 1,    title = "From Day",        type = input.integer, minval = 1, maxval = 31)
fromYear  = input(defval = 2018, title = "From Year",       type = input.integer, minval = 2017, maxval = 2030)
thruMonth = input(defval = 12,    title = "Thru Month",      type = input.integer, minval = 1, maxval = 11)
thruDay   = input(defval = 1,    title = "Thru Day",        type = input.integer, minval = 1, maxval = 30)
thruYear  = input(defval = 2030, title = "Thru Year",       type = input.integer, minval = 2017, maxval = 2030)

// === INPUT SHOW PLOT ===
showDate  = input(defval = true, title = "Show Date Range", type = input.bool)

// === FUNCTION EXAMPLE ===
start     = timestamp(fromYear, fromMonth, fromDay, 00, 00)        // backtest start window
finish    = timestamp(thruYear, thruMonth, thruDay, 23, 59)        // backtest finish window
window()  => time >= start and time <= finish ? true : false       // create function "within window of time"

if (window())
    strategy.entry("buy", strategy.long, when=buySignalBasedOnMajorLeledecOnly)
    strategy.entry("sell", strategy.short, when=sellSignalBasedOnMajorLeldecOnly)