
Эта стратегия включает в себя несколько оптимизаций классических MACD-индикаторов, чтобы обеспечить более точное и надежное генерирование торговых сигналов и более строгий контроль риска. Основные оптимизационные элементы включают: 1) введение индикатора RSI, чтобы избежать чрезмерной покупки; 2) добавление подтверждения объема сделки; 3) установка стоп-стоп-лосса; 4) оптимизация комбинации параметров.
Основным принципом по-прежнему остается быстрое и медленное выполнение MACD-индикатора, а не его выполнение. Основные оптимизации:
Введение RSI позволяет избежать создания ложных сигналов, когда рынок переоценен или недооценен. RSI может эффективно отражать рыночное давление на покупку и продажу.
Включая суждение о количестве сделок, только в случае увеличения количества сделок будет создаваться сигнал, чтобы избежать неэффективного прорыва. Увеличение количества сделок может подтвердить силу тренда.
Установка механизма стоп-лосса, который может динамично отслеживать рыночные колебания, чтобы контролировать риск в пределах приемлемого диапазона. Стоп-лосса может эффективно контролировать одиночные потери; стоп-лосса может блокировать прибыль, чтобы избежать ее обратного обращения.
Оптимизация пакетов MACD, корректировка параметров на быстрых и медленных линиях и сигнальных линиях, получение лучших пакетов, создание более точных торговых сигналов.
Эта стратегия имеет следующие значительные преимущества в MACD с использованием множественной оптимизации:
Уменьшение количества ложных сигналов, повышение надежности и точности сигналов.
Строгие механизмы стоп-стоп контролируют риски и максимально блокируют прибыль.
Параметры MACD были оптимизированы и адаптированы к различным видам и временным периодам.
Многопоказательная комбинация дает сигнала, обладает сильной систематичностью и адаптируется к более широкой рыночной среде.
В целом, финансовая эффективность значительно повышается по сравнению с риском прибыли.
Однако есть и другие риски, с которыми нужно бороться:
Оптимизированные параметры не всегда подходят для всех сортов и циклов, и их необходимо корректировать в соответствии с реальными обстоятельствами.
Сигналы будут генерироваться с пониженной частотой, и существует определенная вероятность пропуска.
В экстремальных рыночных ситуациях несколько индикаторов могут создавать конфликтные сигналы, требующие ручного суждения.
Автоматический стоп может быть преждевременно остановлен в случае быстрого взлета, что создает определенный риск для прибыли.
Противодействие заключается в основном в искусственном наблюдении за суждениями, соответствующей корректировке параметров в соответствии с рыночными условиями и контроле над размером позиции.
Эта стратегия может быть улучшена в следующих аспектах:
Для определения группы показателей тестируются комбинации других показателей, таких как лента Брин, KD и т. д.
Применение алгоритмов машинного обучения автоматически оптимизирует параметры, чтобы сделать их более интеллектуальными.
Присоединяйтесь к более строгим стратегиям управления деньгами, таким как фиксированная доля, формула Келли и т.д.
Разработка стратегии автоматического остановки, при которой остановки корректируются в зависимости от тенденций и колебаний.
Применение передовых алгоритмов, таких как глубокое обучение, обеспечивает более точные прогнозы.
Эта стратегия, используя множественную оптимизацию исходных MACD-индикаторов, устраняет недостатки MACD, которые легко приводят к созданию ложных сигналов и недостаточному контролю риска. Использование комбинации многоиндикаторов и сдерживания убытков делает сигналы более точными и надежными, а контроль риска более строгим. Эта стратегия заслуживает дальнейшей разработки и применения и является образцом улучшения MACD-индикаторов.
/*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=5
strategy("优化版MACD交易策略 ", overlay=true)
// 输入参数
fastLength = input(16, "快速线周期")
slowLength = input(34, "慢速线周期")
signalSmoothing = input(10, "信号线平滑")
rsiPeriod = input(19, "RSI周期")
overboughtRsi = 70
oversoldRsi = 30
volumeAvgPeriod = input(13, "成交量平均周期")
stopLossPerc = input.float(10.5, "止损百分比", step=0.1)
takeProfitPerc = input.float(0.3, "止盈百分比", step=0.1)
// 计算指标
[macdLine, signalLine, _] = ta.macd(close, fastLength, slowLength, signalSmoothing)
rsi = ta.rsi(close, rsiPeriod)
volumeAvg = ta.sma(volume, volumeAvgPeriod)
// 交易信号
longCondition = ta.crossover(macdLine, signalLine) and macdLine > 0 and rsi < overboughtRsi and volume > volumeAvg
shortCondition = ta.crossunder(macdLine, signalLine) and macdLine < 0 and rsi > oversoldRsi and volume > volumeAvg
// 止损和止盈
longStopLossPrice = close * (1 - stopLossPerc / 100)
longTakeProfitPrice = close * (1 + takeProfitPerc / 100)
shortStopLossPrice = close * (1 + stopLossPerc / 100)
shortTakeProfitPrice = close * (1 - takeProfitPerc / 100)
// 执行交易
if longCondition
strategy.entry("买入", strategy.long)
strategy.exit("买入止损止盈", "买入", stop=longStopLossPrice, limit=longTakeProfitPrice)
if shortCondition
strategy.entry("卖出", strategy.short)
strategy.exit("卖出止损止盈", "卖出", stop=shortStopLossPrice, limit=shortTakeProfitPrice)