В этой статье в основном анализируется количественная стратегия торговли под названием
Основная логика этой стратегии заключается в следующем:
В частности, стратегия сначала определяет параметр p как параметр цикла для расчета индикатора RSI, а r - как временной диапазон для прогнозирования будущих изменений цен. Затем в рамках цикла p подсчитайте количество раз, когда цена закрытия повышается, чтобы рассчитать распределение вероятности A. В то же время, в рамках цикла p, подсчитайте количество раз, когда RSI продолжает повышаться в рамках цикла r после окончания этого цикла, и вычислите распределение вероятности B.
После этого применяйте формулу Байеса для расчета вероятности того, что два условия
Таким образом, стратегия всесторонне рассматривает информацию о ценах и технические показатели, применяет статистику вероятности и правила Байеса для оценки будущих тенденций и генерации торговых сигналов.
Основными преимуществами этой стратегии являются:
Объединение множества информации: Стратегия учитывает не только информацию о ценах, но и информацию о технических показателях, таких как RSI, для всестороннего оценки будущих тенденций и улучшения точности суждений.
Прогноз вероятности: делать прогнозы вероятности по направлению изменения цены и RSI с помощью статистического распределения вероятности, вместо простого численного сравнения, делая суждение более научным.
Бейесовская оптимизация: Использовать Байесовские правила для расчета соответствующих вероятностей и оптимизировать исходные статистические вероятности, чтобы сделать суждения более точными.
Гибкие параметрыПредоставление множества параметров для корректировки и оптимизации, чтобы соответствовать различным рынкам и активам и улучшить адаптивность стратегии.
Просто и эффективно: Идея стратегии ясна и простые статистические и вероятностные операции используются для генерации торговых сигналов суждений, которые легко понять и оптимизировать, и эффект является значительным.
К основным рискам этой стратегии также относятся:
Зависимость от параметров: производительность в значительной степени зависит от параметров. различные рынки должны корректировать многие параметры для достижения оптимальных результатов, увеличивая сложность работы стратегии.
Ошибка вероятности: Из-за ограниченного статистического времени и выборки рассчитанная вероятность может не соответствовать реальной тенденции, что приводит к отклонению оценки.
Специальные мероприятия: Крупные чрезвычайные ситуации могут повлиять на корреляцию между рыночными ценами и показателями РСИ, вызывая неудачу стратегии.
Неисправность технического индикатора: В некоторых рыночных ситуациях технические индикаторы, такие как RSI, могут давать недействительные сигналы, что приводит к неудаче стратегического суждения.
Решения включают в себя: оптимизацию процесса установки параметров, корректировку статистического времени и размера выборки, объединение большей количества вспомогательной информации, ручное вмешательство в аномальных ситуациях и т.д.
К основным направлениям оптимизации этой стратегии относятся:
Многократные сроки: Использование стратегий в нескольких временных рамках (ежедневно, еженедельно и т.д.) для комплексного суждения для улучшения стабильности.
Больше показателейДобавление дополнительных технических сигналов, таких как свечи, скользящие средние и т.д., для обогащения основы для суждения.
Оптимизация модели: Использование машинного обучения и т.д. для оптимизации байесовской модели для более точных вычислений.
Динамические параметры: Добавление модулей динамической оптимизации для параметров для корректировки в режиме реального времени с изменениями рынка.
Механизм контроля рисков: Установка показателей риска, таких как максимальное снижение и частота торговли, чтобы предотвратить огромные потери на экстремальных рынках.
Улучшения: Совместно с другими типами стратегий или моделями формировать механизмы голосования и улучшить стабильность.
Эта стратегия сначала статистически рассчитывает распределение вероятности цены и RSI, а затем использует баесианские правила для вычисления комбинированных вероятностей, генерируя торговые сигналы, когда вероятности превышают установленные пороги, тем самым получая прибыль. Эта стратегия сочетает в себе информацию из нескольких источников, использует прогноз вероятности и баесианскую оптимизацию для достойной оценки. Основные направления оптимизации включают расширение временных рамок, больше показателей, динамических параметров и т. Д. В заключение, эта стратегия имеет уникальную идею и замечательный эффект, который стоит исследовать и применить.
/*backtest start: 2022-12-11 00:00:00 end: 2023-03-15 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 // Stealthy7 trading scripts are radikal. You have entered the mystical realm of demonic profit. // If you like this script, check out my bots at cryptotrader.org/?r=51 // Let me know if you find any improvements to this script. It is beta. // Please subscribe. strategy("Stealthy7 Bayes Conditional RSI Trader Strategy", overlay=true) p = input(title="Period", defval=30, minval=5, maxval=500) t = input(title="Movement Thresh", type=float, defval=1.003, minval=1.001, maxval=1.5, step=0.001) r = input(title="Look Range", defval=7, minval=1,maxval=500, step=1) RSIT = input(title="Jump", defval=8, minval=1,maxval=99, step=1) BAYEST = input(title="SM", defval=3, minval=1,maxval=99, step=1) RSIP = input(title="RSIP", defval=14, minval=2,maxval=100, step=1) countup = 1 countdn = 1 countupS = 1 countdnS = 1 for i = p to 1 if close[i]/close[i + r] > t countup := countup + 1 else countdn := countdn + 1 if close[i]/close[i + r] < 2 - t countupS := countupS + 1 else countdnS := countdnS + 1 rsi = rsi(open,RSIP) countup2 = 1 countup3 = 1 countup2S = 1 countup3S = 1 for i = p to 1 if close[i]/close[i + r] > t and rsi[i + r + 1] > rsi[i + r + 2] + RSIT countup2 := countup2 + 1 else countup3 := countup3 + 1 if close[i]/close[i + r] < 2 - t and rsi[i + r + 1] < rsi[i + r + 2] - RSIT countup2S := countup2S + 1 else countup3S := countup3S + 1 countup2b = countup2 / p countup3b = countup3 / p countupb = countup / p countdnb = countdn / p countup2bS = countup2S / p countup3bS = countup3S / p countupbS = countupS / p countdnbS = countdnS / p bayes = 0 bayes := ((countupb * countup2b) / ((countupb * countup2b) + (countdnb * countup3b))) * 100 bayesS = 0 bayesS := ((countupbS * countup2bS) / ((countupbS * countup2bS) + (countdnbS * countup3bS))) * 100 SN1 = sma(bayes,BAYEST) SN2 = sma(bayesS,BAYEST) shortCondition = crossunder(bayesS, SN2) //and rsi < 49 longCondition = crossover(bayes, SN1) //and rsi > 59 if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short)