Стратегия торговли Double TEMA Crossover


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

Обзор

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

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

Стратегия использует TEMA как основной технический показатель. Формула расчета TEMA:

TEMA = (3*EMA1) - (3*EMA2) + EMA3

Из них EMA1, EMA2 и EMA3 - это индексированные скользящие средние EMA длиной N. TEMA может быстрее реагировать на изменения цен, рассчитывая EMA три раза.

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

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

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

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

  1. Используя TEMA, можно быстрее реагировать на изменения цен и улавливать обратные тенденции.

  2. Двойная структура TEMA позволяет отфильтровывать ложные прорывы и вводить высоковероятные трендовые сделки.

  3. Настройка параметров может быть гибкой и может быть скорректирована в зависимости от рынка.

  4. Стратегическая логика проста и понятна, реализация легко понятна, использование средств высоко.

  5. Лучше получать прибыль в трендовых ситуациях и эффективнее работать на рынке с четкой тенденцией.

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

Также существуют следующие риски:

  1. В результате, в результате сборов, часто возникают убытки в торговле.

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

  3. Невозможность эффективно реагировать на кратковременные изменения, вызванные внезапными событиями.

  4. Есть определенная задержка, возможно, мы пропустим короткую линию.

  5. В условиях сильных потрясений риски открытия позиции высоки.

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

Соответствующие меры управления рисками:

  1. Оптимизируйте параметры, чтобы избежать чрезмерной чувствительности.

  2. В сочетании с другими показателями фильтрует входные сигналы.

  3. Использование стоп-лосса на выезде обеспечивает контроль за одиночными потерями.

  4. Снижение размеров позиций, контроль рисков в отдельных сделках.

  5. Добавление параметров для оптимизации суждений и механизмов человеческого вмешательства.

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

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

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

  2. Добавление комбинаций других показателей, таких как MACD, Бринбанд и т. д., повышает эффективность сигнала.

  3. Добавление стратегий сдерживания убытков, таких как сдерживание движения, сдерживание времени, сдерживание ATR и т. Д., чтобы контролировать убытки.

  4. В сочетании с индексом VIX следует избегать открытия позиции в паническом состоянии.

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

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

  7. Автоматическая оптимизация параметров в сочетании с машинным обучением.

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

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

Исходный код стратегии
/*backtest
start: 2023-01-01 00:00:00
end: 2023-10-11 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/
// © nickrober

//@version=4
strategy(title="TEMA Cross Backtest", shorttitle="TEMA_X_BT", overlay=true, commission_type=strategy.commission.percent, commission_value=0, initial_capital = 1000,  default_qty_type=strategy.percent_of_equity, default_qty_value=100)

// Backtest inputs
FromMonth = input(defval=1, title="From Month", minval=1, maxval=12)
FromDay = input(defval=1, title="From Day", minval=1, maxval=31)
FromYear = input(defval=2020, title="From Year", minval=2010)
ToMonth = input(defval=1, title="To Month", minval=1, maxval=12)
ToDay = input(defval=1, title="To Day", minval=1, maxval=31)
ToYear = input(defval=9999, title="To Year", minval=2017)

// Define backtest timewindow
start = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59)  // backtest finish window
window() =>  true

//TEMA Section
xLength = input(20, minval=1, title="Fast Length")
xPrice = close
xEMA1 = ema(xPrice, xLength)
xEMA2 = ema(xEMA1, xLength)
xEMA3 = ema(xEMA2, xLength)
xnRes = (3 * xEMA1) - (3 * xEMA2) + xEMA3
xnResP = plot(xnRes, color=color.green, linewidth=2, title="TEMA1")

yLength = input(60, minval=1, title="Slow Length")
yPrice = close
yEMA1 = ema(yPrice, yLength)
yEMA2 = ema(yEMA1, yLength)
yEMA3 = ema(yEMA2, yLength)
ynRes = (3 * yEMA1) - (3 * yEMA2) + yEMA3
ynResP = plot(ynRes, color=color.red, linewidth=2, title="TEMA2")

fill(xnResP, ynResP, color=xnRes > ynRes ? color.green : color.red, transp=75, editable=true)

// Buy and Sell Triggers
LongEntryAlert = xnRes > ynRes
LongCloseAlert = xnRes < ynRes
ShortEntryAlert = xnRes < ynRes
ShortCloseAlert = xnRes > ynRes

// Entry & Exit signals
strategy.entry("Long", strategy.long, when = xnRes > ynRes and window()) 
strategy.close("Long", when = xnRes < ynRes)
//strategy.entry("Short", strategy.short, when = xnRes < ynRes and window())
//strategy.close("Short", when = xnRes > ynRes)