Стратегия случайного блуждания
Обзор
Стратегия случайного блуждания — это автоматическая торговая стратегия, основанная на генерации случайных чисел. В стратегии используется линейный конгруэнтный генератор для создания случайных чисел на основе заданного зерна. Если число больше порога, открывается длинная позиция, если меньше — короткая, что обеспечивает случайное открытие длинных и коротких позиций.
Принцип стратегии
Стратегия в основном реализует случайную торговлю через следующие части:
- Установка параметров генерации случайных чисел a, c и модуля m, а также начального зерна seed.
- Определение функции генерации случайного числа GetRandom с использованием линейного конгруэнтного алгоритма для генерации случайного числа от 0 до m.
- На каждом баре, если текущая позиция отсутствует, сравнивается сгенерированное случайное число: если оно больше m/2, открывается длинная позиция, иначе — короткая.
- Установка условий стоп-лосса и тейк-профита в процентах.
- Задание периода бэктеста с помощью временного интервала.
Таким образом, стратегия полностью реализует случайные операции длинной и короткой позиций. Когда случайное число больше m/2, открывается длинная позиция, иначе — короткая, после чего устанавливаются стоп-лосс и тейк-профит для выхода из позиции. Период бэктеста настраивается.
Анализ преимуществ
- Логика стратегии проста и понятна, легко реализовать.
- Случайная торговля позволяет эффективно избежать влияния человеческих эмоций, снижая риск субъективных ошибок.
- Возможность настройки параметров алгоритма генерации случайных чисел для изменения случайности.
- Гибкая настройка условий стоп-лосса и тейк-профита для контроля убытков/прибыли по каждой сделке.
- Поддержка оптимизации параметров бэктеста для удобного тестирования влияния различных параметров на общую доходность.
Анализ рисков
- Случайная торговля может долгое время не иметь чёткого направления, доходность неопределённа.
- Невозможность корректировки позиций в зависимости от рыночной ситуации, возможен пропуск трендовых возможностей.
- Ограниченная прибыль на одну сделку, высокий риск просадки.
- Необходимо разумно устанавливать соотношение стоп-лосса и тейк-профита, чтобы избежать чрезмерных убытков.
- Случайность может привести к частому открытию и закрытию позиций, увеличивая торговые издержки.
- Требуется достаточная верификация на бэктесте для подтверждения обоснованности настроек параметров, нельзя использовать вслепую.
Для снижения рисков можно добавить такие функции, как определение тренда, чтобы уменьшить количество случайных открытий позиций, оптимизировать механизм стоп-лосса и строго контролировать убытки/прибыль по каждой сделке.
Направления оптимизации
- Добавление определения тренда для предотвращения открытия позиций против тренда.
- Внедрение управления позициями, изменение размера позиции в зависимости от изменения капитала.
- Оптимизация алгоритма генерации случайных чисел для повышения случайности.
- Динамическая корректировка уровней стоп-лосса и тейк-профита.
- Добавление ограничения на частоту открытия позиций.
- Многопараметрический бэктест для поиска оптимальных параметров.
Заключение
Стратегия случайного блуждания реализует механическую торговлю за счёт случайного управления длинными и короткими позициями с помощью случайных чисел. Эта стратегия обладает высокой степенью случайности, не подвержена влиянию личных эмоций и позволяет избежать риска субъективных ошибок. Однако случайное открытие позиций может привести к пропуску трендовых возможностей, прибыль на одну сделку ограничена, требуется оптимизация механизма контроля рисков. В целом, данная стратегия подходит для проверки торговых идей и понимания влияния параметров на доходность, но её практическое применение требует осторожной оценки.
/*backtest
start: 2022-10-02 00:00:00
end: 2023-10-08 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
//@author=Tr0sT
strategy(title = "Random strategy", shorttitle = "Random", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100)
- 1
