Двунаправленная стратегия стоп-профита и стоп-лосса, основанная на пересечении стохастических индикаторов


Дата создания: 2024-03-08 15:12:42 Последнее изменение: 2024-03-08 15:12:42
Копировать: 1 Количество просмотров: 568
1
Подписаться
1617
Подписчики

Двунаправленная стратегия стоп-профита и стоп-лосса, основанная на пересечении стохастических индикаторов

Обзор

Стратегия использует перекрестный сигнал случайного индикатора Stochastic Oscillator для инициирования покупки и продажи. Когда линия%K в случайном индикаторе пересекает линию%D снизу вверх, а значение%K ниже 20, открывается позиция; когда линия%K пересекает линию%D снизу вверх, а значение%K выше 80, открывается позиция. В то же время, стратегия устанавливает дистанцию между остановкой (Take Profit) и остановкой (Stop Loss) для управления позициями, чтобы избежать увеличения убытков.

Стратегический принцип

  1. Вычислить %K и %D значений из 14 циклов случайных показателей и сгладить их с помощью простой скользящей средней.
  2. Определить, пересекаются ли линии %K и %D:
    • Когда линия %K пересекает линию %D снизу вверх, и значение %K ниже 20, запускается сигнал “купить”, открывается позиция “больше”.
    • Когда %K-линия пересекает %D-линию сверху вниз, и %K-значение выше 80, то срабатывает сигнал продажи, открывается позиция и делается пустота.
  3. Настройка стоп-стоп и стоп-стоп-дистанции (в единицах Ticks) для управления открытыми позициями:
    • Для многоочередных позиций, установить стоп-цену как TP Ticks выше цены открытия позиции, и стоп-цену как SL Ticks ниже цены открытия позиции.
    • Для пустых позиций, установить стоп-цену как TP Ticks ниже цены открытия позиции, и стоп-цену как SL Ticks выше цены открытия позиции.
    • Когда цена достигнет стоп-стопа или стоп-лосса, ликвидируйте соответствующую позицию.
  4. Установка логических условий равновесия:
    • Если %K пересекает %D сверху вниз, а %K меньше или равен 80, выровняйте все многоголовые позиции.
    • Если %K пересекает %D снизу вверх, и %K больше или равно 20, выровняем все пустые позиции.

Анализ преимуществ

  1. Эта стратегия использует случайные индикаторы в качестве основных торговых сигналов, которые широко используются в количественных сделках, чтобы лучше улавливать состояние перекупа и перепродажи на рынке.
  2. Стратегия одновременно устанавливает стоп-стоп и логические условия плавных позиций, что позволяет в определенной степени контролировать риск и избегать расширения убытков.
  3. Логика стратегии ясна, легко понятна и реализуема, подходит для изучения и использования новичками.

Анализ рисков

  1. Случайные индикаторы могут вызывать большие погрешности на рынке, что приводит к чрезмерной частоте торговли и увеличивает стоимость торговли.
  2. Стратегия не проводит динамической корректировки позиций, и фиксированные стоп-стоп-лосс могут не эффективно контролировать риск в условиях резкой волатильности рынка.
  3. Параметры в стратегии (например, периодичность случайных индикаторов, стоп-стоп-стап и т. д.) являются фиксированными и не оптимизированы для различных рыночных условий, что может повлиять на адаптивность стратегии.

Направление оптимизации

  1. Можно рассмотреть вопрос о введении других технических индикаторов или индикаторов рыночных настроений, которые могут использоваться в сочетании с случайными индикаторами, повышая надежность торговых сигналов и уменьшая ошибочные сигналы.
  2. Оптимизация управления позициями, адаптация стоп-стоп-лосс в зависимости от динамики рыночных колебаний или использование более продвинутых методов управления капиталом, таких как формула Келли.
  3. Оптимизация параметров стратегии с использованием генетических алгоритмов, сетевого поиска и других методов оптимизации, чтобы найти оптимальное сочетание параметров для различных рыночных условий.
  4. С учетом фильтрационных условий, таких как период торгов, волатильность торговых сортов и т. д., можно сократить торговлю в неблагоприятных рыночных условиях.

Подвести итог

Двусторонняя стоп-стоп стратегия, основанная на перекрестке случайных индикаторов, является простой и понятной количественной торговой стратегией, которая запускает операции по покупке и продаже с помощью перекрестных сигналов случайных индикаторов и устанавливает стоп-стоп и логические условия для управления риском. Преимущество этой стратегии заключается в логической ясности, подходящей для изучения и использования новичками; но в то же время существуют некоторые риски, такие как случайные индикаторы, которые могут выпускать больше ошибочных сигналов на колеблющихся рынках, и фиксированные методы управления позициями, которые не могут быть адаптированы к различным рыночным условиям.

Исходный код стратегии
/*backtest
start: 2024-02-29 00:00:00
end: 2024-03-07 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("How to force strategies fire exit alerts not reversals", initial_capital = 1000, slippage=1, commission_type = strategy.commission.cash_per_contract, commission_value = 0.0001, overlay=true) 
// disclaimer: this content is purely educational, especially please don't pay attention to backtest results on any timeframe/ticker

// Entries logic: based on Stochastic crossover
k = ta.sma(ta.stoch(close, high, low, 14), 3)
d = ta.sma(k, 3)
crossover = ta.crossover(k,d)
crossunder = ta.crossunder(k,d)

if (crossover and k < 20)
	strategy.entry("Buy", strategy.long, alert_message="buy")
if (crossunder and k > 80)
	strategy.entry("Sell", strategy.short, alert_message="sell")

// StopLoss / TakeProfit exits:
SL = input.int(600, title="StopLoss Distance from entry price (in Ticks)")
TP = input.int(1200, title="TakeProfit Distance from entry price (in Ticks)")
strategy.exit("xl", from_entry="Buy", loss=SL, profit=TP, alert_message="closebuy")
strategy.exit("xs", from_entry="Sell", loss=SL, profit=TP, alert_message="closesell")

// logical conditions exits:
if (crossunder and k <= 80)
	strategy.close("Buy", alert_message="closebuy")
if (crossover and k >= 20)
	strategy.close("Sell", alert_message="closesell")