Mostrando entradas con la etiqueta Amibroker. Mostrar todas las entradas
Mostrando entradas con la etiqueta Amibroker. Mostrar todas las entradas

domingo, 18 de julio de 2021

Quitar duplicados en un fichero con Amibroker

El algoritmo Amibroker que se incluye más abajo permite localizar filas duplicadas de un fichero pero por parejas. Está diseñado específicamente para quitar los duplicados en un fichero que contenga pares de cointegración pero también se puede aplicar a muchos otros usos que requieran localizar elementos duplicados de varias filas y eliminarlos automáticamente. Utiliza bucles anidados para conseguir la tarea de la forma más eficiente. Más detalles en el vídeo: 


sábado, 29 de mayo de 2021

Stop Loss en un Spread

Hay muchas formas de operar Spreads en Amibroker, pero todas ellas requieren que se cierre la posición si la pérdida conjunta supera un cierto umbral. Si no lo hiciéramos así el riesgo sería ilimitado. 

El código que comparto hoy modifica el Backstester (Custom BackTester) para sumar el beneficio de las dos patas del spread y cerrar la posición si excede el nivel de stop loss. 

También incluye estadísticas adicionales por parejas de operaciones, como el Profit Factor, ganancias y pérdidas promedio, máxima pérdida, etc.



viernes, 19 de marzo de 2021

Opciones con Amibroker

Hoy vemos cómo calcular el precio de una Call o una Put y representarlo en la pantalla de Amibroker. El modelo se ajusta variando la volatilidad implícita para que el precio teórico coincida con el precio de mercado.


El siguiente vídeo explica cómo se usa el código:



miércoles, 27 de enero de 2021

El sistema 3/12 SAR de Lebeau & Lucas

Hoy muestro el código del sistema de Chuck Lebeau & Lucas del libro "Computer Analysis of the Futures Markets", todo un clásico que enseña a diseñar sistemas de trading. Las reglas y la lógica del sistema están explicadas en el informe de Onda4 del 26 de enero. El sistema parece ir bien en el último año, eso sí, con unos parámetros distintos del diseño original:


miércoles, 2 de septiembre de 2020

El sistema CONVERGENCE

El sistema CONVERGENCE está basado en el indicador del mismo nombre que aparece en el libro de Lars Kestner (el del ratio K). Este indicador se construye comparando un total de 20 parejas de medias donde la media lenta tiene un periodo 4 veces mayor que la rápida. Son estas:

  • MA(1) con MA(4)
  • MA(2) con MA(8)
  • MA(3) con MA(12)
  • ....
  • MA(19) con MA(76)
  • MA(20) con MA(80)

Si la media rápida está por encima de la lenta sumamos 5 puntos. Y como son 20 parejas al final tenemos un indicador que va de 0 a 100 y que nos permite comprar cuando supere un cierto nivel. Debajo vemos el indicador:


Si compramos cuando el indicador supere el nivel 80 y nos salimos con un cruce de medias (que tendrá que estar alcista en el momento de la compra) pues ya tenemos un sistema de trading. En realidad uno que tiene una curva de capital tan estupenda como la siguiente:


sábado, 27 de junio de 2020

El indicador TREND

El indicador TREND es especialmente útil para indicar la tendencia general de los índices teniendo en cuenta su sesgo alcista. Lleva décadas dando señales muy acertadas y en estos momentos, y a pesar del fuerte rebote, sigue bajista ya que el SP500 tiene su media de referencia cayendo. La media de referencia es la menor de las medias de 100 y 200 sesiones. Más detalles en el libro "Trading con Sistemas Automáticos".


jueves, 4 de junio de 2020

EL SISTEMA "AGORERO"

El sistema "Agorero" opera el SP500 abriendo posiciones cortas cuando hay las siguientes señales bajistas:
  • Baja volatilidad
  • Nuevos mínimos del NYSE marcando peligro
  • Divergencias bajistas con la línea ascenso-descenso
En las simulación alcanza un 94% de aciertos aunque se trata de resultados optimizados. Este sistema se presentó por primera vez en el informe del 4 de noviembre de 2017 que se anexa a continuación:


Si está interesado en sistemas de trading le recomendamos la suscripción al servicio de Informes Onda4 donde se publicó este sistema (entre muchos). A continuación mostramos la curva de capital resultante de la optimización y que aparece en el informe:

















jueves, 14 de mayo de 2020

El indicador Landry's Light

