Hola a todos. Espero que todos lo estén haciendo bien. Ha pasado mucho tiempo desde que publiqué mi primer guión aquí, y recibí mucha respuesta de eso.
Así que pensé que debería compartir este guión también con todos, y cualquier persona que pueda encontrarlo útil.
Así es como trabajo: El guión trata de determinar la dirección general del mercado, utilizando velas Heiken Ashi suavizadas. El sistema de coloreado (usando colores brillantes y oscuros) es un intento de detectar condiciones de mercado fuertes y débiles. También hay un oscilador dentro del guión, pero por ahora no está trazado. Créditos a @jackvmk, utilizo parte de su código de guión abierto en este indicador.
He considerado el uso de la pendiente del gráfico del indicador como un filtro para las condiciones del mercado. El gráfico va relativamente plano en los mercados
Si encuentras una manera de usar esto, por favor compártelo con la comunidad en la sección de comentarios.
NOTA: NO ES UN CONSEJO FINANCIERO. Tendrá que hacer sus estudios y encontrar una manera de aplicar este indicador a su estilo y estrategia de negociación.
Por cierto, voy a usar el nombre
Prueba posterior
/*backtest start: 2022-04-08 00:00:00 end: 2022-05-07 23:59:00 period: 10m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © Professeur_X //@version=5 indicator(title='HA Market Bias', shorttitle='HA Market Bias', overlay=true) tf(_res, _exp, gaps_on) => gaps_on == 0 ? request.security(syminfo.tickerid, _res, _exp) : gaps_on == true ? request.security(syminfo.tickerid, _res, _exp, barmerge.gaps_on, barmerge.lookahead_off) : request.security(syminfo.tickerid, _res, _exp, barmerge.gaps_off, barmerge.lookahead_off) ha_htf = '' show_ha = input.bool(true, "Show HA Plot/ Market Bias", group="HA Market Bias") ha_len = input(100, 'Period', group="HA Market Bias") ha_len2 = input(100, 'Smoothing', group="HA Market Bias") // Calculations { o = ta.ema(open, ha_len) c = ta.ema(close, ha_len) h = ta.ema(high, ha_len) l = ta.ema(low, ha_len) haclose = tf(ha_htf, (o + h + l + c) / 4, 0) xhaopen = tf(ha_htf, (o + c) / 2, 0) haopen = na(xhaopen[1]) ? (o + c) / 2 : (xhaopen[1] + haclose[1]) / 2 hahigh = math.max(h, math.max(haopen, haclose)) halow = math.min(l, math.min(haopen, haclose)) o2 = tf(ha_htf, ta.ema(haopen, ha_len2), 0) c2 = tf(ha_htf, ta.ema(haclose, ha_len2), 0) h2 = tf(ha_htf, ta.ema(hahigh, ha_len2), 0) l2 = tf(ha_htf, ta.ema(halow, ha_len2), 0) ha_avg = (h2 + l2) / 2 // } // Oscillator { osc_len = input.int(7, "Oscillator Period", group="HA Market Bias") osc_bias = 100 *(c2 - o2) osc_smooth = ta.ema(osc_bias, osc_len) sigcolor = (osc_bias > 0) and (osc_bias >= osc_smooth) ? color.new(color.lime, 35) : (osc_bias > 0) and (osc_bias < osc_smooth) ? color.new(color.lime, 75) : (osc_bias < 0) and (osc_bias <= osc_smooth) ? color.new(color.red, 35) : (osc_bias < 0) and (osc_bias > osc_smooth) ? color.new(color.red, 75) : na // } // Plots { p_h = plot(h2, "Bias High", display=display.none, editable=false) p_l = plot(l2, "Bias Low", display=display.none, editable=false) p_avg = plot(ha_avg, "Bias Avergae", display=display.none, editable=false) col = o2 > c2 ? color.red : color.lime if o2 > c2 strategy.entry("Enter Long", strategy.long) else if o2 < c2 strategy.entry("Enter Short", strategy.short)