Крипто-стратегия отслеживания бычьего бега

Автор:Чао Чжан, Дата: 2023-12-08 15:45:47
Тэги:

img

Обзор

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

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

Основная логика этой стратегии заключается в определении направления тренда на основе перекрестки между двумя динамическими скользящими средними, DEMA и TEMA.

DEMA означает двойной экспоненциальный скользящий средний. Он сочетает в себе сбалансированную функцию EMA и оптимизирует проблему задержки EMA. Его формула:

DEMA = 2*EMA(CLOSE, N) - EMA(EMA(CLOSE, N), N)

Здесь N - это Demalength.

TEMA - это трикратная экспоненциальная скользящая средняя.

EMA1 = EMA ((Close, Temalength) EMA2 = EMA ((EMA1, Тема длины) EMA3 = EMA ((EMA2, Темпа) TEMA = 3EMA1 - 3ЕМА2 + ЕМА3

Когда TEMA пересекает DEMA, это считается золотым крестом, чтобы пойти длинным. Когда TEMA пересекается ниже DEMA, это считается смертным крестом, чтобы пойти коротким.

Кроме того, стратегия устанавливает delayBars для обеспечения действительности сигналов и предотвращения ложных сигналов.

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

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

  1. Более точное определение тенденции с использованием двух динамических МА

По сравнению с традиционными EMA и SMA, DEMA и TEMA являются более чувствительными динамическими MAs, которые могут быстро улавливать изменения тренда, тем самым повышая точность суждений о тенденциях рынка.

  1. Фильтрация ложных сигналов путем установки периода задержки

Параметр delayBars заставляет стратегию ждать некоторое время после появления сигнала, прежде чем вводить позиции.

  1. Снижение рисков путем двойной проверки

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

  1. Сильная универсальность

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

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

  1. Склонны попасть в ловушку на рынках с пиломатериалами

На рынке с огромными боковыми колебаниями, MAs могут часто пересекаться и генерировать ложные сигналы, которые вызывают убытки.

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

  1. Не удается определить ловушки или черные лебеди

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

Решение заключается в включении других показателей для оценки рисков или в надлежащем сокращении размеров позиций.

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

  1. Испытать больше типов МА

Помимо DEMA и TEMA, тестируйте комбинации SMA, EMA и других улучшенных MAs, чтобы найти наиболее подходящие для этого рынка.

  1. Оптимизировать параметры и периоды задержки

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

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

Учитывая различные характеристики продукта, найдите подходящие комбинации длин MA, периоды задержки для их колебаний цен и тенденций.

  1. Включить другие показатели для оценки риска

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

Заключение

Это базовый тренд, следующий за стратегией, основанной на динамическом перекрестке MA между DEMA и TEMA. Его преимуществами являются высокая стабильность, надежность и универсальность. Но он также имеет некоторую отстающую и слабую способность обнаружения обратного отклонения. Эта статья предоставляет комплексный анализ его плюсов, минусов и направлений оптимизации, служа ценными ссылками для использования этой стратегии. В целом, она предлагает типичный пример количественного дизайна торговой стратегии, достойный дальнейшего изучения.


/*backtest
start: 2022-12-01 00:00:00
end: 2023-12-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © jacobdickson255

strategy("Crypto Bull Run Tracker", overlay=true, pyramiding=0)

//Dema Scripting
Demalength = input.int(230, minval=1)
src = close
e1 = ta.ema(src, Demalength)
e2 = ta.ema(e1, Demalength)
dema = 2 * e1 - e2
plot(dema, "DEMA", color=#43A047)

//Tema Scripting
Temalength = input.int(210, minval=1)
ema1 = ta.ema(close, Temalength)
ema2 = ta.ema(ema1, Temalength)
ema3 = ta.ema(ema2, Temalength)
tema = 3 * (ema1 - ema2) + ema3
plot(tema, "TEMA", color=#2962FF)

delayBars = input(5, title="Bar Delay")
var int lastTradeBar = na

longCondition = ta.crossover(tema, dema) 
longExit = ta.crossunder(tema, dema)
shortCondition = ta.crossunder(tema, dema)
shortExit = ta.crossover(tema, dema)

// Exit conditions should be checked before entry conditions
// Close short position if a long condition is present
if ((shortExit and strategy.position_size < 0)) // If conditions for exiting the short are met, and there is a balance in the short direction, exit the short
    strategy.close("Short")
   

// Close long position if a short condition is present
if ((longExit and strategy.position_size > 0))
    strategy.close("Long")
   
// Now check for entry conditions
if (longCondition)
    strategy.entry("Long", strategy.long)
    lastTradeBar := bar_index

if (shortCondition)
    strategy.entry("Short", strategy.short)
    lastTradeBar := bar_index


Больше