Hoy traigo un nuevo indicador muy interesante. Se presentó en el informe de Onda4 del martes 12 de mayo, así como su interpretación. Se llama Landry’s Light que se podría traducir como Luz de Landry. Dave Landry llama “luz” a los momentos en los que las barras tienen su mínimo por encima de una media (caso alcista) o su máximo por debajo de una media en el caso bajista. 
Es innegable que si una barra tiene “luz” alcista es porque evidentemente está subiendo y de forma tendencial, ya que se ha despegado de la media completamente. Esta es una buena manera de confirmar tendencias. Una tendencia solo sería válida si hay “luz”. Y sino pues es un periodo lateral.
Pues bien, Landy ha diseñado un indicador que se aplica a los índices y que cuenta el número de semanas que tienen luz alcista (en verde) o luz bajista (en rojo). Lo muestro debajo. Está aplicado al gráfico semanal del SP500, futuro mini continuo. Se puede ver que en los mercados bajistas hubo triángulos rojos que nos dicen que el precio permaneció por debajo de la media.


La media es de 50 sesiones, el valor que Landry considera adecuado. El mensaje realmente importante que lanza este indicador es que una vez que hay “luz bajista” puede durar mucho, así que uno no debería ignorar los pequeños triángulos rojos pues pueden ser el comienzo de grandes triángulos como los del 2000 y 2007. Estos son auténticos mercados bajistas en los que los índices se mantuvieron por debajo de sus medias durante muchas semanas.
Ahora mismo llevamos 10 semanas de “luz bajista”. En el histórico mostrado no hay ningún triangulo mayor de 11 semanas que no haya terminado siendo al menos de 56!!!

domingo, 22 de marzo de 2020

El sistema "Pinchos del VIX"

Hoy veremos un sistema con unas estadísticas excelentes. Compra el futuro mini del SP500 cuando se produce un techo en el VIX en forma de "pincho", tal y como se puede ver en la imagen siguiente:


El sistema es relevante con fecha 20 de marzo pues acaba de marcar una compra. La fiabilidad es del 80% pero no deja de ser un sistema de trading, basado en la retrospectiva, así que no se recomienda en ningún caso para la operativa con derivados. Utilice el código de debajo para sus pruebas.

jueves, 20 de febrero de 2020

ESTACIONALIDAD en Amibroker

Es verdad que el precio del Crudo WTI sube de primavera a verano y luego cae en otoño?

Contestar a esta pregunta con Amibroker es tan sencillo como sumar los precios de la misma fecha exacta de los últimos 15 años y mostrarlo gráficamente. También podemos repetirlo para los últimos 5 años y comparar, para ver si el patrón estacional aún se mantiene.

Debajo vemos un ejemplo precisamente con el Crudo WTI. Su estacionalidad es clara. Tiende a subir hasta el verano y luego corrige. La tendencia más evidente es la caída del último trimestre del año. Esto se aprecia al ver que las líneas van muy juntas, revelando así un patrón bien claro.

La línea negra vertical es la misma fecha de hoy (20 de febrero) pero del año pasado. Esto nos permite ver el patrón estacional que se puede esperar en los próximos meses. Situando el marcador vertical en verano vemos que un contrato de Crudo gana 6000 dólares desde finales de febrero hasta el 2 de julio (media de 15 años). Y en los últimos 5 años el promedio de ganancias sería de 4000 dólares.


martes, 18 de febrero de 2020

Los colores en Amibroker

Hoy vamos a ver un código que nos ahorrará mucho tiempo cuando estamos programando y no sabemos cómo se llama cada color. Podemos tenerlo cargado en una pestaña y probar cómo se ven los precios (botón derecho "parameters...") y cuál es el nombre que tiene cada color. El aspecto es el siguiente:



viernes, 31 de enero de 2020

Empezamos la operativa con el sistema TENAZ

En el documento que sigue se detallan las características básicas del sistema TENAZ y de la rutina operativa que vamos a seguir desde este momento. Click en la imagen para más información.



viernes, 3 de enero de 2020

CALENDAR SPREADS CON FUTUROS (AMIBROKER)

Hoy presentamos un código que calcula y dibuja los spread de calendario entre futuros. Un spread de calendario es una posición contraria entre dos vencimientos de futuros del mismo mercado, por ejemplo el Crudo de Febrero comprado y el Crudo de Marzo vendido en corto. Estas posiciones requieren muy pocas garantías por estar cubiertas, y son muy populares entre algunos operadores.

