Эта статья представляет количественную торговую стратегию, основанную на Индексе импульса стохастики (SMI). Стратегия использует перекрестные сигналы между индикатором SMI и его экспоненциальной скользящей средней (EMA) для выявления потенциальных возможностей покупки и продажи. Когда линия сигнала SMI пересекает ее EMA, она запускает сигнал покупки; когда линия сигнала SMI пересекает ее EMA, она запускает сигнал продажи.
Основой этой стратегии является индекс импульса стохастики (SMI). SMI - это импульсный осциллятор, который измеряет цену закрытия относительно высокого и низкого диапазона в течение определенного периода. В частности, стратегия сначала рассчитывает самый высокий и самый низкий минимум за указанный период, затем вычисляет разницу между ценой закрытия и средней точкой высокого и низкого диапазона, а также разницу между самым высоким и самым низким минимумом. Далее стратегия вычисляет значение SMI, которое является соотношением средней относительной разницы к средней абсолютной разнице, умноженной на 100. Наконец, стратегия вычисляет экспоненциальную скользящую среднюю SMI как линию сигнала.
Когда линия сигнала SMI пересекает его EMA, она указывает на увеличение импульса вверх и запускает сигнал покупки; когда линия сигнала SMI пересекает его ниже EMA, она указывает на увеличение импульса вниз и запускает сигнал продажи. Кроме того, стратегия отмечает уровни перекупленности и перепродажи, чтобы определить экстремальные состояния SMI.
Стратегия основана на мощном индикаторе импульса SMI, который может эффективно отслеживать изменения рыночных тенденций и импульса.
Логика стратегии ясна и легко понятна и реализована.
Используя экспоненциальную скользящую среднюю в качестве линии сигнала, стратегия может сгладить ценовой шум и улучшить надежность сигнала.
Отметка уровней перекупленности и перепродажи обеспечивает дополнительные инструменты управления рисками для стратегии.
Стратегия основана на одном индикаторе, SMI, и может подвергаться риску сбоя индикатора.
Стратегия может генерировать частые торговые сигналы на нестабильных рынках, что приводит к высоким затратам на транзакции.
Стратегия не имеет ясного механизма стоп-лосса и может столкнуться с проблемой чрезмерного риска единой торговли.
Оптимизация параметров: производительность стратегии во многом зависит от параметров, используемых в расчете SMI, таких как длина %K, длина %D и т. д. Оптимизируя эти параметры, производительность стратегии может быть улучшена.
Фильтрация сигналов: для уменьшения частоты торговли и улучшения качества сигналов могут быть рассмотрены дополнительные механизмы фильтрации, такие как подтверждение тренда и подтверждение объема.
Управление рисками: включение в стратегию четких правил стоп-лосса и управления позициями позволяет лучше контролировать риск и повышать надежность стратегии.
Многофакторная комбинация: объединение сигналов SMI с другими техническими показателями или фундаментальными факторами для формирования более всеобъемлющего и надежного механизма принятия решений о торговле.
Эта статья представляет количественную торговую стратегию, основанную на индексе импульса стохастики (SMI). Стратегия использует перекрестные сигналы между индикатором SMI и его экспоненциальной скользящей средней для выявления потенциальных возможностей покупки и продажи. Преимущества стратегии заключаются в ее основе на мощном индикаторе импульса, четкой логике, простоте реализации и использовании скользящих средних и уровней перекупленности / перепроданности для улучшения надежности сигнала и управления рисками. Однако стратегия также сталкивается с рисками, такими как отказ одного индикатора, высокочастотная торговля и недостаточный контроль риска. Для дальнейшего повышения эффективности стратегии, оптимизация может быть сделана с точки зрения оптимизации параметров, фильтрации сигнала, управления рисками и многофакторной комбинации. В целом, стратегия обеспечивает простой, но эффективный подход для количественной торговли, но требует соответствующих корректировок и
/*backtest start: 2023-03-05 00:00:00 end: 2024-03-10 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Stochastics Momentum Index Strategy", shorttitle="SMI_BackTest", overlay=false) // Input parameters a = input.int(10, "Percent K Length") b = input.int(3, "Percent D Length") ob = input.int(40, "Overbought") os = input.int(-40, "Oversold") // Range Calculation ll = ta.lowest(low, a) hh = ta.highest(high, a) diff = hh - ll rdiff = close - (hh+ll)/2 avgrel = ta.ema(ta.ema(rdiff,b),b) avgdiff = ta.ema(ta.ema(diff,b),b) // SMI calculations SMI = avgdiff != 0 ? (avgrel/(avgdiff/2)*100) : 0 SMIsignal = ta.ema(SMI,b) emasignal = ta.ema(SMI, 10) // Color Definition for Stochastic Line col = SMI >= ob ? color.green : SMI <= os ? color.red : color.white plot(SMIsignal, title="Stochastic", color=color.white) plot(emasignal, title="EMA", color=color.yellow) level_40 = ob level_40smi = SMIsignal > level_40 ? SMIsignal : level_40 level_m40 = os level_m40smi = SMIsignal < level_m40 ? SMIsignal : level_m40 plot(level_40, "Level ob", color=color.red) plot(level_40smi, "Level ob SMI", color=color.red, style=plot.style_line) plot(level_m40, "Level os", color=color.green) plot(level_m40smi, "Level os SMI", color=color.green, style=plot.style_line) //fill(level_40, level_40smi, color=color.red, transp=ob, title="OverSold") //fill(level_m40, level_m40smi, color=color.green, transp=ob, title="OverBought") // Strategy Tester longCondition = ta.crossover(SMIsignal, emasignal) if (longCondition) strategy.entry("Buy", strategy.long) shortCondition = ta.crossunder(SMIsignal, emasignal) if (shortCondition) strategy.entry("Sell", strategy.short)