Краткосрочная стратегия торговли на основе следующей тенденции

Автор:Чао Чжан, Дата: 2023-09-27 16:56:34
Тэги:

Обзор

Эта стратегия идентифицирует сильные тенденции и благоприятное время для краткосрочной торговли с контролем потерь. Она отслеживает прорывы цен простых скользящих средних как сигналы тренда и устанавливает стоп-лосс / прибыль на основе расхождений RSI для улавливания краткосрочных движений цен.

Логика стратегии

  1. Расчет многопериодных простых скользящих средних

    • Установление 9-дневных, 50-дневных и 100-дневных SMA

    • Короткая СМИ пересекает длинную СМИ, указывает направление тренда

  2. Оценка уровней перекупленности/перепроданности с использованием индекса RSI

    • Продолжительность RSI составляет 14 периодов

    • Показатель RSI выше 70 - это перекуп, ниже 30 - перепродажа.

  3. Вступление в сделки, когда цена превышает 9-дневную SMA

    • Пройти длинный курс, когда цена превышает 9-дневную SMA

    • Сокращение цены, когда цена опускается ниже 9-дневной СМА

  4. Установка стоп-лосса/прибыли на основе расхождений RSI

    • Дивергенция RSI для стоп-лосса

    • Принимать прибыль, когда RSI достигает заданных уровней

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

  • Отслеживает краткосрочные тенденции, подходящие для высокочастотного трейдинга

  • Комбо SMA фильтруют сигналы тренда, избегая плохих сделок

  • RSI помогает определить время, эффективно контролировать риски

  • Гибкие блокировки стоп-лосса/прибыли краткосрочная прибыль

  • Объединение показателей улучшает стабильность

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

  • Неточная оценка краткосрочного тренда приводит к преследованию

  • Ложные сигналы RSI увеличивают убытки

  • Неправильные настройки стоп-лосса/приобретения прибыли уменьшают прибыль или увеличивают убытки

  • Высокая частота торговли увеличивает затраты и сдвиг

  • Неэффективные параметры и аномальная стратегия влияния на рынки

  • Оптимизировать параметры, строгий стоп-лосс, управлять затратами

Руководство по оптимизации

  • Испытать различные комбинации SMA для улучшения оценки тренда

  • Рассмотрим дополнительные индикаторы, такие как STOCH, для проверки сигналов RSI

  • Используйте машинное обучение для определения действительных выходов

  • Настройка параметров для различных продуктов и сеансов

  • Оптимизировать логику стоп-лосса/профита для динамического отслеживания

  • Исследуйте механизмы автоматической настройки параметров

Заключение

Эта стратегия сочетает в себе SMA и RSI для консервативного краткосрочного торгового подхода. Прямая настройка параметров, проверка сигналов, контроль рисков делает ее более надежной и адаптивной. Есть возможности для улучшения путем изучения большего количества комбинаций SMA, добавления моделей машинного обучения и т. Д. Постоянная оптимизация приведет к дальнейшей зрелости.


/*backtest
start: 2023-08-27 00:00:00
end: 2023-09-26 00:00:00
period: 3h
basePeriod: 15m
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/
// © Coinrule

//@version=4
strategy(shorttitle='Maximized Scalping On Trend',title='Maximized Scalping On Trend (by Coinrule)', overlay=true, initial_capital = 1000, process_orders_on_close=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 30, commission_type=strategy.commission.percent, commission_value=0.1)

//Backtest dates
fromMonth = input(defval = 1,    title = "From Month",      type = input.integer, minval = 1, maxval = 12)
fromDay   = input(defval = 10,    title = "From Day",        type = input.integer, minval = 1, maxval = 31)
fromYear  = input(defval = 2019, title = "From Year",       type = input.integer, minval = 1970)
thruMonth = input(defval = 1,    title = "Thru Month",      type = input.integer, minval = 1, maxval = 12)
thruDay   = input(defval = 1,    title = "Thru Day",        type = input.integer, minval = 1, maxval = 31)
thruYear  = input(defval = 2112, title = "Thru Year",       type = input.integer, minval = 1970)

showDate  = input(defval = true, title = "Show Date Range", type = input.bool)

start     = timestamp(fromYear, fromMonth, fromDay, 00, 00)        // backtest start window
finish    = timestamp(thruYear, thruMonth, thruDay, 23, 59)        // backtest finish window
window()  => true      // create function "within window of time"

//MA inputs and calculations
movingaverage_fast = sma(close, input(9))
movingaverage_mid= sma(close, input(50))
movingaverage_slow = sma(close, input (100))


//Trend situation
Bullish= cross(close, movingaverage_fast)

Momentum = movingaverage_mid > movingaverage_slow

// RSI inputs and calculations
lengthRSI = 14
RSI = rsi(close, lengthRSI)

//Entry
strategy.entry(id="long", long = true, when = Bullish and Momentum and RSI > 50)

//Exit

TP = input(70)
SL =input(30)
longTakeProfit  = RSI > TP
longStopPrice = RSI < SL

strategy.close("long", when = longStopPrice or longTakeProfit and window())

plot(movingaverage_fast, color=color.black, linewidth=2 )
plot(movingaverage_mid, color=color.orange, linewidth=2)
plot(movingaverage_slow, color=color.purple, linewidth=2)


Больше