El código es genérico, así que puede utilizarse en varios mercados (Crudo, Oro, Soja, Magro, Maíz, Bonos, Eurodólar, Gas Natural y hasta futuros del VIX):


La programación tiene en cuenta los códigos de los vencimientos de futuros (F para enero, G para febrero, etc) de forma automática, así que facilita mucho la construcción de spreads.

Asimismo incluye una lógica de reversión a la media con sistema de trading por si se desea operar siguiendo esta estrategia. La forma de sustituir esta estrategia por otra (p.e. tendencial) es cambiando las señales de entrada y salida que se hacen en base al precio diferencia o spread. Los cambios son sencillos.




sábado, 28 de diciembre de 2019

El sistema de Connors RSI2

Vamos a ver un sistema de trading clásico cuya lógica es bien simple. Se trata del sistema de Connors que utiliza un RSI de 2 sesiones para las entradas y una media de corto plazo para las salidas. Las reglas son las siguientes:

  • Si el cierre está por encima de una media de 200 entonces estamos alcistas
  • Si estamos alcistas y el RSI(2) cae por debajo de 30 compramos
  • Si estamos comprados y el cierre supera una media de 10 sesiones cerramos los largos
  • El sistema es solo largo y hay un stop loss de 6 desviaciones estándar

Debajo vemos que esta lógica funciona muy bien en los índices, que por su naturaleza tienen un comportamiento de reversión a la media (comprar cuando caen). Debajo vemos el Nasdaq100 pero en general este sistema va bien en cualquier índice:



Cuando lo probamos en el futuro mini del SP500 vemos que funciona muy bien. Debajo se puede ver la curva de capital en el SP500 desde el año 2000 y descontando $100 por operación en concepto de comisiones y deslizamiento. Los parámetros que vimos en la descripción del sistema son optimizables. En esta curva de capital del SP500 los parámetros utilizados han sido: 250 para la media de largo plazo, 26 para el umbral de compra y 8 para la media de salir de los largos.

El sistema ha generado unas 300 operaciones en el periodo con un 78% de aciertos. La relación entre ganancia y drawdown es superior a 8 y tiene unos ratios muy buenos como un Sharpe de 1.40. Podríamos decir que se trata de un buen sistema de trading.


viernes, 6 de diciembre de 2019

ALGORITMO BÁSICO DE AUTOTRADING CON AMIBROKER

Supongamos que ya tenemos nuestro sistema listo para operarlo en real. El sistema genera operaciones largas y cortas y tiene en cuenta todos los detalles que queríamos incluir; esto es, no necesita lógica extra y todo lo que hace lo consideramos válido.

En ese caso podemos añadir un simple algoritmo de Autotrading con el IBController de forma que cada vez que haya una operación en el gráfico el IBcontroller la lanzará a nuestro broker Interactive Brokers:




martes, 5 de noviembre de 2019

SISTEMA DE BANDA PROHIBIDA CON AUTOTRADING Y MM

En las entradas anteriores de este blog hemos ido preparando el terreno para poder llegar a un sistema completo de trading que tenga un dimensionamiento basado en un objetivo de volatilidad y también tenga la posibilidad de ser ejecutado de forma completamente automática. Por fin estamos en condiciones de poder compartir un sistema COMPLETO de trading consistente en:

Lógica del sistema + Gestión de Capital + Algoritmo de ejecución con IBController. 

Es el sistema de Banda Prohibida. Un sistema de Banda Prohibida pone unas bandas alrededor del precio y solo opera cuando el precio está por fuera. Tiene características de reversión a la media y se llama así (banda prohibida) porque todas las operaciones se hacen por fuera de estas bandas, tanto las entradas como las salidas. Veamos un ejemplo:


Hay una banda rápida (azul) que consiste en una media de 20 sesiones y 2 ATRs por encima y por debajo. Hay una banda lenta (roja) que consiste en una media de 100 sesiones y 2 ATRs por encima y por debajo.  En esta imagen se puede ver cómo la tendencia alcista la define el hecho de que la banda rápida esté por encima de la lenta. Si estuviera por debajo asumiríamos que la tendencia es bajista.
Una vez alcistas el sistema compra cuando el cierre termina por debajo de la banda rápida. Y cierra los largos cuando supere la banda rápida.

A continuación vemos los resultados de aplicarlo a una cartera de materias primas con los siguientes tickers: AD, BP, GF, HE, JY, NQ, RTY, SM, TY, YM, QHG y NG. Como vemos el sistema parece ir bien con divisas, carnes, algunos granos (harina de soja), metales (cobre) y energías (gas natural).




