Стратегия двойной скользящей средней - это стратегия, основанная на скользящих средних. Она определяет направление тренда путем вычисления скользящих средних различных периодов и генерирует соответствующие торговые сигналы. Она длится, когда краткосрочная скользящая средняя пересекает долгосрочную, и становится короткой, когда краткосрочная скользящая средняя пересекает ниже долгосрочной. Стратегия следует тенденции к прибыли.
Двойная скользящая средняя следующая стратегия оценивает направление тренда, рассчитывая 14-периодические и 28-периодические простые скользящие средние (SMA) цены закрытия. В частности, она рассчитывает 14-периодическую SMA и 28-периодическую SMA цены закрытия в конце каждого периода. Когда 14-периодическая SMA пересекает 28-периодическую SMA, она отправляет длинный сигнал и открывает длинную позицию. Когда 14-периодическая SMA пересекает ниже 28-периодической SMA, она отправляет короткий сигнал и открывает короткую позицию.
После ввода позиций он управляет рисками, устанавливая уровни получения прибыли и остановки потери. Точки получения прибыли и остановки потери преобразуются в цены на основе входных параметров. Он также графизирует линию получения прибыли, линию остановки потери и линию средней цены входа на графике для визуального суждения о прибыли и риске.
Двойная стратегия скользящей средней имеет следующие преимущества:
Следующая стратегия двойной скользящей средней также сопряжена с некоторыми рисками:
Риски можно управлять из следующих аспектов:
Двойная скользящая средняя может быть оптимизирована следующими способами:
Добавить индикаторы волатильности для динамической точки остановки потери. Например, комбинировать с ATR для расширения остановки потери при повышении волатильности, чтобы избежать преждевременного выхода.
Оптимизировать параметры цикла скользящей средней, тестируя больше комбинаций и выбирая подходящие периоды с подходящей частотой торговых сигналов.
Добавьте индикатор фильтра тренда, такой как MACD, DMI, чтобы избежать ложных сигналов вблизи поворотных точек тренда, уменьшая ненужные сделки.
Увеличение моделей машинного обучения для прогнозирования ценового тренда и замены традиционных правил.
Диверсификация торговых сортов с использованием низкой корреляции для сокращения общего использования.
В заключение, двойная скользящая средняя следующая стратегия - это простая и практичная система, следующая за трендом. Она движется вдоль тренда, тем самым имея более низкие риски снижения, и ее легко реализовать. Мы можем оптимизировать ее путем корректировки параметров цикла, установки стоп-лосса и получения прибыли, добавления индикаторов оценки тренда, чтобы адаптироваться к большему количеству рыночных условий и получать более стабильную прибыль.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © coinilandBot // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © adolgov // @description // //@version=4 strategy("coiniland copy trading platform", overlay=true) // random entry condition longCondition = crossover(sma(close, 14), sma(close, 28)) if (longCondition) strategy.entry("My Long Entry Id", strategy.long) shortCondition = crossunder(sma(close, 14), sma(close, 28)) if (shortCondition) strategy.entry("My Short Entry Id", strategy.short) moneyToSLPoints(money) => strategy.position_size !=0 ? (money / syminfo.pointvalue / abs(strategy.position_size)) / syminfo.mintick : na p = moneyToSLPoints(input(200, title = "Take Profit $$")) l = moneyToSLPoints(input(100, title = "Stop Loss $$")) strategy.exit("x", profit = p, loss = l) // debug plots for visualize SL & TP levels pointsToPrice(pp) => na(pp) ? na : strategy.position_avg_price + pp * sign(strategy.position_size) * syminfo.mintick pp = plot(pointsToPrice(p), style = plot.style_linebr ) lp = plot(pointsToPrice(-l), style = plot.style_linebr ) avg = plot( strategy.position_avg_price, style = plot.style_linebr ) fill(pp, avg, color = color.green) fill(avg, lp, color = color.red)