Ежедневная стратегия DCA с касанием EMA

Автор:Чао Чжан, Дата: 2024-01-16 15:30:17
Тэги:

img

Обзор

Эта стратегия пина реализует ежедневный подход к средней стоимости доллара на платформе TradingView, включая сенсорные сигналы EMA для определения точек входа.

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

Стратегия имеет следующие ключевые черты:

  1. Средняя стоимость в долларах в день

    • Фиксированные суточные инвестиции независимо от рыночных взлетов и падений
    • Долгосрочные серийные инвестиции для снижения риска одной сделки
  2. ЭМА для входных сигналов

    • Сигнал покупки запускается, когда цена закрытия пересекает пределы EMA 5, 10, 20 и т.д.
    • Линии EMA служат поддержкой для избежания краткосрочных спадов
  3. Динамическая стоп-лосс

    • Продайте все позиции, если цена закрытия опустится ниже 20-дневной средней средней средней цены
    • Избегайте дальнейших потерь
  4. Лимит количества торгов

    • Максимальная стоимость торгов - 300 для контроля размеров позиций
    • Предотвращает чрезмерные инвестиции, превышающие потенциал активов

В частности, каждый день стратегия инвестирует фиксированную сумму и рассчитывает акции для покупки на основе цены закрытия. Если цена закрытия превышает любую из 5-, 10-, 20-дневных EMA и т. Д., Запускается сигнал покупки. Как только накопленное количество сделок достигнет 300 лимита, не будет больше покупок. Кроме того, если цена закрывается ниже 20-дневной SMA или достигает предварительно установленной даты выхода, все позиции очищаются.

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

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

  1. Диверсификация рисков

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

    • Кроссоверы EMA предотвращают покупки в периоды спада
    • Продолжение покупок во время отзыва диверсифицирует риск
  3. Динамическая стоп-потеря контролирует потери

    • Стоп-лосс позволяет своевременно выходить
    • Предотвращает большие потери
  4. Контроль торговых ограничений риски

    • Максимальный размер позиции предустановлен для предотвращения чрезмерных инвестиций
    • Сохраняет инвестиции в пределах потенциала активов
  5. Интуитивное визуализация EMA

    • ЭМА, изображенные на графике цен
    • Позволяет оператору легко контролировать
  6. Высокая настраиваемость

    • Специальные данные для суммы инвестиций, периодов EMA, остановок и т.д.
    • Корректировки, основанные на личных предпочтениях по риску

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

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

  1. Все еще существуют системные риски

    • Чёрный лебедь может привести к большим потерям
    • Диверсификация лишь уменьшает, но не устраняет риски
  2. Фиксированная сумма инвестиций

    • Ежедневные инвестиции в фиксированные фонды могут потерять положительный эффект в случае роста цен
    • Динамическая корректировка суммы может помочь
  3. EMA не могут реагировать на экстремальные движения

    • ЕМА медленнее реагируют на внезапные события и не могут вовремя остановить потери
    • В сочетании с KD, BOLL может помочь определить крайности
  4. Предельные пределы торговли

    • Предельный предел возможных прибылей
    • Необходимость сбалансировать риски и выгоды
  5. Установка стоп-лосса требует внимания

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

Будущие улучшения

Дальнейшие оптимизации:

  1. Динамическая суточная сумма инвестиций

    • Ежедневные инвестиции базируются на показателях
    • Увеличивается при рост, уменьшается при снижении
  2. Дополнительные сигналы въезда

    • Дополнение EMA другими показателями, такими как KD, BOLL
    • Улучшить выявление экстремальных движений
  3. Экспоненциальные скользящие средние

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

    • Увеличение лимита на основе стратегической рентабельности
    • Допускает более высокую ставку по справедливым оценкам
  5. Отслеживание остановки потери

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

Заключение

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


/*backtest
start: 2024-01-08 00:00:00
end: 2024-01-15 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Daily DCA Strategy with Touching EMAs", overlay=true, pyramiding=10000)

// Customizable Parameters
daily_investment = input(50000, title="Daily Investment")
start_year = input(2022, title="Start Year")
start_month = input(1, title="Start Month")
start_day = input(1, title="Start Day")
end_year = input(2023, title="End Year")
end_month = input(12, title="End Month")
end_day = input(1, title="End Day")
trade_count_limit = input(10000, title="Pyramiding Limit")
enable_sell = input(true, title="Enable Sell")

start_date = timestamp(start_year, start_month, start_day)
var int trade_count = 0

// Calculate the number of shares to buy based on the current closing price
shares_to_buy = daily_investment / close

// Check if a new day has started and after the start date
isNewDay = dayofmonth != dayofmonth[1] and time >= start_date

// Buy conditions based on EMA crossovers
ema5_cross_above = crossover(close, ema(close, 5))
ema10_cross_above = crossover(close, ema(close, 10))
ema20_cross_above = crossover(close, ema(close, 20))
ema50_cross_above = crossover(close, ema(close, 50))
ema100_cross_above = crossover(close, ema(close, 100))
ema200_cross_above = crossover(close, ema(close, 200))

if isNewDay and (ema5_cross_above or ema10_cross_above or ema20_cross_above or ema50_cross_above or ema100_cross_above or ema200_cross_above) and trade_count < trade_count_limit
    strategy.entry("Buy", strategy.long, qty=shares_to_buy)
    trade_count := trade_count + 1

// Dynamic sell conditions (optional)
sell_condition =  true

if enable_sell and sell_condition
    strategy.close_all()

// EMA Ribbon for visualization
plot(ema(close, 5), color=color.red, title="EMA 5")
plot(ema(close, 10), color=color.orange, title="EMA 10")
plot(ema(close, 20), color=color.yellow, title="EMA 20")
plot(ema(close, 50), color=color.green, title="EMA 50")
plot(ema(close, 100), color=color.blue, title="EMA 100")
plot(ema(close, 200), color=color.purple, title="EMA 200")


Больше