Быстрая и медленная куртозная стратегия торговли

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

Обзор

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

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

Основными показателями и правилами являются:

  1. Куртозное значение: отражает крутость распределения цен.

  2. Линия быстрого Куртоза: Куртоз, рассчитанный с помощью короткой скользящей средней.

  3. Медленная линия Куртоза: Куртоза, рассчитанная с длинной скользящей средней.

  4. Длинный сигнал: быстрая линия пересекает медленную линию.

  5. Выход длинный: быстрая линия пересекается ниже медленной линии.

  6. Короткий сигнал: быстрая линия пересекается ниже медленной линии.

  7. Короткий выход: быстрая линия пересекает медленную линию.

Стратегия сочетает в себе тенденцию и среднее изменение в простой и интуитивной системе.

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

По сравнению с однократным Куртозом, основные преимущества:

  1. Быстрая/медленная комбинация избегает ложных сигналов.

  2. Быстрая линия фиксирует повороты, медленная линия фильтрует шум.

  3. Простая в применении без сложных показателей.

  4. Гибкая настройка Куртоза.

  5. Опция отмены адаптируется к различным рынкам.

  6. Ясные правила, легко выполняемые.

  7. Избегает погони за вершинами и дном, контролирует риск.

  8. Хороший потенциал с настройкой параметров.

Риски

Несмотря на все преимущества, есть риски:

  1. Задержка в Куртозе, не может избежать всех потерь.

  2. Настройки MA существенно влияют на производительность.

  3. Без фильтра на объем, риск ложных прорывов.

  4. Опираясь на исторические данные, необходимо устойчивость.

  5. Никаких остановок, неконтролируемые потери на торговле.

  6. Риск чрезмерной оптимизации.

  7. Ухудшение производительности из-за изменения рынков.

  8. Необходимо следить за соотношением прибыли/риска и частотой торговли.

Усовершенствования

На основе анализа улучшения могут включать:

  1. Оценка влияния параметров ОР на стратегию.

  2. Добавляю подтверждение объема, чтобы избежать ложных перерывов.

  3. Внедрение правил стоп-лосса и прибыли.

  4. Испытания надежности на разных рынках.

  5. Включая методы машинного обучения.

  6. Оптимизация стратегий управления рисками.

  7. Сочетание с другими показателями для получения надежных сигналов.

  8. Регулярное повторное испытание для предотвращения чрезмерной установки.

  9. Корректировка размеров позиций и их частоты с целью снижения затрат на транзакции.

Заключение

Эта стратегия использует кроссовер Куртозис для простой и интуитивной системы. Но постоянные улучшения и оптимизации являются ключевыми для любой стратегии, чтобы адаптироваться к изменяющимся рынкам. Благодаря систематической оптимизации можно повысить стабильность и прибыльность стратегии.


/*backtest
start: 2022-09-16 00:00:00
end: 2023-09-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version = 2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 16/12/2016
// This indicator plots the Fast & Slow Kurtosis. The Kurtosis is a market
// sentiment indicator. The Kurtosis is constructed from three different parts.
// The Kurtosis, the Fast Kurtosis(FK), and the Fast/Slow Kurtosis(FSK).
//
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="FSK (Fast and Slow Kurtosis) Backtest", shorttitle="FSK (Fast and Slow Kurtosis)")
BuyZone = input(0)
reverse = input(false, title="Trade reverse")
hline(BuyZone, color=green, linestyle=line)
xMOM_R = mom(mom(close, 3), 1)
xMOM_RAvr = ema(xMOM_R, 65)
xMOM_RWAvr = wma(xMOM_RAvr, 3)
pos =	iff(xMOM_RAvr > BuyZone and xMOM_RWAvr > BuyZone, 1,-1) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(xMOM_RAvr, color=blue, title="FK")
plot(xMOM_RWAvr, color=red, title="FSK")

Больше