Tutorial indicadores en Amibroker: crea tus propios indicadores

Con Amibroker puedes utilizar múltiples indicadores de análisis técnico. Pero no tienes por qué conformarte sólo con los indicadores tal y como vienen por defecto, puedes personalizarlos para ajustarlos a tus intereses y también puedes crear tus propios indicadores. Hoy te explico cómo hacerlo con esta guía para principiantes.

En la entrada anterior del blog, «filtrar tendencias con el ADX«, añadía ejemplos gráficos del ADXR en ProRealTime. Al querer añadir este indicador en Amibroker, me di cuenta que no venía por defecto con la plataforma. Por ello, he pensado que sería buena idea escribir un tutorial básico sobre cómo añadir tus propios indicadores en Amibroker utilizando este ejemplo. Allá vamos:

Tutorial indicadores en Amibroker

Dibujar indicadores en el chart

Comenzamos por lo básico. Cuando te descargas Amibroker por primera vez, verás que ya viene con varios indicadores técnicos por defecto .
Puedes aplicar cualquiera de estos indicadores a tu gráfico, simplemente arrastrándolo sobre tu chart o añadiéndolo como un panel independiente.

Por ejemplo, si quieres añadir unas medias sobre tu gráfico del precio:

  • Charts→Averages →Overlay
  • O también con drag and drop ( clic sostenido y arrastra sobre el gráfico)

Si quieres añadir un nuevo panel con el indicador, por ejemplo con el RSI:

  • Chart → Indicators →RSI- Relative Strength Index
  • O doble click sobre le nombre del indicador
tutorial insertar indicadores en el chart de amibroker
Cómo añadir indicadores a tu gráfico

Para eliminarlos lo puedes hacer simplemente sobre el gráfico + botón derecho + close.

Cómo personalizar los indicadores de análisis técnico

¿No te gusta el color o la presentación gráfica de los indicadores?.
Pues, customízalos y los verás según tus preferencias.

cómo personalizar indicadores
Opciones para personalizar indicadores en Amibroker

Si es un indicador que viene por defecto, haciendo clik en «Parameters» podrás modificar todos aquellos parámetros que incluyan opciones. Cambiar el color, el periodo de cálculo, el escalado, mostrar o dejar de mostrar los niveles en el chart, etc.
El atajo del teclado para seleccionar los parámetros es CTRL+R

Otra cosa que puedes hacer es personalizar, o crear un nuevo indicador a partir de otro ya existente, modificando el código.
Los pasos para realizar esta opción son similares a crear tu propio indicador, por lo que puedes leerlos un poco mas abajo en el artículo.

Crear tus propios indicadores en Amibroker

Si el indicador que buscas no viene por defecto, entonces puedes crearlo tu mismo y añadirlo en Amibroker. ¿Cómo? Pues escribiendo el código en AFL, Amibroker Formula Language.

Si sabes programar evidentemente te será sencillo escribir el código desde cero. Si programar se te complica busca un truco fácil. Vivimos en la era de Internet. Si necesitas un código hay muchísimos colgados gratuitamente en la red. Puedes tomarlos como guía, modificarlos según necesites y te resultará mucho más simple.
Mini consejo: a veces cuando copias las «comillas» dan problemas y las tienes que tipear directamente desde tu teclado.

Por ejemplo, con el caso del ADXR su fórmula es muy simple, pero como la ley del menor esfuerzo impera, lo he buscado en la red y he encontrado este código: https://www.amibroker.com/library/detail.php?id=230

pds=14;
Adxr = ( ADX(pds) + Ref( ADX(pds), -14 ) )/2;
Plot(ADxr,"",colorWhite,4);

Bueno, no es que sea nada del otro mundo, pero es un ejemplo simple que sirve para lo que quiero mostrarte aquí. Ahora vamos a modificarlo un poco.

1- Para escribir el código necesitas abrir una nueva fórmula.

