- Площадь
- Улучшенная стратегия Swing High/Low Breakout с бычьим и медвежьим поглощающим паттерном
Улучшенная стратегия Swing High/Low Breakout с бычьим и медвежьим поглощающим паттерном
Автор:
Чао Чжан, Дата: 2024-05-17 15:05:29
Тэги:
ЕМАRR
Обзор
Принципы стратегии
- Расчет высоких и низких уровней: путем сравнения текущего высокого и низкого уровня с высокими и низкими уровнями двух предыдущих периодов стратегия определяет, сформировался ли новый высокий или низкий уровень.
- Выявление бычьих и медвежьих паттернов поглощения: Бычьи паттерны поглощения признаются, когда цена закрытия выше, чем цена открытия предыдущего периода, и текущая свеча является бычьей свечой, в то время как предыдущий период является медвежьей свечой.
- Генерация торговых сигналов: когда происходит бычий охватывающий шаблон, и цена превышает высокий показатель, генерируется длинный сигнал.
- Установление уровня прибыли и стоп-лосса: уровни прибыли и стоп-лосса рассчитываются на основе заранее определенного коэффициента риск-вознаграждение и устанавливаются при выполнении сделок.
Анализ преимуществ
- Сочетание ценового действия и моделей свечей: стратегия не только рассматривает ценовые прорывы на ключевых уровнях, но и включает в себя бычьи и медвежие модели поглощения, повышая надежность торговых сигналов.
- Управление рисками: путем установления уровней получения прибыли и стоп-лосса на основе заранее определенного соотношения риск-прибыль, стратегия помогает контролировать риск отдельных сделок и улучшает общее управление рисками.
- Приспособляемость к различным рыночным условиям: стратегия рассматривает как длинные, так и короткие направления, что позволяет ей находить торговые возможности в различных рыночных тенденциях.
Анализ рисков
- Риск волатильности рынка: на сильно волатильных рынках цены могут быстро пробиться через ключевые уровни и вызвать стоп-лосс, что приводит к последовательным потерям.
- Частота торговли и затраты: Частая торговля может увеличить затраты на транзакции, влияя на общую эффективность стратегии.
Руководство по оптимизации
- Внедрение индикаторов подтверждения тренда: объединение скользящих средних или других индикаторов тренда для проверки эффективности ценовых прерываний может улучшить качество торговых сигналов.
- Динамическая корректировка стоп-лосса: динамическая корректировка уровней стоп-лосса на основе волатильности рынка или изменений цен может помочь лучше адаптироваться к различным рыночным условиям.
- Оптимизация параметров: путем обратного тестирования и оптимизации различных комбинаций параметров можно найти оптимальные настройки параметров для улучшения стабильности и рентабельности стратегии.
Резюме
/*backtest
start: 2024-04-01 00:00:00
end: 2024-04-30 23:59:59
period: 4h
basePeriod: 15m
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/
// © Markoline007
//@version=5
strategy("Improved Swing High/Low Breakout Strategy", overlay=true)
// Define input variables
length = input(14, title="Swing Length")
multiplier = input(3, title="Multiplier")
risk_reward_ratio = input(1.6, title="Risk-Reward Ratio")
target_multiplier = input(2, title="Target Multiplier")
// Calculate swing highs and swing lows
var float lastHigh = na
var float lastLow = na
var bool isHigh = na
var bool isLow = na
if high[1] < high and high[2] < high[1]
lastHigh := high[1]
isHigh := true
isLow := false
else if low[1] > low and low[2] > low[1]
lastLow := low[1]
isLow := true
isHigh := false
else
isHigh := false
isLow := false
// Define buy and sell conditions
buySignal = close > lastHigh and close > open and close[1] < open[1] // Bullish engulfing
sellSignal = close < lastLow and close < open and close[1] > open[1] // Bearish engulfing
// Calculate stop and target levels
stopLevel = close
targetLevel = close + (close - stopLevel) * risk_reward_ratio
// Execute buy and sell trades
if buySignal
strategy.entry("Buy", strategy.long)
strategy.exit("TP/SL", "Buy", profit=targetLevel, loss=stopLevel)
if sellSignal
strategy.entry("Sell", strategy.short)
strategy.exit("TP/SL", "Sell", profit=targetLevel, loss=stopLevel)
Связанные
Больше