Эта стратегия представляет собой следующую торговую систему, которая сочетает в себе средний направленный индекс (ADX) с индикатором параболической остановки и обратного движения (SAR). Система измеряет силу тренда с использованием ADX и подтверждает направление тренда с использованием SAR для захвата торговых возможностей на сильно развивающихся рынках.
Основная логика основана на следующих ключевых компонентах:
Триггеры торговых сигналов следующие:
Предложения по контролю риска:
Введение показателей волатильности для корректировки параметров
Оптимизировать механизм выхода
Добавить фильтры рыночной среды
Улучшение управления позициями
Эта стратегия создает надежную систему следования трендам путем сочетания индикаторов ADX и SAR. Ее основные преимущества заключаются в механизме двойного подтверждения и динамических настройках стоп-лосса, хотя производительность может быть недостаточно оптимальной на колеблющихся рынках. Благодаря соответствующей оптимизации параметров и контролю рисков стратегия может достичь хорошей производительности в явно развивающейся рыночной среде. Трейдерам рекомендуется провести тщательное бэкстестирование перед реализацией и скорректировать параметры в соответствии с конкретными характеристиками рынка.
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-10 08:00:00 period: 1d basePeriod: 1d 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/ // © traderhub //@version=5 strategy("Trend Following ADX + Parabolic SAR", overlay=true) // Strategy parameters adxLength = input(14, title="ADX Period") adxThreshold = input(25, title="ADX Threshold") adxSmoothing = input(14, title="ADX Smoothing") sarStart = input(0.02, title="Parabolic SAR Start") // Starting acceleration factor sarIncrement = input(0.02, title="Parabolic SAR Increment") // Increment step sarMax = input(0.2, title="Parabolic SAR Max") // Maximum acceleration factor // Calculate ADX, DI+, and DI- [diPlus, diMinus, adx] = ta.dmi(adxLength, adxSmoothing) // Parabolic SAR calculation sar = ta.sar(sarStart, sarIncrement, sarMax) // Conditions for a long position longCondition = adx > adxThreshold and diPlus > diMinus and close > sar // Conditions for a short position shortCondition = adx > adxThreshold and diMinus > diPlus and close < sar // Enter a long position if (longCondition) strategy.entry("Long", strategy.long) // Enter a short position if (shortCondition) strategy.entry("Short", strategy.short) // Close position on reverse signal if (strategy.position_size > 0 and shortCondition) strategy.close("Long") if (strategy.position_size < 0 and longCondition) strategy.close("Short") // Plot indicators on the chart plot(sar, color=color.blue, style=plot.style_circles, linewidth=2, title="Parabolic SAR") plot(adx, color=color.red, title="ADX") hline(adxThreshold, "ADX Threshold", color=color.green)