
Эта стратегия сначала использует 123-образный метод определения обратного сигнала, а затем объединяет в качестве фильтра количественный колебатель Клингера, чтобы эффективно улавливать возможность обратного хода.
Стратегия состоит из двух частей:
123 Форма решения части обратного сигнала: когда цена закрытия на 2-й день после падения на 3-й день затягивается, и показатель Stoch находится на низком уровне for плюс; когда цена закрытия на 3-й день после повышения на 2-й день затягивается, и показатель Stoch находится на высоком уровне for пустой.
Часть количественного колебателя Клингера: количественный колебатель Клингера определяет приток и отток средств в сочетании с диапазоном колебаний цен и изменениями объема сделки. Количественный колебатель является многоголовым сигналом при прохождении его среднего значения; пустой сигнал при прохождении его среднего значения.
Наконец, сопоставление двух вышеперечисленных сигналов в стратегическом плане позволило определить окончательное вхождение.
Наибольшим преимуществом этой стратегии является сочетание обратной формы и количественных энергетических показателей, которые позволяют эффективно улавливать возможности для обратной формы. Кроме того, с помощью показателя стоха можно избежать ложных прорывов, а также с помощью количественного колебателя Клингера можно определить реальные потоки денег, чтобы гарантировать точность времени входа в игру.
Основная опасность этой стратегии заключается в решении реверсионной формы и параметров. Из-за задержки реверсионного сигнала необходимо убедиться, что параметры настроены разумно, чтобы избежать упущения оптимального времени реверсии. Кроме того, сама реверсионная форма может быть неэффективной.
Для снижения риска можно оптимизировать параметры, чтобы сделать обратный сигнал более чувствительным и своевременным. Также можно добавить другие условия фильтрации, чтобы обеспечить достаточное количество и достаточное количество обратных поворотов, чтобы избежать расширения отклонения.
Эта стратегия может оптимизировать пространство для корректировки параметров и добавления других вспомогательных суждений. В частности, можно уместно сократить параметры показателя stoch, оптимизируя чувствительность 123 форматных суждений. Также можно присоединиться к существующим основным показателям и формам для комбинации, например, добавление MACD Gold Fork Dead Fork, или Double Top / Bottom Multiple Bottom.
Кроме того, можно рассматривать возможность динамической корректировки стоп-лосс и стоп-стоп-условий, чтобы стратегия была более адаптирована к изменениям рынка. Также можно оптимизировать параметры в режиме реального времени в сочетании с машинным обучением.
Эта стратегия использует классическую теорию реверсивности в сочетании с квантовыми техническими показателями для эффективного захвата возможностей реверсивности.
/*backtest
start: 2023-10-22 00:00:00
end: 2023-11-21 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 23/12/2020
// This is combo strategies for get a cumulative signal.
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
// The strategy sells at market, if close price is lower than the previous close price
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// The Klinger Oscillator (KO) was developed by Stephen J. Klinger. Learning
// from prior research on volume by such well-known technicians as Joseph Granville,
// Larry Williams, and Marc Chaikin, Mr. Klinger set out to develop a volume-based
// indicator to help in both short- and long-term analysis.
// The KO was developed with two seemingly opposite goals in mind: to be sensitive
// enough to signal short-term tops and bottoms, yet accurate enough to reflect the
// long-term flow of money into and out of a security.
// The KO is based on the following tenets:
// Price range (i.e. High - Low) is a measure of movement and volume is the force behind
// the movement. The sum of High + Low + Close defines a trend. Accumulation occurs when
// today's sum is greater than the previous day's. Conversely, distribution occurs when
// today's sum is less than the previous day's. When the sums are equal, the existing trend
// is maintained.
// Volume produces continuous intra-day changes in price reflecting buying and selling pressure.
// The KO quantifies the difference between the number of shares being accumulated and distributed
// each day as "volume force". A strong, rising volume force should accompany an uptrend and then
// gradually contract over time during the latter stages of the uptrend and the early stages of
// the following downtrend. This should be followed by a rising volume force reflecting some
// accumulation before a bottom develops.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
vFast = sma(stoch(close, high, low, Length), KSmoothing)
vSlow = sma(vFast, DLength)
pos = 0.0
pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0)))
pos
KVO(TrigLen,FastX,SlowX) =>
pos = 0.0
xTrend = iff(hlc3 > hlc3[1], volume * 100, -volume * 100)
xFast = ema(xTrend, FastX)
xSlow = ema(xTrend, SlowX)
xKVO = xFast - xSlow
xTrigger = ema(xKVO, TrigLen)
pos := iff(xKVO > xTrigger, 1,
iff(xKVO < xTrigger, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & Klinger Volume Oscillator", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
TrigLen = input(13, minval=1)
FastX = input(34, minval=1)
SlowX = input(55, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posKVO = KVO(TrigLen,FastX,SlowX)
pos = iff(posReversal123 == 1 and posKVO == 1 , 1,
iff(posReversal123 == -1 and posKVO == -1, -1, 0))
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)
if (possig == 0)
strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )