Стратегия покупки бульварного рынка Darvas Box Breakout - это модифицированная версия стратегии Darvas Box, которая длится только во время бычьего рынка.
Эта стратегия построена на теории Дарваса. Теория Дарваса считает, что когда цена выходит из коробки после консолидации, это хороший сигнал длинного входа. Эта стратегия идентифицирует длинные записи на основе этой теории.
В частности, стратегия сначала рассчитывает самый низкий минимум за последние 5 дней, чтобы составить график нижней полосы коробки. Затем она рассчитывает самый высокий максимум за последние 5 дней, чтобы составить график верхней полосы. Когда цена закрытия превышает верхнюю полосу, это сигнализирует о том, что тренд стал бычьим и идет длинным по цене закрытия.
После длинного хода стратегия устанавливает стоп-лосс вблизи нижней полосы коробки, а прибыль в 5 раз больше размеров стоп-лосса.
Преимущества этой стратегии включают:
Использование теории ящика для выявления длинных записей, способных отслеживать прорыв, может эффективно отфильтровать какой-то шум.
Продолжительность сделки только при четком сигнале прорыва позволяет избежать многих ненужных случайных сделок.
Если предопределить стоп-лосс и прибыль, можно хорошо контролировать риск.
Только покупка прорывов во время бычьего рынка позволяет избежать рисков нестабильных и медвежьих рынков.
Эта стратегия также сопряжена с некоторыми рисками:
Теория коробки не идеальна, прорыв не гарантирует дальнейшего подъема.
При этом не учитывается риск отклонения после прорыва, который может привести к остановке потерь.
Нет механизма выхода, долгосрочное содержание может быть рискованным.
Параметры могут нуждаться в корректировке для разных рынков.
Некоторые методы оптимизации и улучшения на основе рисков:
Объедините с другими индикаторами, чтобы подтвердить надежность сигналов прорыва.
Подумайте о том, чтобы дождаться повторного теста или второго прорыва для подтверждения, прежде чем войти.
Добавьте стоп-лосс, чтобы закрепить прибыль.
Проверка и оптимизация параметров с использованием различных данных рынка.
Некоторые направления этой стратегии могут быть улучшены:
Оптимизируйте параметры ящика, проверьте, могут ли различные параметры дня получить лучшие результаты.
Добавить фильтрующие показатели, чтобы обеспечить покупку в восходящем тренде.
Оптимизировать стоп-лосс и получать прибыль на разных рынках.
Добавьте последующие стоп-лосс для получения прибыли.
Добавьте сигналы выхода, чтобы получить прибыль, когда произойдет откат.
Стратегия покупки бульварного рынка Darvas Box - это простая, но эффективная стратегия преследования тренда, построенная на теории Darvas. Она длится только на четких сигналах покупки, чтобы избежать ненужных случайных сделок.
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Darvas Box Strategy - Buy Only", overlay=true) start_date = timestamp(2023, 10, 15, 0, 0) boxp = input(5, "BOX LENGTH") LL = lowest(low, boxp) k1 = highest(high, boxp) k2 = highest(high, boxp - 1) k3 = highest(high, boxp - 2) NH = valuewhen(high > k1[1], high, 0) box1 = k3 < k2 TopBox = valuewhen(barssince(high > k1[1]) == boxp - 2 and box1, NH, 0) BottomBox = valuewhen(barssince(high > k1[1]) == boxp - 2 and box1, LL, 0) plot(TopBox, linewidth=2, color=color.green, title="TopBox") plot(BottomBox, linewidth=2, color=color.red, title="BottomBox") // Define entry conditions enterLong = crossover(close, TopBox) // Define exit conditions exitLong = false // No specific exit condition mentioned in the original script // Define stop loss level stopLoss = BottomBox // Define take profit level (2 times the stop loss) takeProfit = stopLoss * 5 // Execute buy trade and set stop loss and take profit strategy.entry("Buy", strategy.long, when = enterLong) strategy.exit("Exit", "Buy", stop = stopLoss, limit = takeProfit) // Plot buy signal arrow plotshape(enterLong, title = "Buy Signal", style = shape.labelup, location = location.belowbar, color = color.green) // Plot stop loss level plot(stopLoss, linewidth=2, color=color.red, title="Stop Loss Level") // Plot take profit level plot(takeProfit, linewidth=2, color=color.rgb(19, 202, 111), title="Take Profit Level") // Hide sell signal arrow plotshape(false, title = "Sell Signal", style = shape.labeldown, location = location.abovebar, color = color.red, transp = 100)