
Стратегия объединяет 123 обратную стратегию и стратегию прогрессирующей средней линии в будущем, реализуя количественную торговую стратегию, которая вводит или выводит, когда две стратегии посылают сигналы одновременно. Эта стратегия применяется в основном на рынке фьючерсных индексов, чтобы осуществить среднесрочную позиционную торговлю путем захвата комбинации краткосрочных обратных сигналов и среднесрочных трендовых сигналов.
Стратегия 123 возврата возникла из книги “Как я трижды удвоил свои деньги на рынке фьючерсов”. Стратегия делала прибыль, когда цена закрытия в течение двух дней подряд была в обратном направлении, и когда медленная K-линия была ниже 50 в течение девяти дней; была пуста, когда цена закрытия в течение двух дней подряд была в обратном направлении, и когда быстрая K-линия была выше 50 в течение девяти дней.
Стратегия FLD (Future Lines of Demarcation) - это стратегия отслеживания тенденций, основанная на периодических законах колебаний цены. ФЛД-линии на основе цены, средней, высокой или низкой, переносятся в будущее примерно на половину цикла, и создают торговый сигнал, когда ценовая линия пересекает линию FLD.
Эта стратегия, в сочетании с стратегией обратного отсчета и стратегией отслеживания тенденций, позволяет одновременно улавливать краткосрочные рыночные возможности для обратного отсчета и среднесрочные тенденции, что позволяет осуществлять количественные сделки в нескольких временных масштабах. Стратегия обратного отсчета предоставляет краткосрочные возможности для получения прибыли, а часть отслеживания тенденций позволяет обеспечить соответствие общего направления торговли с тенденцией и эффективно контролировать торговые риски. Кроме того, адаптивные свойства движущейся средней линии в будущем также повышают стабильность стратегии.
Эта стратегия в основном рискует ложными прорывами обратного сигнала и ошибочным определением линии FLD. Для первых можно подтвердить обратный сигнал путем корректировки параметров или добавить другие вспомогательные критерии для повышения точности суждения. Для последних требуется оптимизация параметров, чтобы убедиться, что они более точно описывают закономерности полосы волн рынка. Кроме того, необходимо быть бдительным к возможности ошибочного выхода линии FLD при большом циклическом тренде.
Стратегия объединяет в себе торговую идею обратного отсчета и тренда и обеспечивает стабильную прибыль в средне- и краткосрочных временных рамках. В будущем ее можно оптимизировать с точки зрения подтверждения точности сигналов, описания точности тренда и контроля риска, что позволяет расширить диапазон параметров стратегии и повысить ее стабильность.
/*backtest
start: 2022-12-01 00:00:00
end: 2023-12-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 28/08/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
// An FLD is a line that is plotted on the same scale as the price and is in fact the
// price itself displaced to the right (into the future) by (approximately) half the
// wavelength of the cycle for which the FLD is plotted. There are three FLD's that can be
// plotted for each cycle:
// An FLD based on the median price.
// An FLD based on the high price.
// An FLD based on the low price.
//
// 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
FLD(Period,src) =>
pos = 0
pos := iff(src[Period] < close , 1,
iff(src[Period] > close, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & FLD's - Future Lines of Demarcation", shorttitle="Combo", overlay = true)
Length = input(15, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
Period = input(title="Period", defval=40)
src = input(title="Source", type=input.source, defval=close)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posFLD = FLD(Period,src)
pos = iff(posReversal123 == 1 and posFLD == 1 , 1,
iff(posReversal123 == -1 and posFLD == -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 )