guía nueva formula AFLComo siempre en Amibroker tienes varias maneras de hacer las cosas.

Puedes llegar por : File → New → Formula, o por Analysis → Formula Editor, o también por haciendo click en el símbolo de una hoja en blanco.

2- Se abrirá una nueva ventana de Formula Editor donde podrás escribir tu código AFL.
No olvides dar nombre a tu código.

tutorial formula editor amibroker español

3- Ahora atacamos el código.
Lo primero: los parámetros. Estipula qué parámetros necesitas en tu código. Si quieres poner que los parámetros sean modificables directamente lo puedes hacer con Param. Por lo que la primera línea de nuestro indicador quedaría así:

pds= Param("Periodo", 14,8,25,1);

Segundo: La fórmula de cálculo según el indicador que quieras crear. En este caso me quedo con la del ejemplo

ADXR = ( ADX(pds) + Ref( ADX(pds), -14 ) )/2;

Tercero: El gráfico. El ejemplo es un poco escueto y básicamente no me es útil lo que esta dibujando así que te muestro cómo lo puedes modificar.
Cambiaremos el color, el estilo de línea y añadimos también el ADX para que nos dibuje los cruces entre ellos.

Si quieres poder seleccionar después los colores añades ParamColor y elije el color por defecto.

Nota útil: Cuando estés escribiendo en el Formula Editor, Amibroker te dará opciones para completar la palabra o función. Por ejemplo, para elegir los colores apenas comienzo a escribir «color» me aparece la lista de colores disponibles, o cuando empiezo a escribir Param me enseña las funciones disponibles.
Cuando termines tu código, con «Verify syntax» podrás ver si hay algún error.

ayuda formula amibroker

El tipo de gráfico por defecto es el de línea, pero puedes seleccionar el que quieras (lineas, histograma, puntos, etc).

//EJEMPLO "COMO CREAR TUS PROPIOS INDICADORES EN AMIBROKER by Duk2"//
pds=Param("Periodo",14,8,25,1);
ADXR = ( ADX(pds) + Ref( ADX(pds), -14 ) )/2;
Plot(ADXR,"ADXR",ParamColor("Color", colorRed),styleDashed|styleThick);
Plot(ADX(pds),"ADX",colorBlack,styleLine|styleThick);

4- Guarda el fichero AFL dentro de la carpeta «Formulas» y por defecto escogera «Custom«, pero puedes crear nuevas carpetas si te resulta mas sencillo.  Una vez guardado encontrarás tu indicador junto con los demás indicadores de la sección chart.

5- Para aplicar el indicador al chart lo puedes hacer como explicamos al inicio del post. O si prefieres directamente desde el Formula Editor haciendo click en «Apply».

Este gráfico nos muestra los cruces entre el ADX y el ADXR tal y como lo mostraba en el post anterior.

Tutorial indicadores en Amibroker


Siguiendo con la idea del filtro de tendencia con el ADX, supongamos que queremos crear una especie de «semáforo» que muestre cuándo el ADXR es mayor que 20 y así saber cuándo utilizar un sistema tendencial. Simple: semáforo rojo si el ADXR es menor a 20, semáforo verde si es mayor.

Partimos del indicador anterior. Chart→ Custom→ ADXR →Edit

Añadimos el nivel a partir del cual el semáforo cambia de color. Puedes establecer un nivel fijo o indicar que lo deseas modificar con las opciones de parámetros ( Param).
Estableces los colores y dibujas tu indicador en toda el área.
Quedaría algo así:

 

indicador ADX y ADXR
Semáforo ADX y ADXR
//EJEMPLO SEMAFORO ADXR by Duk2 //

