В процессе загрузки ресурсов... загрузка...

Стратегия покупки с прорывом цены и объема

Автор:Чао Чжан, Дата: 2024-05-17 14:54:13
Тэги:SMA

img

Обзор

Стратегия покупки с прорывом цены и объема - это торговая стратегия, предназначенная для выявления возможностей покупки путем обнаружения одновременных прорывов цены и объема по определенному диапазону свечей. Стратегия сначала принимает конкретное количество свечей в качестве экзаменационного окна как для цены, так и для объема. Эти значения используются в качестве эталонов для определения условий прорыва. Торговля начинается, когда как цена закрытия, так и объем торговли превышают максимальные значения, наблюдаемые в заранее определенном окне. Цена должна быть выше определенной скользящей средней, служащей индикатором тренда, обеспечивая, чтобы все сделки соответствовали преобладающей рыночной тенденции.

Принцип стратегии

  1. Укажите период ценового прорыва и период объемного прорыва в качестве периода обследования.
  2. Получить самую высокую и самую низкую цену в течение периода прорыва цены.
  3. Получить самый высокий объем торговли в течение периода прорыва объема.
  4. Если цена закрытия выше, чем самая высокая цена предыдущего периода, объем торгов выше, чем самый высокий объем торгов предыдущего периода, цена закрытия выше, чем простая скользящая средняя (SMA) длины линии тренда, и в настоящее время нет открытых сделок, а направление ордера не установлено на короткий, то начните идти длинным.
  5. Если цена закрытия ниже SMA длины линии тренда в течение 5 дней подряд, закрыть все длинные позиции.
  6. Если цена закрытия ниже самой низкой цены предыдущего периода, объем торгов выше самого высокого объема торгов предыдущего периода, цена закрытия ниже SMA длины линии тренда, и в настоящее время нет открытых сделок, и направление ордера не установлено на длинный, то начните идти короткий.
  7. Если цена закрытия выше SMA длины линии тренда в течение 5 дней подряд, закрыть все короткие позиции.

Преимущества стратегии

  1. Использование как ценовых, так и объемных прорывов в качестве сигналов покупки и продажи может лучше подтвердить изменения тренда.
  2. Проверка того, находится ли цена выше или ниже долгосрочной SMA перед открытием позиции, гарантирует, что сделки соответствуют основной тенденции рынка.
  3. Установка цены закрытия, пересекающей SMA в течение нескольких дней подряд, как сигнал закрытия может эффективно зафиксировать конец тренда.
  4. Подходит для высоковолатильных активов, таких как Биткойн и Эфириум, он может воспользоваться внезапными изменениями рыночных цен и объемов торговли для получения прибыли.

Стратегические риски

  1. На рынках с низкой волатильностью или отсутствием явных тенденций эта стратегия может привести к частым сделкам, тем самым увеличивая затраты на транзакции.
  2. Для рынков с более низкой волатильностью, таких как индекс S&P 500, эффект этой стратегии может быть не таким значительным, как на рынке криптовалют.
  3. Эта стратегия может генерировать меньше торговых сигналов в более длительные временные рамки, поскольку большинство сделок имеют более длительный период хранения.

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

  1. Продолжительность периода прорыва цены и периода прорыва объема корректируется в соответствии с различными рыночными характеристиками для адаптации к характеристикам волатильности различных активов.
  2. Постарайтесь использовать другие индикаторы подтверждения тренда, такие как экспоненциальные скользящие средние, MACD и т. д., чтобы улучшить точность суждения о тренде.
  3. В стратегию должны быть включены меры по управлению рисками, такие как установление уровней стоп-лосса и динамическая корректировка позиций с целью снижения риска одной сделки.
  4. Для сделок с более длительным периодом хранения следует рассмотреть возможность добавления стратегии последней остановки для лучшей защиты уже полученной прибыли.

Резюме

