MT-координационная стратегия торговли

Автор:Чао Чжан, Дата: 2024-01-25 15:06:04
Тэги:

img

Обзор

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

Длинный сигнал: запускается, когда ближайший превышает все три SMA, RSI превышает 50 и текущий максимум больше предыдущего фрактала вверх.

Короткий сигнал: активируется, когда ближайший находится ниже всех трех SMA, RSI ниже 50, а текущий низкий меньше предыдущего фрактала вниз.

Размер позиции динамически рассчитывается на основе выбранного процента собственного капитала и уровня кредитного плеча.

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

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

Особые преимущества:

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

  2. Значения выше 50 сигнализируют о росте, а ниже 50 - о падении.

  3. Фракталы Уильямса подтверждают прорыв, входя только при проникновении крайностей.

  4. Динамическое распределение позиций на основе процента баланса счета строго управляет негативными тенденциями.

  5. Настраиваемые параметры подходят для различных стилей торговли.

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

К основным рискам этой стратегии относятся:

  1. Неспособность полностью избежать ударов, когда SMA расходятся.

  2. Неспособность своевременно выйти из рынка до изменения тренда из-за отставания показателей.

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

Решения:

  1. Оптимизируйте комбинации SMA, чтобы найти лучшие параметры.

  2. Добавьте фильтры свечей, чтобы избежать ложных прорывов.

  3. Сократить процентные ставки и уровень кредитного плеча.

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

Стратегия может быть дополнительно усилена путем:

  1. Испытание различных комбинаций SMA и RSI для получения оптимальных параметров.

  2. Включение дополнительных фильтров, таких как ширина полос Боллинджера, сигналы трейдера и т.д.

  3. Добавление механизмов остановки потерь для сокращения потерь на заранее определенном уровне.

  4. Интеграция моделей глубокого обучения для обнаружения поддержки и сопротивления.

Заключение


/*backtest
start: 2024-01-17 00:00:00
end: 2024-01-24 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
// Written by I3ig_Trades. Follow And Let Me Know Any Strategies You'd Like To See!
strategy("Best Scalping Strategy Period (TMA)", shorttitle="Best Scalping Strategy Period (TMA)", overlay=false,
         initial_capital=100000, 
         default_qty_type=strategy.percent_of_equity, 
         default_qty_value=100)

// Leverage Input
leverage = input.float(1, title="Leverage", minval=1, step=0.1)

// Calculate position size based on the percentage of the portfolio and leverage
percentOfPortfolio = input.float(100, title="Percent of Portfolio")

// Define input options
rsiLength = input.int(14, title="RSI Length", minval=1)
williamsLength = input.int(2, title="Williams Fractals Length", minval=1)
sma21Length = input.int(21, title="SMA 21 Length", minval=1)
sma50Length = input.int(50, title="SMA 50 Length", minval=1)
sma200Length = input.int(200, title="SMA 200 Length", minval=1)

// Smoothed Moving Averages
sma21 = ta.sma(close, sma21Length)
sma50 = ta.sma(close, sma50Length)
sma200 = ta.sma(close, sma200Length)

// RSI
rsiValue = ta.rsi(close, rsiLength)

// Williams Fractals
fractalUp = ta.highest(close, williamsLength)
fractalDown = ta.lowest(close, williamsLength)

// Conditions for Buy Entry
buyCondition = close > sma21 and close > sma50 and close > sma200 and rsiValue > 50 and high > fractalUp[1]

// Conditions for Sell Entry
sellCondition = close < sma21 and close < sma50 and close < sma200 and rsiValue < 50 and low < fractalDown[1]

positionSizePercent = percentOfPortfolio / 100 * leverage
positionSize = strategy.equity * positionSizePercent / close

// Executing strategy with dynamic position size
if buyCondition
    strategy.entry("Buy", strategy.long, qty=positionSize)

if sellCondition
    strategy.entry("Sell", strategy.short, qty=positionSize)

// Plotting the Smoothed Moving Averages
plot(sma21, color=color.white)
plot(sma50, color=color.green)
plot(sma200, color=color.red)

// Plotting RSI and Fractals for visual confirmation
hline(50, "RSI 50", color=color.yellow)
plot(rsiValue, color=color.blue, title="RSI")

// Input text boxes for trading actions
var buy_entry_params = input("", title="Buy Entry Parameters")
var buy_exit_params = input("", title="Buy Exit Parameters")
var sell_entry_params = input("", title="Sell Entry Parameters")
var sell_exit_params = input("", title="Sell Exit Parameters")


Больше