Стратегия "Золотой крест"

Автор:Чао Чжан, Дата: 23 сентября 2023 года
Тэги:

Обзор

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

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

Эта стратегия использует функцию sma для вычисления краткосрочных и долгосрочных простых скользящих средних. Длина краткосрочного MA устанавливается на 50 дней, а длина долгосрочного MA устанавливается на 200 дней. Стратегия определяет, пересекает ли краткосрочный MA или пересекает под долгосрочным MA с использованием функций кроссовера и кроссондера, которые генерируют торговые сигналы.

Когда краткосрочный MA пересекает длительный MA, он сигнализирует, что тенденция меняется с нисходящего на восходящий, образуя Золотой Крест, который является сигналом длинного входа. Стратегия откроет длинную позицию с помощью strategy.entry. Когда краткосрочный MA пересекает длительный MA, он сигнализирует, что тенденция меняется с восходящего на нисходящий, образуя Смертный Крест, который является сигналом выхода. Стратегия закрывает все позиции с помощью strategy.close_all.

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

Анализ преимуществ

  • Стратегия проста в понимании и внедрении, подходит для начинающих;
  • Движущиеся средние помогают фильтровать шум рынка и отслеживать тенденции;
  • Золотые кресты признаны сильными бычьими сигналами для улавливания восходящих тенденций;
  • Смертные кресты - это относительно сильные медвежие сигналы для сокращения потерь;
  • Параметры могут быть оптимизированы путем корректировки длины MA для различных рынков;
  • Визуальные перекрестные сигналы интуитивно понятны и читаемы.

Анализ рисков

  • МА имеют задержку и могут пропустить лучшее время для изменения тренда;
  • Простые перекрестки MA не могут полностью избежать ложных сигналов;
  • Чёрный лебедь не рассматривается в качестве крупной негативной новости;
  • отсутствие стоп-лосса для эффективного ограничения единичных потерь;
  • Покупать на Смертный Крест рискуешь потерями, выйти на Золотой Крест рискуешь потерять прибыль.

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

Руководство по оптимизации

Стратегия может быть оптимизирована в следующих аспектах:

  1. Оптимизировать параметры MA путем корректировки длины краткосрочных и долгосрочных MA, чтобы лучше соответствовать различным характеристикам рынка;

  2. Добавить условие громкости к сигналам запуска только при увеличении громкости;

  3. Включить другие индикаторы, такие как MACD, RSI, чтобы подтвердить перекрестные сигналы и избежать ложных сигналов;

  4. Добавьте стратегии стоп-лосса, такие как стоп-лосс задержки, процент стоп-лосса для контроля одиночных потерь;

  5. Добавить стратегии размещения позиций, такие как фиксированная доля, экспоненциальное размещение для контроля общего риска;

  6. Оптимизируйте вход, наблюдая в течение некоторого времени после перекрестка, чтобы отфильтровать поддельные перекрестки.

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

Заключение

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


/*backtest
start: 2023-08-27 00:00:00
end: 2023-09-26 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Dumb strategy 2 - Golden Cross", shorttitle="Golden Cross", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

lShort = input(50, title="short length")
lLong = input(200, title="long length")
src = input(close, title="Source")

smaShort = sma(src, lShort)
smaLong = sma(src, lLong)

plot(smaShort, title="SMA Short", style=line, linewidth=3, color=lime)
plot(smaLong, title="SMA Long", style=line, linewidth=3, color=red)


//
//Backtest Time Inputs
//

testStartYear = input(2009, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)

testStopYear = input(2019, "Backtest Stop Year")
testStopMonth = input(1, "Backtest Stop Month")
testStopDay = input(01, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)

testPeriodBackground = input(title="Color Background?", type=bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and (time >= testPeriodStart) and (time <= testPeriodStop) ? blue : na
bgcolor(testPeriodBackgroundColor, transp=80)


testPeriod() => true

	

if testPeriod()
	longCondition = crossover(smaShort, smaLong)
	if (longCondition)
		strategy.entry("Long Entry", strategy.long)

	shortCondition = crossunder(smaShort, smaLong)
	if (shortCondition)
		strategy.close_all(true)
	

Больше