Краткосрочная стратегия торговли на основе RSI и SMA

Автор:Чао Чжан, Дата: 2024-02-01 10:35:30
Тэги:

img

Обзор

Эта стратегия называется Short-Term RSI и SMA Percentage Change. Она использует общие технические индикаторы, такие как RSI и скользящая средняя, для определения входа и выхода из сделок. RSI - это импульсный осциллятор, который имеет значение от 0 до 100, где значение выше 70 считается перекупленным и ниже 30 перепроданным. SMA - это простая скользящая средняя, которая может отражать краткосрочные и долгосрочные ценовые тенденции. Эта стратегия создает сигналы входа и выхода на основе этих двух индикаторов, и обратный тест показывает, что она может достичь хорошей производительности.

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

Когда RSI выше 50, это считается бычьим сигналом. Это указывает на то, что рынок находится в равновесии к бычьей зоне. Когда 9-дневная SMA выше 100-дневной SMA, это означает, что краткосрочный тренд лучше, чем долгосрочный тренд, и мы можем ввести длинную позицию. Кроме того, если краткосрочная 9-дневная SMA имеет относительное изменение более 6% к цене, это указывает на ускорение краткосрочного тренда, который также является сигналом входа.

Если вы уже находитесь на длинной позиции, эта стратегия будет использовать параболическую SAR для блокировки прибыли.

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

Эта стратегия сочетает в себе индикаторы тренда и осцилляторы, так что она может выйти на рынок, когда появляется ясная тенденция, избегая периодов, когда рынок меняется, значительно снижая торговый риск.

Бактэст показывает, что эта стратегия может приносить прибыль в довольно очевидных краткосрочных тенденциях с хорошими результатами.

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

Эта стратегия опирается на такие индикаторы, как RSI и SMA, которые имеют определенную отсталость.

Кроме того, высокая частота торговли влечет за собой более высокие затраты на торговлю.

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

Эта стратегия может рассматривать возможность включения большего количества индикаторов для определения сигналов входа и выхода, таких как добавление индикаторов объема, чтобы избежать ложных прорывов.

Кроме того, оптимизация может быть сделана на торговых продуктах, параметрах цикла, чтобы найти лучшую комбинацию параметров.

Заключение

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


/*backtest
start: 2024-01-24 00:00:00
end: 2024-01-31 00:00:00
period: 1m
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/
// © Coinrule

//@version=5
strategy("Short Term RSI and SMA Percentage Change",
         overlay=true,
         initial_capital=1000,
         process_orders_on_close=true,
         default_qty_type=strategy.percent_of_equity,
         default_qty_value=100,
         commission_type=strategy.commission.percent,
         commission_value=0.1)

showDate = input(defval=true, title='Show Date Range')
timePeriod = time >= timestamp(syminfo.timezone, 2022, 5, 1, 0, 0)
notInTrade = strategy.position_size <= 0

//==================================Buy Conditions============================================

//RSI
length = input(14)
rsi = ta.rsi(close, length)
buyCondition1 = rsi > 50

//MA
SMA9 = ta.sma(close, 9)
SMA100 = ta.sma(close, 100)
plot(SMA9, color = color.green)
plot(SMA100, color = color.blue)
buyCondition2 = (SMA9 > SMA100)

//Calculating MA Percentage Change
buyMA = (close/SMA9)
buyCondition3 = buyMA >= 0.06

if (buyCondition1 and buyCondition2 and buyCondition3 and timePeriod) //and buyCondition
    strategy.entry("Long", strategy.long)

//==================================Sell Conditions============================================

// Configure trail stop level with input options
longTrailPerc = input.float(title='Trail Long Loss (%)', minval=0.0, step=0.1, defval=5) * 0.01
shortTrailPerc = input.float(title='Trail Short Loss (%)', minval=0.0, step=0.1, defval=5) * 0.01

// Determine trail stop loss prices
longStopPrice = 0.0
shortStopPrice = 0.0

longStopPrice := if strategy.position_size > 0
    stopValue = close * (1 - longTrailPerc)
    math.max(stopValue, longStopPrice[1])
else
    0

shortStopPrice := if strategy.position_size < 0
    stopValue = close * (1 + shortTrailPerc)
    math.min(stopValue, shortStopPrice[1])
else
    999999
    
strategy.exit('Exit', stop = longStopPrice, limit = shortStopPrice)


Больше