La estrategia determina la dirección de la tendencia del mercado mediante el cálculo del indicador Fractal Chaos Oscillator, FCO, para lograr el seguimiento de la tendencia. El FCO determina la tendencia del precio comparando los cambios en los valores máximos y mínimos locales, con un rango de valores entre -1 y 1, y los valores más altos indican una tendencia más evidente.
Buscando una determinada forma de línea K para juzgar los máximos y mínimos locales. Comparando los cambios en los máximos de dos grupos adyacentes, se calcula el indicador FCO. Por ejemplo, cuando el último grupo de mínimos máximos no coincide con el grupo anterior, el FCO es 1, lo que indica que la tendencia al alza de los precios se ha vuelto fuerte.
Los parámetros se pueden optimizar adecuadamente o combinar con otros indicadores para determinar la reversión de la tendencia.
La estrategia FCO es una estrategia de seguimiento de tendencias fácil de implementar.
/*backtest
start: 2023-09-10 00:00:00
end: 2023-09-17 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 22/02/2018
// The value of Fractal Chaos Oscillator is calculated as the difference between
// the most subtle movements of the market. In general, its value moves between
// -1.000 and 1.000. The higher the value of the Fractal Chaos Oscillator, the
// more one can say that it follows a certain trend – an increase in prices trend,
// or a decrease in prices trend.
//
// Being an indicator expressed in a numeric value, traders say that this is an
// indicator that puts a value on the trendiness of the markets. When the FCO reaches
// a high value, they initiate the “buy” operation, contrarily when the FCO reaches a
// low value, they signal the “sell” action. This is an excellent indicator to use in
// intra-day trading.
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
fractalUp(pattern) =>
p = high[pattern+1]
okl = 1
okr = 1
for i = pattern to 1
okl := iff(high[i] < high[i+1] and okl == 1 , 1, 0)
for i = pattern+2 to pattern*2+1
okr := iff(high[i] < high[i-1] and okr == 1, 1, 0)
res = iff(okl == 1 and okr == 1, p, res[1])
res
fractalDn(pattern) =>
p = low[pattern+1]
okl = 1
okr = 1
for i = pattern to 1
okl := iff(low[i] > low[i+1] and okl == 1 , 1, 0)
for i = pattern+2 to pattern*2+1
okr := iff(low[i] > low[i-1] and okr == 1, 1, 0)
res = iff(okl == 1 and okr == 1, p, res[1])
res
strategy(title="Fractal Chaos Oscillator", overlay = false)
Pattern = input(1, minval=1)
reverse = input(false, title="Trade reverse")
xUpper = fractalUp(Pattern)
xLower = fractalDn(Pattern)
xRes = iff(xUpper != xUpper[1], 1,
iff(xLower != xLower[1], -1, 0))
pos = iff(xRes == 1, 1,
iff(xRes == -1, -1, nz(pos[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)
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(xRes, color=blue, title="FCO")