Двухступенчатая стратегия выхода

Автор:Чао Чжан, Дата: 2023-11-02 15:58:29
Тэги:

img

Обзор

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

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

Стратегия рассчитывает процентное изменение текущей 5-минутной свечи на основе ее открытой цены по сравнению с ценой открытия 5-минутной свечи в 2:00 утра каждый день. Когда процентное изменение превышает порог первой стадии прорыва, принимаются соответствующие решения о покупке или продаже. Уровни остановки потери и получения прибыли также устанавливаются для закрытия позиций.

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

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

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

  • Двухступенчатый прорыв с различными условиями запуска эффективно отфильтровывает шум на различных рынках, торгуя только при больших колебаниях цен.
  • Активация второй стадии позволяет избежать слишком частого запуска стоп-лосса.
  • Расчет процентного изменения от цены открытия использует новые тенденции после открытия рынка каждый день
  • Простая и понятная логика стратегии, легкая для понимания и реализации

Риски и способы их смягчения

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

Уменьшение последствий:

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

Возможности для расширения

  • Оптимизировать значения для двух стадий прорыва, чтобы найти лучшую комбинацию
  • Исследование оптимальных параметров для различных продуктов и периодов времени
  • Включить индикатор тенденции для использования более агрессивных настроек во время сильных тенденций
  • Ограничение максимальных суточных сделок для предотвращения чрезмерной торговли
  • Оптимизировать стоп-лосс и получить точки прибыли для повышения эффективности риска и прибыли

Резюме

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


/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Auto Entry Bot", overlay=true)

// Define input for the stop loss and take profit levels
stopLossPips = input.int(200, title="Stop Loss Pips", minval=1)
takeProfitPips = input.int(400, title="Take Profit Pips", minval=1)

// Calculate the percentage change from the 5-minute opening candle at 2:00 AM
var float openPrice = na
if (hour == 2 and minute == 0)
    openPrice := open
percentageChange = (close - openPrice) / openPrice * 100

// Track the cumulative percentage change
var float cumulativeChange = 0

// Define input for the percentage change trigger
triggerPercentage1 = input.float(0.25, title="Percentage Change Trigger (%)", minval=0.01, step=0.01)
triggerPercentage2 = input.float(0.35, title="Additional Trigger Percentage (%)", minval=0.01, step=0.01)

// Check for price change trigger
if (percentageChange >= triggerPercentage1)
    // Sell signal
    strategy.entry("Sell", strategy.short)
    strategy.exit("ExitSell", loss=stopLossPips, profit=takeProfitPips)
    cumulativeChange := 0  // Reset cumulative change after a trade

if (percentageChange <= -triggerPercentage1)
    // Buy signal
    strategy.entry("Buy", strategy.long)
    strategy.exit("ExitBuy", loss=stopLossPips, profit=takeProfitPips)
    cumulativeChange := 0  // Reset cumulative change after a trade

// If the price keeps hitting stop loss, activate the second trigger
if (strategy.position_size < 0 and percentageChange <= -triggerPercentage2)
    strategy.cancel("Sell")  // Cancel previous sell order
    strategy.entry("Sell2", strategy.short)
    strategy.exit("ExitSell2", loss=stopLossPips, profit=takeProfitPips)
    cumulativeChange := 0  // Reset cumulative change after a trade

if (strategy.position_size > 0 and percentageChange >= triggerPercentage2)
    strategy.cancel("Buy")  // Cancel previous buy order
    strategy.entry("Buy2", strategy.long)
    strategy.exit("ExitBuy2", loss=stopLossPips, profit=takeProfitPips)
    cumulativeChange := 0  // Reset cumulative change after a trade


Больше