Это оригинальная система баланса точек тренда, созданная Уэллесом Уайлдером в 1978 году, с правилами, найденными в его книге "Новые концепции в технических торговых системах".
Ключевыми компонентами и правилами являются:
Индикатор импульса: рассчитывает изменение цены за N периодов для определения тенденции.
Долгое состояние: рост импульса за текущий и два предыдущих периода.
Короткое состояние: падение импульса за текущий и два предыдущих периода.
Стоп-лосс: средняя цена предыдущего дня ± диапазон предыдущего дня.
Приобретение прибыли: 2 * средняя цена предыдущего дня - предыдущий день низкий (длинный) или высокий (короткий).
Выходы с остановкой или целью после входа.
Стратегия напрямую использует импульс для определения тренда и структурированный подход "стоп/цель" для контроля риска и формирования надежной системы следования тренду.
По сравнению с другими стратегиями, следующими за тенденцией, основными преимуществами являются:
Простой расчет импульса, легко внедряемый.
Мультипериодические фильтры.
Структурированная остановка / цель надежна.
Ограничения по потерям на одну сделку.
Снижение контролируемое, получение прибыли чистое.
Легко управлять гибко.
Параметры регулируемые для различных рынков.
Интуитивная и простая логика.
В целом хорошая стабильность и контроль рисков.
Однако риски заключаются:
Задержка импульса может пропустить ключевые повороты.
Производительность зависит от настройки параметров.
Без фильтра на громкость, риск попасть в ловушку.
Настройки остановки и цели жесткие, могут не работать на практике.
Ограниченный период обратных испытаний, необходимо проверить долгосрочную надежность.
Фиксированный размер не имеет динамической настройки.
Ограниченное пространство для оптимизации, неопределенный альфа.
Нужно следить за соотношением вознаграждения/риска и корректировкой кривой.
В свете анализа улучшения могут включать:
Проверяю разные расчеты импульса.
Добавляю подтверждение объема.
Оптимизирую параметры остановки и цели.
Внедрение машинного обучения для динамических сигналов.
Оценка надежности на основе различных продуктов и сроков.
Построение динамических моделей размеров позиций.
Установление максимально допустимого лимита использования.
Оптимизация стратегий управления рисками.
Постоянное обратное тестирование для предотвращения перенастройки.
В общем, это относительно простая и прямая система, следующая за тенденцией. Но непрерывная оптимизация и тестирование надежности являются ключевыми для любой стратегии, чтобы оставаться адаптивной. Благодаря систематическим усилиям можно повысить эффективность и стабильность стратегии.
/*backtest start: 2023-09-15 00:00:00 end: 2023-09-22 00:00:00 period: 5m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © 2020 X-Trader.net //@version=3 strategy("Trend Balance Point System by Welles Wilder", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, initial_capital = 10000) MomPer = input(2, "Momentum Period") isLong = strategy.position_size > 0 isShort = strategy.position_size < 0 longTrigger = mom(close, MomPer)[1] > mom(close, MomPer)[2] and mom(close, MomPer)[1] > mom(close, MomPer)[3] shortTrigger = mom(close, MomPer)[1] < mom(close, MomPer)[2] and mom(close, MomPer)[1] < mom(close, MomPer)[3] longEntry = (not isLong) and longTrigger shortEntry = (not isShort) and shortTrigger longStop = valuewhen(longEntry, ((high[1]+low[1]+close[1])/3 - (high[1]-low[1])), 0) longTP = valuewhen(longEntry, (2*(high[1]+low[1]+close[1])/3 - low[1]), 0) shortStop = valuewhen(shortEntry, ((high[1]+low[1]+close[1])/3 + (high[1]-low[1])), 0) shortTP = valuewhen(shortEntry, (2*(high[1]+low[1]+close[1])/3 - high[1]), 0) strategy.entry(id = "Long", long = true, when = longEntry) strategy.exit("Exit Long", "Long", profit = longTP, loss = longStop, when = isLong) strategy.entry(id = "Short", long = false, when = shortEntry) strategy.exit("Exit Short", "Short", profit = shortTP, loss = shortStop, when = isShort)