Биткоин и золото 5-минутная стратегия скальпинга 2.0

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

img

Обзор

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

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

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

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

После выхода на рынок стратегия использует индикатор ATR для расчета цены стоп-лосса. Стоп-лосс устанавливается на нижней границе входа минус n раз ATR, который используется для контроля риска каждой сделки.

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

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

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

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

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

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

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

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

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

  2. Увеличить модели машинного обучения для оценки направления тренда и улучшения точности входа.

  3. Использовать генетические алгоритмы, случайные леса и другие методы для автоматической оптимизации параметров, чтобы лучше соответствовать текущим рыночным условиям.

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

  5. Проверьте различные торговые инструменты, такие как фондовые индексы, форекс, криптовалюты и т. Д., И выберите тот, который имеет лучшую торговую эффективность в качестве основного торгового инструмента.

Заключение

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


/*backtest
start: 2023-12-19 00:00:00
end: 2024-01-10 00:00:00
period: 1h
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/
// © singhak8757

//@version=5
strategy("Bitcoin and Gold 5min Scalping Strategy2.0", overlay=true)


// Input parameters
fastLength = input(5, title="Fast EMA Length")
slowLength = input(13, title="Slow EMA Length")
bollingerLength = input(20, title="Bollinger Band Length")
bollingerMultiplier = input(2, title="Bollinger Band Multiplier")
stopLossMultiplier = input(1, title="Stop Loss Multiplier")

// Calculate EMAs
fastEMA = ta.ema(close, fastLength)
slowEMA = ta.ema(close, slowLength)

// Calculate Bollinger Bands
basis = ta.sma(close, bollingerLength)
upperBand = basis + bollingerMultiplier * ta.stdev(close, bollingerLength)
lowerBand = basis - bollingerMultiplier * ta.stdev(close, bollingerLength)

// Buy condition
buyCondition = ta.crossover(fastEMA, slowEMA) and (close <= upperBand or close <= basis)

// Sell condition
sellCondition = ta.crossunder(fastEMA, slowEMA) and (close >= lowerBand or close >= basis)

// Calculate stop loss level
stopLossLevel = ta.lowest(low, 2)[1] - stopLossMultiplier * ta.atr(14)

// Plot EMAs
plot(fastEMA, color=color.rgb(0, 156, 21), title="Fast EMA")
plot(slowEMA, color=color.rgb(255, 0, 0), title="Slow EMA")

// Plot Bollinger Bands
plot(upperBand, color=color.new(#000000, 0), title="Upper Bollinger Band")
plot(lowerBand, color=color.new(#1b007e, 0), title="Lower Bollinger Band")

// Plot Buy and Sell signals
plotshape(series=buyCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar)
plotshape(series=sellCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar)

// Plot Stop Loss level
plot(stopLossLevel, color=color.orange, title="Stop Loss Level")

// Strategy logic
strategy.entry("Buy", strategy.long, when = buyCondition)
strategy.exit("Stop Loss/Close", from_entry="Buy", loss=stopLossLevel)
strategy.close("Sell", when = sellCondition)


Больше