Стратегия Price and Volume Breakout Buy - это стратегия, следующая за трендом, подходящая для высоко волатильных рынков. Рассматривая как ценовые, так и объемные прорывы, и объединяя долгосрочную SMA в качестве трендового фильтра, эта стратегия может лучше улавливать торговые возможности на сильных рынках. Однако эта стратегия может плохо работать на рынках без явных тенденций или низкой волатильности и может подвергаться риску частой торговли. Поэтому в практических приложениях необходимо надлежащим образом оптимизировать и корректировать стратегию в соответствии с различными характеристиками рынка и личными стилями торговли для повышения ее стабильности и прибыльности.


/*backtest
start: 2023-05-11 00:00:00
end: 2024-05-16 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © tradedots

//@version=5
strategy("Price and Volume Breakout Buy Strategy [TradeDots]", overlay=true, initial_capital = 10000, default_qty_type = strategy.percent_of_equity, default_qty_value = 70, commission_type = strategy.commission.percent, commission_value = 0.01)

input_price_breakout_period = input.int(60, "Price Breakout Period")
input_volume_breakout_period = input.int(60, "Volume Breakout Period")
input_trendline_legnth = input.int(200, "Trendline Length")
input_order_direction = input.string("Long", options = ["Long", "Short", "Long and Short"], title = "Order Direction")

price_highest = ta.highest(input_price_breakout_period)
price_lowest = ta.lowest(input_price_breakout_period)
volume_highest = ta.highest(volume, input_volume_breakout_period)

// Long Orders
if close > price_highest[1] and volume > volume_highest[1] and close > ta.sma(close, input_trendline_legnth) and strategy.opentrades == 0 and input_order_direction != "Short"
    strategy.entry("Long", strategy.long)
    // line.new(bar_index[input_price_breakout_period], price_highest[1], bar_index, price_highest[1], color = #9cff87, width = 2)
    // label.new(bar_index,low, "🟢 Breakout Buy", style = label.style_label_up, color = #9cff87)

// Close when price is below moving average for 5 consecutive days
if close < ta.sma(close, input_trendline_legnth) and close[1] < ta.sma(close, input_trendline_legnth) and close[2] < ta.sma(close, input_trendline_legnth) and close[3] < ta.sma(close, input_trendline_legnth) and close[4] < ta.sma(close, input_trendline_legnth) and strategy.opentrades.size(strategy.opentrades - 1) > 0
    strategy.close("Long")
    // label.new(bar_index, high, "🔴 Close Position", style = label.style_label_down, color = #f9396a, textcolor = color.white)

// Short Orders
if close < price_lowest[1] and volume > volume_highest[1] and close < ta.sma(close, input_trendline_legnth) and strategy.opentrades == 0 and input_order_direction != "Long"
    strategy.entry("Short", strategy.short)
    // line.new(bar_index[input_price_breakout_period], price_lowest[1], bar_index, price_lowest[1], color = #f9396a, width = 2)
    // label.new(bar_index,high , "🔴 Breakout Sell", style = label.style_label_down, color = #f9396a, textcolor = color.white)

// Close when price is above moving average for 5 consecutive days
if close > ta.sma(close, input_trendline_legnth) and close[1] > ta.sma(close, input_trendline_legnth) and close[2] > ta.sma(close, input_trendline_legnth) and close[3] > ta.sma(close, input_trendline_legnth) and close[4] > ta.sma(close, input_trendline_legnth) and strategy.opentrades.size(strategy.opentrades - 1) < 0
    strategy.close("Short")
    // label.new(bar_index, low, "🟢 Close Position", style = label.style_label_up, color = #9cff87)

plot(ta.sma(close, input_trendline_legnth), color = color.white, linewidth = 2)
plotcandle(open, high, low, close, title='Candles', color = (close > ta.sma(close, input_trendline_legnth) ? #9cff87 : #f9396a), wickcolor=(close > ta.sma(close, input_trendline_legnth) ? #9cff87 : #f9396a), force_overlay = true)



Связанные

Больше