Стратегия отслеживания ежедневной скользящей средней стоимости золота

Автор:Чао Чжан, Дата: 2024-01-12 11:54:21
Тэги:

img

Обзор

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

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

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

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

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

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

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

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

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

Преимущества этой стратегии:

  1. Использование нескольких индикаторов для определения направления стоимости золота снижает вероятность плохих сделок.

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

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

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

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

Эта стратегия также сопряжена с некоторыми рисками:

  1. Внезапные события могут повлечь за собой большие потери, требующие ручного вмешательства или более расслабленного расстояния остановки потери.

  2. EMA не может полностью отфильтровать рыночный шум. Ошибочные сигналы могут вызвать ненужные сделки. Параметры могут быть оптимизированы или добавлены дополнительные фильтры.

  3. Неправильные настройки стоп-расстояния также увеличивают риски - слишком тесное имеет тенденцию к преждевременному остановке, а слишком широкое не может эффективно контролировать потери.

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

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

  1. Добавить другие технические индикаторы для фильтрации сигналов, такие как MACD, Bollinger Bands и т. д., чтобы уменьшить ошибочные сигналы EMA.

  2. Переход на адаптивные остановки, которые регулируют дистанцию остановки на основе волатильности рынка.

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

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

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

Заключение

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


/*backtest
start: 2024-01-04 00:00:00
end: 2024-01-11 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("My Strategy", overlay=true)

// Inputs for user to modify
startHour = input(11, title="Start Hour")
endHour = input(16, title="End Hour")
trailingStop = input(100, title="Trailing Stop Start (pips)")
trailingStep = input(10, title="Trailing Step (pips)")

// Define the EMAs
longEma = ema(close, 200)
shortEma = ema(close, 50)

// Calculate daily open, high, low, close
daily_open = security(syminfo.tickerid, "D", open[1])
daily_close = security(syminfo.tickerid, "D", close[1])

// Time conditions
timeAllowed = (hour >= startHour) and (hour <= endHour)

// Define long condition based on your criteria
longCondition = (daily_close > daily_open) and (close > daily_open) and (shortEma > longEma) and timeAllowed

// Define short condition based on your criteria
shortCondition = (daily_close < daily_open) and (close < daily_open) and (shortEma < longEma) and timeAllowed

// Enter the trade
if (longCondition)
    strategy.entry("Long", strategy.long)

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

// Trailing Stop Loss
strategy.exit("Exit Long", "Long", trail_points = trailingStop / syminfo.mintick, trail_offset = trailingStep / syminfo.mintick)
strategy.exit("Exit Short", "Short", trail_points = trailingStop / syminfo.mintick, trail_offset = trailingStep / syminfo.mintick)

// Plotting
plot(daily_open, color=color.red, title="Daily Open")
plot(longEma, color=color.blue, title="200 EMA")
plot(shortEma, color=color.orange, title="50 EMA")


Больше