El código que se muestra más abajo incluye una GESTIÓN DE CAPITAL de forma que las posiciones se dimensionan para una volatilidad anualizada en función del capital disponible (modelo de Carver explicado en entradas anteriores). Pero este capital "disponible" se reduce en un 10% por cada 5% de drawdown real. Es la estrategia de gestión de capital que utilizaban las tortugas de Dennis.

Al final del código se incluye LA PARTE DE AUTOTRADING que consiste en hacer la operativa a mercado en función de las señales del sistema. No obstante está mejorado y tras abrir una posición sitúa inmediatamente el Stop Loss con una orden Bracket. Asimismo comprueba que no se supere el máximo de 4 posiciones simultáneas abiertas. Recuerde que la ejecución automática tiene sus riesgo y "automático" no significa "desatendido".

El <include> con los multiplicadores de los futuros se encuentra en entradas anteriores de este blog:
https://onda4com.blogspot.com/2018/09/los-multiplicadores-de-los-futuros.html


viernes, 20 de septiembre de 2019

Indicador de Jeff Augen

En "The volatility edge in options trading" Jeff Augen propone un indicador que consiste en pintar en el número de desviaciones estándar que se ha movido un mercado de un cierre al siguiente. Este indicador toma la forma de un histograma debajo del precio y se utiliza como una alerta para abrir posiciones en opciones cuando el mercado en cuestión supera las 2 desviaciones estándar.

Debajo vemos un ejemplo con el Crudo que recientemente ha hecho un movimiento diario de 6.46 desviaciones estándar y cómo esto sería oportunidad para abrir una posición en opciones asumiendo reversión a la media:



miércoles, 24 de abril de 2019

Vender en la primera apertura rentable

Muchos de los sistemas de Larry Williams venden en la primera apertura rentable. Esto es, una vez establecido el precio de entrada se espera a que haya una apertura con ganancias, aunque sea de 1 dólar, y se vende.

Esto es muy sencillo de implementar en muchos lenguajes de programación, p.e. Tradestation, pero no es tan sencillo en Amibroker porque este software está basado en arrays y no en secuencia ordenada de barras, así que el array BuyPrice se puede ver modificado si entran nuevas compras cuando ya estabas comprado. Con una imagen se entenderá mejor:


El precio de compra es 921.50 pero al llegar una compra mientras estábamos comprados el precio cambia a 871 (el cierre de la segunda barra naranja), así que Amibroker piensa que salirse a 905.50 es la primera apertura con ganancias cuando en realidad no lo es, deberíamos salirnos por encima de 921.50.
Esto ocurre porque la forma más sencilla de implementar la salida FPO (First Profitable Opening) es esta:

Sell = Open > ValueWhen(Buy,BuyPrice);
SellPrice = Open;

Pero no es del todo correcta por el problema mencionado. El código que proponemos hoy soluciona el problema sustituyendo lo anterior por un bucle que bloquea el BUYPRICE para que no se mueva hasta que la operación se cierre. También aprovecha el bucle para implementar el Stop Loss. La salida corregida se puede ver a continuación:



miércoles, 27 de marzo de 2019

Indicador de movimientos significativos

El mercado no suele moverse más de una desviación estándar la mayor parte del tiempo. Pero a veces se sacude con fuerza y se mueve incluso 2 desviaciones estándar o más. Al revisar los días en los que el mercado se ha movido más de 2 desviaciones vemos que suelen conducir a tendencias; es decir, son días muy significativos que conviene vigilar.

No hay muchos días en los que el mercado se mueva tanto. Estamos a finales de marzo y en todo 2019 solo hay una barra significativa de 2.45 desviaciones estándar. En el gráfico se puede ver que a primeros de diciembre hubo una barra roja que condujo a una caída larga. A finales del mismo mes hubo una barra muy grande (3.27 desv) que condujo a una subida que en el momento mostrado aún se mantiene.



viernes, 1 de marzo de 2019

El sistema HVNR4

Este sistema se mostró en el webinario del pasado 12 de febrero. Sus reglas son las siguientes:

Setup: La volatilidad histórica (HV, como cociente) cae por debajo de 0.5 o bien tenemos una barra con el menor rango de los últimos 4 días (NR4)
Compra: Si ayer hubo setup entonces compramos hoy con stop en el precio medio de ayer más un múltiplo del rango
Salida: Tras sobrecompra en el oscilador RSI.


ENTRADAS POPULARES