Heikin Ashi smoothed with signals

Heikin Ashi smoothed with signals

This technical indicator draw Heikin-ashi candlesticks that shows possible points to enter and exit and to operate not too quickly, avoiding too frequent signals.

Averages and close line are also drawn under the candlesticks for easiness of reading.

 

Share this

Risk disclosure:

No information on this site is investment advice or a solicitation to buy or sell any financial instrument. Past performance is not indicative of future results. Trading may expose you to risk of loss greater than your deposits and is only suitable for experienced investors who have sufficient financial means to bear such risk.

ProRealTime ITF files and other attachments : How to import ITF files into ProRealTime platform?

PRC is also on YouTube, subscribe to our channel for exclusive content and tutorials

  1. supertiti • 01/26/2017 #

    Hola rafa
    Si cambiamos esa linea por : DRAWARROWUP (barindex, AvHigh-range[0] ) COLOURED (127,255,0)
    tenemos la flecha verde debajo del HA, lo veo muy apretada, como se puede alejarla mas bajo el HA para tener un señal mas visible ?
    Un codigo muy interesante
    un saludo

    • rafadonl2 • 01/26/2017 #

      Muchas gracias por la sugerencia.  Y si encuentras algún fallo, agradezco los comentarios.  Que en ésto soy novato…

  2. rafadonl2 • 01/26/2017 #

    Te sugiero que uses DRAWARROWUP (barindex, AvHigh+rango/2 ) COLOURED (127,255,0)  siendo “rango” el valor que calcula el indicador: (Media7/10), si prefieres mantener las flechas por encima de las velas. Si quieres que aparezcan entre las velas y las medias, sería cuestión de poner  (barindex, AvHigh–rango/2).  La primera opción la he probado y queda mejor ya que rango es el valor que se usa para separar las velas de las medias y hacer más legible el indicador.  Lo mismo sería aplicable al dibujo de la flecha hacia abajo. Lo único es que te puede obligar a redimensionar la escala;  si usas rango/3 queda aún mejor y evita este último problema.
    Un saludo.
     

  3. supertiti • 01/26/2017 #

    Buenas tardes Rafa
    con esa linea no me sale bien las flechas : DRAWARROWUP (barindex, AvHigh-range/3 ) COLOURED (127,255,0)
    estan pegadas al Heikin Ashi ?!

    • rafadonl2 • 01/26/2017 #

      prueba la nueva version que acabo de poner. Usa regresion lineal y elimina muchas señales en tendencia lateral. La estoy probando y en general parece que funciona. Sólo tienes que configurar el porcentaje que deseas según cada valor. está con otro nombre porque no quería eliminar la anterior. Si pones los dos indicadores juntos, se ve la diferencia muy clara.

  4. supertiti • 01/26/2017 #

    asi me gusta !
    DRAWARROWUP (barindex, AvHigh-(range+2) ) COLOURED (127,255,0)
     

  5. supertiti • 01/26/2017 #

    asi mejor con +1
    DRAWARROWUP (barindex, AvHigh-(range+1) ) COLOURED (127,255,0)

    • rafadonl2 • 01/26/2017 #

      te adjunto el código.

      //Reglas en Heikin-Ashi:
      //1- Secuencia de cuerpos verdes = tendencia alcista.
      // Secuencia de cuerpos rojos = tendencia bajista.
      //2- Tendencia alcista fuerte = Grandes cuerpos verdes y sin sombras inferiores.
      // Tendencia bajista fuerte = Grandes cuerpos rojos sin sombras superiores.
      //3- Cuando la tendencia se debilita surgen cuerpos pequeños con posibles sombras superior y/o inferior.
      //4- Una consolidación se da cuando aparecen cuerpos pequeños con ambas sombras tanto arriba como abajo.
      //5- La reversión de una tendencia se puede sospechar con la aparición de pequeños cuerpos con sombras largas tanto superiores como inferiores, o un cambio repentino de color.
      //
      // Tener siempre en cuenta que las flechas salen a cierre del día
      ONCE flechaup = 1
      ONCE flechadn = 1
      ONCE salida=0 // para evitar entradas y salidas
      ONCE entrada=0 // seguidas.
      //
      //para la primera vez calculo valores iniciales
      ONCE xOpen = (open+close)/2
      ONCE xClose = (open+high+low+close)/4
      ONCE xHigh = MAX(high,MAX(xOpen,xClose))
      ONCE xLow = MIN(low,MIN(xOpen,xClose))
      ONCE comienzo=xopen
      // ciclo normal basado en los anteriores
      // cálculo de los valores de la vela Heikin-ashi
      IF BarIndex>0 THEN
      xOpen = (xOpen[1]+xClose[1])/2
      xClose = (open+high+low+close)/4
      xHigh = MAX(high, MAX(xOpen, xClose))
      xLow = MIN(Low,MIN(xOpen, xClose))
      ENDIF
      DRAWCANDLE(xOpen, xHigh, xLow, xClose)
      // Calculo el estocástico
      lineaK=100*((close-lowest[10](low))/(highest[10](high)-lowest[10](low)))
      K=exponentialaverage[3](lineaK)
      D=exponentialaverage[5](K)
      //Media retardo cero de las velas HA
      C1=exponentialaverage[media](xclose)
      C2=exponentialaverage[media](C1)
      MR0=c1+(c1-c2)
      // uso rango para el dibujo
      vAlcista = xOpen<xClose
      vAlcista1 = xOpen[1]xClose
      vBajista1 = xOpen[1]>xClose[1]
      doji=(ABS(((xopen-xclose)/(xhigh-xlow)))-margen)and(MLRxclose[1] and Xhigh>xhigh[1]
      //Tendbajf = xclose<xclose[1] and xhigh<xhigh[1]
      Debtendalc= (ATAN((xclose/xclose[1])-1)<0 or (ATAN((xhigh/xhigh[1])-1)<0))
      debtendbaj= (ATAN((xclose[1]/xclose)-1)<0 or (ATAN((xlow[1]/xlow)-1) la vela alcista pierde fuerza y estoy largo
      condas1 = debtendalc and flechaup=1
      if Condas1 then
      DRAWARROWDOWN(barindex, xHigh+distancia*1.1) COLOURED (252,246,0) // AMARILLO
      endif
      // Condiciones de salida
      // cambia de alcista a bajista y rompe la MR0
      conds1= (vbajista and valcista1 and xclose<mr0 and K<D) and flechaup=1
      // cambia a bajista y se habia debilitado
      conds2= (vbajista and (valcista1 or debtendalc[1]) and flechaup=1)
      // cambioa a bajista y continua
      conds3 = (vbajista and vbajista1 and xclose entrada)
      // primero por si fuese aviso

      IF (conds1 or conds2 or conds3) and conds4 and not doji THEN
      if not amorfo then
      DRAWARROWDOWN(barindex, xHigh+distancia*1.1) COLOURED (255, 0, 0) // ROJO
      flechadn=1 // me he salido
      flechaup=0 // puedo volver a entrar
      salida=barindex // cuando ha salido
      entrada=0
      // dibujo la ganancia vendiendo al cierre.
      ganper=xclose-comienzo
      Porcen=(ganper/comienzo*100)
      TXTGAN = round(ganper*100)/100
      TXTPor = Round(Porcen*100)/100
      DRAWTEXT(TXTGAN, barindex, xlow-distancia*1.2)
      drawtext(TXTPor, barindex, xlow-distancia*1.4)
      DRAWsegment(barindex,xlow-distancia, barindex, Xlow-distancia*1.2) coloured (0,0,0)
      endif
      endif
      // ahora veo cuando entro
      // dos velas alcistas viniendo de una bajista es entrada en azul claro

      // condiciones de entrada a un valor:
      Condaent1 = (valcista or debtendbaj) and xclose>mr0 and flechadn=1
      if Condaent1 then
      DRAWARROWUP(barindex, xlow-distancia) COLOURED (32,240,228)
      endif
      // vela alcista estocastico ok y cierre > mr0
      Condent1 = (valcista and k>D and xclose>mr0) and flechadn=1
      //
      Condent2 = valcista and valcista1 and flechadn=1
      //
      Condent3 = barindex-diasidle >= salida
      //
      IF (Condent1 and Condent2) and Condent3 THEN
      If not doji then // no sea un doji
      DRAWARROWUP(barindex, xlow-distancia) COLOURED (0, 0, 255) // AZUL
      flechaup=1
      flechadn=0
      entrada=barindex
      salida=0
      comienzo=xopen // (open+close)/2–>un precio medio
      endif
      endif
      //
      If Dayofweek =5 and day>= 15 and Day<=21 then
      DRAWVLINE(barindex) coloured(237,96,9)
      endif
      RETURN MR0 as "mr0"

  6. finplus • 01/26/2017 #

    Por favor : que significa “flecha” (flecha < 1 or flecha >=1). Gracias.

  7. finplus • 01/26/2017 #

    Por favor : que significa “flecha” (flecha < 1 or flecha >=1). Gracias.
     

  8. rafadonl2 • 01/26/2017 #

    Hola. Flecha es una variable que se usa para saber cuando se ha dibujado una señal de entrada/salida y no repetir a no ser que haya pasado un mínimo de tiempo.  Se trata de evitar señales no necesarias y sobre todo que, a veces, se desatan señales contrarias en el plazo de dos o tres días, lo que supondría un enorme  coste en comisiones. Espero haberte respondido.
    Un saludo. 

  9. finplus • 01/26/2017 #

    rafadonl2 : muchas gracias. Seria possible de automatizar el código ?

  10. rafadonl2 • 01/26/2017 #

    Disculpa. ¿a qué te refieres con automatizar el código?.  Yo lo tengo incorporado a la plataforma y cuando abro un valor, me sale la gráfica sin hacer nada.
    Un saludo.

  11. finplus • 01/26/2017 #

    Es posible a partir de las señales de entrada/salida de comprar o de vender un contracto automáticamente (con un sistema automático). Gracias.

  12. finplus • 01/26/2017 #

    Buenos dias, en este código, hay una curva que aparece y que se llama “heikin ashi smooth and signal” . Quisiera saber como esta calculado?
    Gracias.

    • rafadonl2 • 01/26/2017 #

      En el propio código del indicador, está el proceso de cálculo. es un heikin-ashi clásico pero con flechas añadidas que sugieren cuando entrar o salir del sistema. En cualquier caso, la decisión de entrar en o salir de un valor, no debería ser sólo en base a un indicador y por supuesto, como no hay un sistema perfecto, este indicador no garantiza que esa sea la decisión a tomar, siendo responsabilidad del inversor. No todos los indicadores funcionan igual en todos los valores. Enlazo con tu pregunta anterior, y sería posible utilizarlo en el sistema de screening del propio Prorealtime, pero la adaptación, no la he realizado ni la tengo en mente, dado que no uso la automatización de sistemas (se producen señales falsas y más en bolsa con los acontecimientos políticos). Un saludo.

  13. finplus • 01/26/2017 #

    Muchas gracias RafadonI2. Estoy haciendo un screener utilizando su codigo que me parece muy interesante. Anadi un indicator “MACD” que me permite entrar or salir cuando el macd est alcista o bajista. Pero, tengo algunos problemas. Un saludo. (Soy francés y mi castillano no es muy bueno. Lo siento).

    • rafadonl2 • 01/26/2017 #

      pas de probleme. je peux comprend francais.

    • rafadonl2 • 01/26/2017 #

      Prueba la nueva version que acabo que poner. Incluye regresion lineal y elimina señales en tendencia lateral.

  14. finplus • 01/26/2017 #

    Gracias Rafadonl2.

  15. finplus • 01/26/2017 #

    Una pregunta : la formula de “RANGO” es : media7/10 o media7/media10 ? Gracias.

  16. rafadonl2 • 01/26/2017 #

    es media7/10. se trata de hacer que la representación gráfica sea razonablemente visible.

  17. finplus • 01/26/2017 #

    Bonsoir, je reviens sur ma question du début : est-ce que quelqu’un pourrait transformer cet indicateur en screener ? merci. Car moi je n’y arrive pas. Bonne soirée.

  18. Scalp • 01/26/2017 #

    Buenas, a ver si me puede ayudar por favor: yo uso el cierre del Heikin Ashi por encima de una media móvil o por debajo como señal de compra o venta con la siguiente vela. Hoy, a modo de ejemplo, entre las 10:55h a 11:35h el mercado cayó con 10 velas, hubiera entrado en corto una vez la vela de las 10:55h cierra a los 5 min. por debajo de una media móvil (coincide con tus flechas y da señal de entrada) a las 11:00h, si opero manual, 1 operación, hubiera esperado 10 velas y cierro en cuanto el mercado se da la vuelta, pero con el programa automatico, me ha hecho 10 entradas entra largo y corto, + 100€ y – 100€, ganancia 0€. Como puedo dejar “correr” el beneficio sin que el sistema con cada nueva vela me abra una nueva posición (no las acumula, vende y cierra y así lo hizo 10 veces) Gracias por la aclaración.

    • Nicolas • 01/26/2017 #

      haga su pregunta en el foro, ¡obtendrá más ayuda!

    • rafadonl2 • 01/26/2017 #

      Hola. Yo sólo la uso en cierre diario. lamento no poder ayudarte en la parte de envío de órdenes.
      Un saludo.

  19. Scalp • 01/26/2017 #

    Buenos días Nicolás, aquí la pregunta: Yo uso el cierre del Heikin Ashi por encima de una media móvil o por debajo, como señal de compra o venta y entrada con la apertura de la siguiente vela. Ayer miércoles, a modo de ejemplo, la vela de las 10:55 CET cerró a los 5 min por debajo de la media móvil y hubiera entrado en corto con la apertura de la vela a las 11:00h.
    Si opero manual, sigo la tendencia con una operación y en este caso la hubiera cerrado después de 10 velas, pero mi programa automático, me ha hecho 10 entradas en largo y en corto, en resumen: + 100€ y – 100€, ganancia 0€. Como puedo dejar “correr” el beneficio sin que el sistema con cada nueva vela me abra una nueva posición (no las acumula, vende y cierra y así lo hizo 10 veces), y cerrar por ejemplo con el cambio de color de una vela
    Necesitaría :
    1: Añadir otra condición, el cambio de color de la/s vela/s anterior/es (a tu criterio y experiencia, una, dos o tres velas)
    2. Añadir flechas de señal de compra/venta cuando se cumplan las condiciones
    3: el problema de arriba, que deje correr el beneficio hasta cambio de criterio, por ejemplo color de vela.
    Mi código:
    // Definición de los parámetros del código
    DEFPARAM CumulateOrders = False // Acumulación de posiciones desactivada
    // El sistema anulará todas las órdenes pendientes y cerrará todas las posiciones a las 0:00. No se permitirá ninguna nueva orden ni posición después de la hora “FLATBEFORE”.
    DEFPARAM FLATBEFORE = 090000
    // Anular todas las órdenes pendientes y cerrar todas las posiciones a la hora “FLATAFTER”
    DEFPARAM FLATAFTER = 173000

    // Impide al sistema crear nuevas órdenes para entrar al mercado a aumentar el tamaño de la posición antes de una hora precisa
    noEntryBeforeTime = 090000
    timeEnterBefore = time >= noEntryBeforeTime

    // Impide al sistema lanzar nuevas órdenes para entrar al mercado o aumentar el tamaño de la posición después de una hora precisa
    noEntryAfterTime = 173000
    timeEnterAfter = time indicator1)

    IF c1 AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry THEN
    BUY 10 CONTRACT AT MARKET
    ENDIF

    // Condiciones de entrada de posiciones cortas
    indicator2 = WilderAverage[5](low)[1]
    c2 = (close < indicator2)

    IF c2 AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry THEN
    SELLSHORT 10 CONTRACT AT MARKET
    ENDIF

    // Stops y objetivos
    SET STOP pTRAILING 2

avatar
Register or

Likes

avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar

+5 more likes

Related users ' posts
rafadonl2 is not taken into account in the procedure. It considers only if it is a doji or when candle...
Guibourse Okay thanks, just a question : how do you plot your two lines in the same window as price ? ...
rafadonl2 sorry, I don't understand your question. Indicator draws Heikin Ashi candle, not price cand...
bearbull As per PhilipSchultz question above, has anybody managed to add code for when it turns blue,...
Ybr35 Bonjour Nicolas, lorsque je lance l'indicateur, il m'est indiqué que je dois définir les var...
Nicolas L'idéal est de télécharger le fichier itf joint sur cette page et de l'importer dans la plat...
wtangsiri Bonsoir Qu'appelez vous l'axe vertical et comment le définir ? Merci pour votre aide.
rafadonl2 Pardonnez-moi mais je ne sais pas ce que vous entendez par "axe vertical". Serait-ce la lig...
rafadonl2 Je viens de voir ce que vous voulez dire. Comme pour tout autre indicateur, vous devez défin...
Nicolas Pour les demandes spécifiques, merci d'ouvrir un sujet sur le forum des screeners en respect...
Djamal Zidane hello tout le monde , marcara ton objectif est tjrs de l'actualité?
Gover66 Hello, I would like to limit the screener to the last 5 bars only, is this possible?
DerPat I am also interested in your forward testing, as backtesting results are useless.
Elsborgtrading I agree, but since we don't have any SL or TP at all, or any Profit on zero candle, I think ...
ALEALE Dear Mr. Brymas ,could you test the optimazed strategy of Elsbortrading below for 1 year ?Th...
Doctrading Chez IG markets, on est effectivement plus limité.C'est pourquoi j'utilise ProRealTime CFD. ...
pascal3431 il semble que cette stratégie ne fonctionne pas avec des stop loss : y a t'il un moyen de li...
alfcont The first time that the system open a position it should buy or sell one contract, after the...
tahar Bonjour, je travaille sur un ecran noir et les bougies sont extremement palotes, on distingu...
Alai-n Voir Echantillons de Couleurs RVB : https://www.prorealcode.com/documentation/category/instr...
Guillaume34 Bonjour, quelqu'un à t'il réalisé ce code à l'identique mais pas dans une fenêtre sous le gr...
Nicolas oui c'est possible, je pense même que cela a été codé X fois déjà, je vais chercher.
iloco17 Bonjour Nicolas Par rapport à ce code je souhaiterais la ligne de code qui permet d'identi...
Nicolas Merci de formuler une demande dans le forum ProScreener.

Top