Стратегия пересечения скользящих средних на основе разных периодов


Дата создания: 2023-12-19 13:34:30 Последнее изменение: 2023-12-19 13:34:30
Копировать: 0 Количество просмотров: 694
1
Подписаться
1621
Подписчики

Стратегия пересечения скользящих средних на основе разных периодов

Обзор

Среднелинейная кросс-стратегия - это количественная торговая стратегия, которая использует индикаторные движущиеся средние ((EMA) для создания торговых сигналов разных циклов. Эта стратегия использует кросс-сигналы трех EMA: 5 циклов, 9 циклов и 21 циклов, чтобы определить рыночные тенденции и создать сигналы покупки и продажи.

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

Ключевыми показателями стратегии являются три EMA - 5 циклов, 9 циклов и 21 циклов. Торговая логика основана на следующем:

  1. 5-циклическая EMA прорыв вверх при пересечении 9-циклической EMA создает сигнал купить; 5-циклическая EMA прорыв вниз при пересечении 9-циклической EMA создает сигнал продать.

  2. 21-циклическая EMA может быть использована для проверки торгового сигнала. То есть, сигнал покупки более эффективен, когда 5-циклическая EMA и 9-циклическая EMA выше, чем 21-циклическая EMA; сигнал продажи более эффективен, когда они оба ниже 21-циклической EMA.

  3. 100 циклов и 200 циклов EMA используются для определения среднесрочных и долгосрочных тенденций на рынке. Они могут служить подтверждением или предупреждением больших тенденций для краткосрочных торговых сигналов.

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

Эта стратегия имеет следующие преимущества:

  1. Простые в использовании и внедрении.

  2. Чувствительность к рыночным реакциям. 5-циклическая и 9-циклическая EMA очень чувствительны к изменениям цен и могут быстро улавливать краткосрочные тенденции.

  3. Легко устанавливается стоп-стоп. Сама EMA может служить в качестве мобильной стоп-линии.

  4. Хорошая масштабируемость. Можно легко вводить другие циклические EMA или технические показатели для обогащения системы.

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

В этой стратегии также есть следующие основные риски:

  1. Риск ложного сигнала. Пересечение EMA не является стопроцентно надежным и может привести к ложному прорыву.

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

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

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

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

  1. Введение других показателей фильтрации сигналов, таких как KD, MACD и т. д., снижает вероятность ложного сигнала.

  2. Увеличение предела убытков, снижение убытков.

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

  4. Автоматизация всего процесса транзакций в сочетании с количественной структурой.

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

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

Исходный код стратегии
/*backtest
start: 2022-12-12 00:00:00
end: 2023-12-18 00:00:00
period: 1d
basePeriod: 1h
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/
// © nagversion

//@version=5
strategy("5/9/21 EMA Strategy with 200 and 100 EMA", overlay=true)

// Calculate EMAs
ema5 = ta.ema(close, 5)
ema9 = ta.ema(close, 9)
ema21 = ta.ema(close, 21)
ema100 = ta.ema(close, 100)
ema200 = ta.ema(close, 200)

// Plot EMAs
plot(ema5, title="5 EMA", color=color.blue)
plot(ema9, title="9 EMA", color=color.yellow)
plot(ema21, title="21 EMA", color=color.red)
plot(ema100, title="100 EMA", color=color.purple)
plot(ema200, title="200 EMA", color=color.green)

// Strategy conditions
longCondition = ta.crossover(ema5, ema9) and ta.crossover(ema9, ema21)
shortCondition = ta.crossunder(ema5, ema9) and ta.crossunder(ema9, ema21)

if (longCondition)
    strategy.entry("Long", strategy.long)

if (shortCondition)
    strategy.entry("Short", strategy.short)

// Set strategy properties if required (like stop loss, take profit, etc.)