pds=Param("Periodo",14,8,25,1);//periodo de calculo del ADX
Level= Param( "Nivel ADXR", 20,10,30,1); //nivel que quiero establecer
ADXR = ( ADX(pds) + Ref( ADX(pds), -14 ) )/2;
//dibuja las lineas del ADX y ADXR
Plot(ADX(pds),"ADX",ParamColor("ColorADX",colorBlack),styleLine|styleThick);
Plot(ADXR,"ADXR",ParamColor("ColorADXR", colorDarkBlue),styleDashed|styleThick);
//según el nivel selecciono el color y pinto el área "semáforo"
Color= IIf (ADXR >= Level,colorGreen,colorRed);
Plot(1,"",color,styleArea|styleOwnScale,0,1,0,-1);

Ahora bien, si llamas varias veces a la misma función también puedes asignarla a una variable y hacer que sea más rápida la ejecución. Pero este solo es un ejemplo simple y no creo necesario complicarlo de momento.


Hasta aquí este tutorial indicadores en Amibroker. Tienes más artículos sobre Amibroker en este link del blog.
Si te gustan la web te puedes suscribir a Estrategias de Trading o seguir las actualizaciones del blog por Feedly , Google+, Twitter  y Facebook.

¿Tienes dudas? ¿Quieres hacer alguna corrección o aclaración? Por favor, déjalas en los comentarios de este post.
Un saludo para todos.

Duk2

6 comentarios en «Tutorial indicadores en Amibroker: crea tus propios indicadores»

  1. Interesante el amibroker Duk2, lo reconozco. Yo he usado hasta ahora ProRealtime y Metatrader y sinceramente soy poco de meterme a programar lo reconozco. Me recomendarías probarlo, y en caso afirmativo, que ventajas crees que tiene frente a los otros dos? Saludos

    Responder
    • Hola Tradingpulsar.
      No puedo comentarte nada sobre Metatrader porque nunca lo he utilizado. Sobre ventajas y desventajas entre Amibroker y ProRealtime: A ver, yo de momento utilizo los dos. ProRealtime es mucho mas sencillo e intuitivo, además me he acostumbrado a mirar los gráficos con ProrealTime y creo que por esto visualmente lo encuentro más «amigable» ( no lo se, quizás todo sea cuestión de costumbres). Ahora bien, cuando ya no se trata sólo de mirar gráficos o de hacer un análisis estrictamente visual, allí yo prefiero Amibroker. Es un poco más complicado de utilizar pero lo encuentro mucho mas adecuado para diseñar sistemas de trading. (tanto en el acceso a los datos, backtest, optimizaciones, montecarlo, etc y ademas según el broker con el que trabajes puedes tomar los datos en tiempo real y enviar directamente las órdenes al mercado).
      Creo que aún no he encontrado una plataforma de trading perfecta, sólo que dependiendo de lo que busques creo que algunas tienen mejores características que otras.

      Un saludo,

      Responder
  2. Hola Duk2,
    1.- si quisiera poner el semáforo como una banda en el gráfico abajo sin necesidad de tener el indicador adx abierto, cómo lo puedo hacer?
    2.- como puedo poner una etiqueta en el indicador cuando haya cruces entre el ADX y el ADXR. Una etiqueta que diga en grande CRUCE.
    Estos son dos preguntas ejemplos porque me pueden ayudar para cosas que quiero hacer.
    Gracias
    Saludos
    Luis

    Responder
  3. Duk2, voy afinando en mi consulta. Puedes poner el ejemplo de una cinta ribon cuando el macd se cruce al alza por debajo de cero y la media ponderada 150 sesiones sea alcista?
    Un saludo
    Luis

    Responder
  4. Hola Duk2, quería hacerte una consulta pero no se si me voy a saber explicar, veremos, tengo amibroker y lo tengo con un plugin de investing, hasta aquí todo correcto, ahora quiero añadir otro indicador o mejor dicho otra fuente de datos de volumen que no es de investing y la tengo en un csv, esta es mi consulta soy relativamente nuevo en esto y no encuentro información entiendo porque no se como hacerlo, si me puedes indicar alguna fuente o como es posible hacerlo si es que es posible, gracias y buen trabajo.

    Responder

Deja un comentario

ESTRATEGIAS DE TRADING