Стратегия прибыли по показателю KST - это стратегия выбора акций, применяемая к 30-минутному циклу SPY. Эта стратегия использует кроссоверы по показателю KST для определения времени входа и выхода.
Эта стратегия основана в основном на показателе KST, который состоит из следующих частей:
Сигналы покупки и продажи определяются золотыми крестами и смертными крестами между линией KST и линией Сигнала:
Основными преимуществами этой стратегии являются:
Показатель KST всесторонне рассматривает движение цен в течение разных временных горизонтов, что делает стратегию более стабильной и надежной.
Средневзвешенное значение кривых ROC в показателе KST гарантирует, что более долгосрочные изменения цен играют ведущую роль, что помогает отслеживать рыночные тенденции.
Хорошо работает в продуктах с высокой ликвидностью, таких как SPY.
В этой стратегии также есть некоторые риски:
Как и индикаторы MA, индикатор KST может производить ложные сигналы на боковых рынках.
Входы и выходы полностью зависят от показателя без учета фундаментальных факторов или рыночных режимов, что приводит к большим потерям во время значительных событий.
Инвестиционная вселенная содержит только SPY, поэтому риск одного актива может быть высоким.
Возможности оптимизации стратегии:
Оптимизируйте параметры KST, чтобы найти лучшую комбинацию.
Включить индикатор волатильности, чтобы избежать ложных сигналов во время нестабильных рынков.
Добавьте стоп-лосс-ордера для ограничения риска снижения на одну сделку.
Расширить фонд запасов, чтобы включить отдельные запасы, отвечающие определенным критериям для повышения надежности.
Эта стратегия идентифицирует краткосрочные тенденции в SPY с использованием индикатора KST, с хорошими результатами обратных тестов. Мы можем улучшить его стабильность и эффективность в реальном мире путем настройки параметров, контроля рисков и расширения критериев отбора акций. Сделав его более универсальным.
/*backtest start: 2022-11-20 00:00:00 end: 2023-11-26 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("KST Strategy", shorttitle="KST", overlay=true) roclen1 = input.int(11, minval=1, title="ROC Length #1") roclen2 = input.int(15, minval=1, title="ROC Length #2") roclen3 = input.int(20, minval=1, title="ROC Length #3") roclen4 = input.int(33, minval=1, title="ROC Length #4") smalen1 = input.int(9, minval=1, title="SMA Length #1") smalen2 = input.int(14, minval=1, title="SMA Length #2") smalen3 = input.int(8, minval=1, title="SMA Length #3") smalen4 = input.int(15, minval=1, title="SMA Length #4") siglen = input.int(9, minval=1, title="Signal Line Length") smaroc(roclen, smalen) => ta.sma(ta.roc(close, roclen), smalen) kst = smaroc(roclen1, smalen1) + 2 * smaroc(roclen2, smalen2) + 3 * smaroc(roclen3, smalen3) + 4 * smaroc(roclen4, smalen4) sig = ta.sma(kst, siglen) // Plot the KST and Signal Line plot(kst, color=#009688, title="KST") plot(sig, color=#F44336, title="Signal") hline(0, title="Zero", color=#787B86) // Strategy logic longCondition = ta.crossover(kst, sig) shortCondition = ta.crossunder(kst, sig) strategy.entry("Long", strategy.long, when=longCondition) strategy.entry("Short", strategy.short, when=shortCondition)