Conceptos básicos para hacer trading algorítmico
SANTIAGO VÁZQUEZ
Conceptos bĂĄsicos para hacer Trading AlgorĂtmico Aprende paso a paso como hacer un sistema de Trading
Para Blanquita y Elías,
Sin ellos no hubiera tenido la motivación para escribir este libro
6
Conceptos básicos para hacer Tráding Algorítmico
ÍNDICE Prólogo......................................................................................9 1. Introducción................................................................................15
2. Un poquito de cultura..............................................................21 La Bolsa ..........................................................................................21 Mercado de Futuros .....................................................................23 Mercado de Divisas (Forex) .......................................................29 El Apalancamiento ..................................................................... 34 Conclusiones................................................................................. 37
3. Fundmentos Teóricos...............................................................39 ¿Qué es un Sistema de Trading?.................................................39 Tipos de Sistemas de Trading.................................................... 41 Gestión de Capital........................................................................ 42 Conclusiones................................................................................. 44
4. Diseñando un sistema de Trading.......................................45 Software para diseño de Sistemas de Trading.........................45 Herramientas de ayuda para la toma de decisiones................47 Los Indicadores Técnicos............................................................48 Ratios de Evaluación de un Sistema.........................................49 Optimización Walk Forward..................................................... 52 Análisis de Monte Carlo..............................................................53 Conclusiones y pasos a seguir en el diseño de un Sistema de Trading......................................................................................56
7
Conceptos básicos para hacer Tráding Algorítmico
5. Aplicando lo aprendido....................................................61 La idea..................................................................................62 Las reglas..............................................................................63 El código...............................................................................64 La optimización....................................................................67 El análisis de los resultados.................................................72 El Análisis de Monte Carlo..................................................73 Conclusiones.........................................................................77 6. Consideraciones finales...................................................79 7. Agradecimientos..............................................................81 8 Bibliografía.......................................................................85
8
PRÓLOGO
He estado haciendo trading desde hace bastante tiempo (diría que entorno a diez años), pero eso sí, haciendo honor a la verdad mi operativa no ha sido productiva hasta estos últimos cinco años. Es cuando empecé a estudiar de una manera más seria, realizando algún que otro curso y estudiando todos los libros y artículos que caían en mis manos, dándome cuenta de lo perdido que había estado tanto tiempo. Después de haber probado distintos tipos de operativa, he encontrado la sistemática con la que me siento más cómodo: los Sistemas Automáticos de Trading (no robots); es decir, tratar de dejar las emociones a un lado siguiendo las normas automatizadas de un conjunto de sistemas, las cuales han sido testeadas en un histórico de datos de mercado; y una vez que se produce una activación, la traslado de manera manual al broker con el que trabajo.
9
Conceptos básicos para hacer Tráding Algorítmico
Opero en Mercados de Futuros sobre Índices, Materias Primas, Divisa y Bonos, diseñando sistemas independientes unos de otros y montando carteras con estos sistemas que se ajustan a mi perfil inversor. La idea que tengo al escribir en este blog consiste en compartir con vosotros las cosas que me resulten interesantes de este mundillo, creando un foro de debate en torno a un tipo de operativa que echo en falta en las publicaciones ofertadas. De manera que espero que esta nueva andadura sea el comienzo de una larga relación.... Con esta guía me gustaría hablaros de cómo entiendo el trading, introduciendo ideas muy generales, que, pese a que supongo que todos conocéis, creo que se deben olvidar. De esta forma también veréis la evolución que me llevó a utilizar el Trading Cuantitativo como mi forma de operar. ¡Así que vamos allá...! Todavía recuerdo mis primeros coqueteos en el mundo de la bolsa mucho tiempo atrás, cuando creía que por comprar un periódico salmón o suscribirme a una revista especializada me otorgaba cierta ventaja en las inversiones que pudiera hacer. Digo que pudiera hacer porque realmente no disponía capital para poder llevarlas a cabo. De todas formas, eso no era lo importante, ya que lo realmente importante era lucirse en cualquier conversación de bar donde surgiera el tema bursátil: Telefónica parece que va a subir, Terra parece que va a ser un valor a considerar, Banesto parece que no va del todo bien… Por lo menos, no me afectaban las malas o buenas decisiones que pudiera tomar, pues no tenía ni dinero para poder invertir, ni tenía los conocimientos más elementales para poder comprar una simple acción. No era trivial el abrirse una cuenta en un
10
Prólogo
broker; de hacer alguna inversión, esta se hacía a través de los bancos, los cuales cobraban unas comisiones fuera del alcance de inversores particulares; y no se tenían datos en tiempo real o, cuanto menos, en un tiempo lo suficientemente actualizado como para no llegar tarde a la decisión que se hubiera tomado. En definitiva, no era tarea fácil para los inversores particulares meternos de lleno en el mundo de la especulación financiera, viéndonos abocados a ser meros espectadores en las manos de las grandes corporaciones que manejan el mercado. Después llegó la era de internet, donde la información era más asequible para todo el mundo; pero sin embargo la información no era fácil de encontrarse, lo que hacía aún más peligroso tratar de tomar partido en este mundo. Es entonces cuando empezaron mis primeras incursiones en el mundo de los derivados, comprando warrants. En ningún caso entraba en mercado teniendo una estrategia a seguir, saber cuánto arriesgaba cada vez que lo hacía, e incluso sin tener del todo claro con qué capital contaba para mi operativa. Me valía de mi intuición, de lo que leía en algún medio, de lo que algún amigo me decía que había hecho…; creyendo que únicamente con el conocimiento teórico del producto que operaba tenía conocimiento suficiente como para tener éxito en las inversiones que pudiera realizar. Por supuesto en todos los casos las decisiones que tomé no me reportaron ninguna ganancia en su conjunto. Quizá alguna de ellas fue extraordinariamente exitosa, pero agrupando todas ellas los resultados siempre fueron catastróficos; e incluso llegué a realizar alguna operación que rondaba la ludopatía tratando de recuperar el capital perdido en las operaciones anteriores.
11
Conceptos básicos para hacer Tráding Algorítmico
De manera que, la mejor decisión que pude tomar entonces fue la de dejar este mundillo, convenciéndome de que el mundo de la inversión financiera no estaba hecho para mí. Pasado el tiempo, ya con más madurez, cuando la oferta formativa de trading se había popularizado comencé a tomar de nuevo contacto con todo esto. Pero eso sí, esta vez empleando tiempo en formación. De esta forma, estudié las principales publicaciones de Análisis Técnico, seguí algunos cursos de operativa discrecional de futuros, hasta darme cuenta de que el factor emocional es el que rige todas las decisiones relacionadas con el dinero. Así es como encontré el modelo cuantitativo como la mejor opción para aproximarse a los mercados financieros y sacar rendimiento a la operativa bursátil. Básicamente sobre lo que versan estas notas es sobre cómo aprovecharse de los movimientos de los mercados financieros. Es decir, como decía Javier Alfayate en el prólogo de su libro “Enséñame la pasta” aludiendo a Ed Seykota, sincronizarse con las mareas (entendiendo las mareas como los movimientos de los mercados financieros). De manera que cuando venga una ola la encararemos con la tabla y surfearemos hasta que esta nos empuje, asumiendo que hay que salirse cuando esta deja de tener fuerza porque si no nos iremos al agua; y cuando no haya olas esperemos tranquilamente a que estas vengan. Ahora bien, aunque todo lo que te cuente en estos apuntes o te cuenten en cualquier otro foro que trate este tema parezca fácil, no lo es en absoluto. Todo esto requiere un esfuerzo y estudio de alto nivel, porque si no se tiene garantizado el fracaso como trader. Hay que darse cuenta de que al entrar en el mercado se está en un juego en el cual uno gana y otro pierde, y los
12
Prólogo
que siempre suelen ganar (los smart traders o manos fuertes) son corporaciones que tienen en su equipo a los traders más inteligentes con quienes tendremos que competir. Así que el éxito estará en saber jugar bien nuestras cartas. La mejor manera de jugarlas bien es mediante el ESTUDIO, sin quitarle importancia a la experiencia; y con el conocimiento adquirido tratar de no enfrentarse a ellos, sino tratar de emular lo que ellos hacen (sincronizarse con las mareas). Por todo esto he escrito este documento (podría llamarse manual) en los términos que me hubiera gustado encontrar cuando empecé a hacer trading. Espero que su lectura te resulte útil y te ayude a formar parte de esta reducida comunidad de los que se conocen como traders algorítmicos. En este manual encontrarás: - En qué consiste el trading y los pilares en los cuales se fundamenta. - Una visión de conjunto de qué es la bolsa, los participantes que puedes encontrar en la operativa bursátil y los productos que puedes operar en ella. - Una explicación de qué es el mercado de futuros y el argot que se utiliza en torno a él. - Una explicación de qué es el mercado de divisas (Forex) y el argot que se utiliza en torno a él. - Qué es un sistema de trading y los distintos tipos que puedes encontrar.
13
Conceptos básicos para hacer Tráding Algorítmico
- Los fundamentos teóricos necesarios para la creación de un sistema de trading partiendo de cero. - La aplicación práctica de todo lo expuesto mediante la creación de un sistema de trading a partir de una idea. Todo explicado de la manera que me hubiera gustado tener cuando yo empecé a hacer trading. Por otro lado, no encontrarás: - El Santo Grial de la operativa bursátil. - Un Sistema de Trading con el que conseguirás la independencia financiera. - Un estudio detallado y pormenorizado de los mercados financieros. - Un manual de software de diseño de Sistemas de Trading. En definitiva, su lectura te servirá para que tomar contacto con la operativa automática (incluso la discrecional) en los mercados financieros no sea una tarea ardua; te servirá para despertarte la curiosidad de en qué consiste este área del conocimiento bursátil; y te hará más fácil la lectura de otras publicaciones más especializadas que te ayuden a llegar a ser un verdadero trader cuantitativo. Santiago Vázquez Málaga, diciembre de 2017
14
1 Introducción
El trading se compone de tres pilares básicos (las conocidas tres Ms del argot bursátil en la literatura anglosajona): - Estrategia del Trading (Method). - Gestión de capital (Money Managment). - Psicotranding (Mind). La Estrategia de Trading es la manera que usamos para tratar de predecir los movimientos del mercado. Los mercados pueden ser alcistas, bajistas o laterales. De manera que trataremos de pronosticar movimientos para que al posicionarnos seamos capaces de sacar un beneficio. Para ellos podemos utilizar dos campos dentro del conocimiento bursátil: Análisis técnico y análisis fundamental. En definitiva, con la estrategia se trata de pronosticar el cuándo y dónde invertir.
15
Conceptos básicos para hacer Tráding Algorítmico
Con el Análisis Fundamental tratamos de prever el comportamiento de los mercados en base a datos y variables fundamentales de las empresas, situaciones políticas de los países y condicionantes macroeconómicos existentes. Si los ratios fundamentales de las empresas las hacen interesantes nos posicionaremos. Esto hace que el Análisis Fundamental requiera de grandes conocimientos, no solo de economía, sino también de política pues una parte muy importante del desarrollo de la economía son los intereses que en cada circunstancia tengan los gobiernos. Esto hace que esta metodología sea más adecuada para expertos en esas materias. Por otro lado, se trata de una metodología para un medio-largo plazo, pues la bolsa, pese a tener una tendencia que el análisis fundamental nos ha pronosticado, tiene correcciones y el precio real puede que no refleje el potencial de una empresa o viceversa. El Análisis Técnico no es más que una interpretación estadístico-probabilística del comportamiento de las masas. No se fija en ninguna información externa salvo la de los datos con los que trabaja, que son el precio, volumen y tiempo. Esto hace que el Análisis Técnico esté más a la mano de la gente que no reúne las características requeridas para hacer Análisis Fundamental, sin que por ello sea menos efectiva; siendo esta la metodología que en la que me baso en la toma de decisiones para pronosticar los movimientos del mercado. El Análisis Técnico tratará de predecir el futuro en base al tratamiento estadístico y probabilístico del precio y el volumen a lo largo del tiempo. Si nos damos cuenta, el precio es la única realidad del valor de una acción (o producto negociado) y eso queda reflejado en la gráfica que representa el precio en el tiempo (es la única verdad). Entonces, junto al precio, volumen y tiempo se crean una serie de indicadores que nos ayudan a tomar decisiones.
16
1. Introducción
También el análisis Técnico, además de hacer el tratamiento de los datos desde un punto de vista estadístico y de cálculo de probabilidades, estudia las figuras que hacen los gráficos en el tiempo (de ahí a que una parte del Análisis Técnico se suela denominar Chartismo). De igual forma, el Análisis Técnico se puede utilizar con éxito tanto en el corto plazo como en el medio-largo plazo. La Gestión del Capital consiste en saber cuánto y cómo invertir nuestro capital para que el mercado no nos deje fuera, es decir nos quedemos sin dinero para aplicar nuestra operativa. De esta manera, sabiendo que estamos en juego de probabilidades, asumiremos las pérdidas cortándolas a tiempo y dejaremos correr las ganancias. Fijémonos, sin entrar en más detalle y haciendo una aproximación bastante simple en la que asumimos un movimiento aleatorio de los precios, en la siguiente situación. El mercado puede ser alcista, bajista o lateral. Obviando los periodos laterales, dando tiempo al mercado a salir del movimiento lateral, la probabilidad de adivinar el sentido del movimiento podría reducirse al 50%. En esta situación, planteemos la siguiente estrategia una vez hecho un pronóstico y habiendo entrado en el mercado: si nos equivocamos nos salimos cuando hemos perdido 1 € (sin pensar en nada más) y cuando adivinamos nos salimos cuando ganamos 2 € (sin pensar en nada más). Como la probabilidad era del 50% en ambos casos, con un número de entradas suficiente para que pudiera reflejarse al estadística del 50%, mi estrategia sería rentable. Bien es cierto que se trata de un ejemplo muy simple, pero da una idea de lo que la gestión del capital hace: Cuánto dinero estamos dispuestos a perder en cada opera-
17
Conceptos básicos para hacer Tráding Algorítmico
ción para que mi capital, con un sistema de trading que tenga un adecuado porcentaje de aciertos (esto lo hará el estudio), no se vea afectado y por supuesto nos dé rentabilidades interesantes. Por último, el Psicotrading, que cosiste en que no nos afecten las emociones en la toma de decisiones. Démonos cuenta de que se trata de encontrar un método al cual seamos absolutamente fieles, pues la gestión del capital está intrínsecamente ligada al mismo. Imaginémonos que en el ejemplo anterior no nos salimos al perder 1 € pensando que el mercado pudiera darse la vuelta; o que al tener dos fallos seguidos dejemos de seguir el sistema trazado, sin darle tiempo a que cumpla sus expectativas. En ambos casos, siempre daríamos pérdidas pese a haber hecho un buen análisis. Los individuos nos comportamos en cuestiones de dinero de maneras impredecibles, o no del todo, pues de eso trata el psicotrading (se recomienda el reportaje del poder del dinero que se puede bajar de YouTube: https://www.youtube.com/watch?v=mjL1c4FnEzw). Todas las personas estamos diseñadas bajo los sentimientos de codicia y miedo. Ambas sensaciones nos harán tomar decisiones no meditadas, las cuales nos harán creer que somos más inteligentes que el mercado, lo que nos hará dejar de seguir nuestro sistema de trading. La codicia hará que no nos salgamos de posiciones perdedoras al no asumir las pérdidas, creándonos la expectativa de que el mercado cambiará el sentido y nos hará ganar dinero. De igual forma, nos mantendrá en posiciones ganadoras en las que nuestro sistema nos indica que se cierren, pues querremos ganar más dinero aún.
18
1. Introducción
Por otro lado, el miedo hará que posiciones ganadoras se cierren antes de que nuestro sistema nos indique, al temer que se pueda perder la ganancia ya acumulada. También el miedo hará que en posiciones que se va perdiendo, sin que aún haya saltado el stop loss, nos salgamos para evitar pérdidas mayores. De manera que en torno a esos tres pilares versa todo esto. Ahora sí, hay que estudiar mucho, y poco a poco ir definiendo las preferencias que mejor se adapten a nuestro perfil psicológico, para que nos encontremos lo más cómodos en la operativa que sigamos. Dicho todo esto, dándole la mayor importancia al control de las emociones (psicotrading), sin menoscabo de las otras dos (sistema y gestión monetaria), se puede concluir con que el porqué de elegir una operativa cuantitativa como método de trading no es más que la de evitar que las emociones nos afecten a la hora de tomar decisiones, dejando todo en manos de los sistemas que en su día fueron creados y testados. Es decir, dejar de lado las emociones
19
20
2 Un poquito de cultura
¿Cuántas veces hemos oído o leído alguna noticia en la televisión, en la radio o en el periódico relativa a la bolsa y nos hemos visto perdidos? ¿Cuántas veces hemos estado discutiendo con un amigo alguna cuestión de bolsa y nos hemos quedado sin palabras para poder defender nuestra postura? Muchas veces, incluso personas iniciadas en el mundo del trading se ven perdidas en los conceptos más elementales del funcionamiento de los mercados financieros. Por ello, en este apartado trataremos de dar un poco de luz a cuestiones básicas de los mismos. La Bolsa El capital necesario para la creación de una sociedad se obtiene mediante las aportaciones del mismo por los socios (Recursos Propios) y utilizando alguna vía de financiación externa (Recursos Ajenos), es decir pidiendo dinero prestado.
21
Conceptos básicos para hacer Tráding Algorítmico
Entonces, al ser creada una sociedad se emiten una serie de títulos que representan el valor de dicha sociedad. Cada uno de esos títulos es lo que se conoce como una acción. Por lo tanto, una acción es una participación en el capital de una sociedad y los propietarios de cada una son propietarios de la sociedad que la ha emitido. De manera que, una acción es una parte alícuota del valor de la empresa. Además, los propietarios de cada acción tienen asignados unos derechos como propietarios de la compañía, de entre los que destaca la participación de los beneficios que obtuviera la empresa. La parte de los beneficios destinados a ser repartidos entre los accionistas es lo que se conoce como dividendos. La bolsa es el mercado en el que se compran y venden acciones, entre otros productos financieros tal como se verá más adelante. Ahora bien, habrá un Mercado Primario o Mercado de emisión, en el cual las empresas captan Recursos Propios mediante la emisión de acciones; y un Mercado Secundario o Mercado de negociación, en el que se compran y venden los títulos ya emitidos. Los traders a quienes va dirigido esta guía operamos en este mercado, adquiriendo títulos para después venderlos siguiendo las normas que nuestro sistema de trading nos indique. No hay que confundir estos conceptos con lo que se conoce como Primer Mercado en el que se negocian los títulos más importantes (por ejemplo, el IBEX 35); y Segundo Mercado, donde se negocian aquellos valores que no reúnen las características para pertenecer al Primer Mercado. Al encontrarse todo este sistema regulado, no se permite negociar directamente en el mercado a cualquier persona, necesitándose para poder operar de la intervención de aquellos
22
2. Un poquito de cultura
a los que sí se les está permitido (los miembros del mercado). Si se quisiera hacer una operación en bolsa (comprar o vender algún título), se daría la orden a un intermediario (Sociedad o Agencia de valores); si este es miembro del mercado la realizará directamente, en su defecto el intermediario tendría que dar dicha orden a otro que sí lo fuera. Las Agencias de valores son las que se conocen como Brokers. Actualmente la negociación apenas se hace de forma física (contratación por corros), si no que existe un sistema de interconexión electrónica; lo que ha hecho posible, con el desarrollo de la tecnología, que la operativa en bolsa sea más segura, fiable y accesible a inversores particulares de una manera fácil. Hoy en día no se requiere más que de un ordenador personal, de una conexión a internet y de una cuenta abierta con algún intermediario que nos ponga en contacto con el mercado que se vaya a operar para poder realizar una operación bursátil (en el caso que nos ocupa, la compra de acciones). Por otro lado, a parte del Mercado de Acciones, también existen otros Mercados donde se negocian otros productos financieros, como los títulos de renta fija, los productos derivados y las divisas (Forex). Mercado de Futuros Los productos derivados, como son los futuros, son aquellos activos financieros cuyo precio está ligado a la cotización de otro instrumento financiero, el cual se conoce como activo subyacente. El activo subyacente puede ser muy variado, siendo los más comunes las acciones, los índices, los bonos, las materias primas y las divisas.
23
Conceptos básicos para hacer Tráding Algorítmico
Ahora bien, lo que realmente caracteriza a los productos derivados es cómo y cuándo se lleva a cabo el intercambio del activo por su precio. A diferencia de las operaciones de contado (como cuando compramos en el supermercado, donde se adquiere un cartón de leche y se paga su precio en el mismo momento) en las que el intercambio del producto por su precio se realiza en el acto, en un instrumento derivado la negociación se lleva a cabo pactando hoy los términos en los que se realizará la transacción, pero esta se hace en una fecha futura. Para entenderlo de una manera más clara véase este ejemplo. Una empresa panificadora compra este año toda la producción del año que viene a un agricultor productor de trigo. De manera que han llegado a un acuerdo en el que el año que viene, cuando se recoja la cosecha de trigo, esta se le entregará a la panificadora al precio pactado en dicho acuerdo. Con esto, ambas partes tienen controlados algunos de los riesgos con los que pudieran encontrarse hasta la fecha de entrega. La panificadora se garantiza un precio de compra, por lo que puede tener más contraladas sus cuentas eliminando el riesgo de subida de precios. Por otro lado, el agricultor garantiza un precio de venta que, al igual que el comprador, le permite tener conocimiento de los ingresos del año que viene, eliminando el riesgo de una mala cosecha por cualquier causa meteorológica o de otra índole. Para que se garantice el buen fin de las condiciones pactadas en estos contratos, los Mercados de Futuros deben estar organizados de alguna manera, pues no es fácil encontrar a alguien que tenga la necesidad de hacer esta transacción, así como que las condiciones pactadas se ajusten a las necesidades de ambas partes. De igual modo, también se corre el riesgo de que alguna de las dos partes incumpliera las condiciones pactadas.
24
2. Un poquito de cultura
Es por ello por lo que se crean Mercados de Futuros organizados, los cuales cuentan con una Cámara de Compensación. Esta se interpone entre las dos partes contratantes garantizando que la operación se lleve a cabo de manera correcta al subrogarse a las obligaciones contractuales de comprador y vendedor, ejerciendo una función de contrapartida a efectos de riesgo de incumplimiento. Para ello, la Cámara de Compensación exigirá un importe a cada interviniente en el mercado de manera individual (depósito de garantía), el cual será cancelado al cerrar la posición. Entonces, se pueden definir los Futuros Financieros como aquellos contratos a plazo que poseen por objeto acciones, bonos, índices u otros instrumentos de naturaleza financiera; que además tengan normalizados sus importes nominales, objeto y fecha de vencimiento; y que se negocien y transmitan en un mercado organizado. Los productos derivados, al igual que otros productos financieros negociables, se pueden comprar y vender en el Mercado Secundario sin esperar a su vencimiento. Por lo tanto, en el mercado secundario podremos comprar o vender los contratos de aquellos futuros que estén disponibles. Es aquí donde nosotros, los traders, tomamos protagonismo, pues es en el mercado secundario donde se negociarán los contratos sobre los que versa el presente documento. Una particularidad que tienen los mercados de derivados es la posibilidad de vender el subyacente antes de haberlo comprado. Esto es lo que se conoce en el argot como ponerse corto, en contraposición a lo que se suele estar habituado de comprar para luego vender (en el argot ponerse largo). Aunque no parezca muy obvio el acto de vender antes de
25
Conceptos básicos para hacer Tráding Algorítmico
comprar, si nos fijamos bien, se trata de una práctica en la que hemos participado, quizás sin darnos cuenta, en numerosas ocasiones. Por ejemplo, cuando vamos a unos grandes almacenes y queremos comprar un electrodoméstico el cual hemos visto en el expositor, lo pagamos para recibirlo en nuestro domicilio. Pues bien, quien nos lo está vendiendo lo ha hecho sin tener el producto que nos va a entregar (nosotros lo hemos elegido del expositor o de un catálogo). Una vez que se lo hemos pagado, lo pide al fabricante para poder entregárnoslo. Básicamente de eso se trata lo que hacemos al ponernos cortos en una posición. Vendemos primero para luego comprar. La diferencia de la transacción es el resultado que obtenemos de la operación. Si vendemos a un precio y luego el precio al compramos más tarde es menor, la operación terminará en ganancias. Pero si al final tenemos que comprar a un mayor precio, la operación terminará en pérdidas. Otros aspectos a considerar en los contratos de futuros que no deberían obviarse, sobre todo en operativas cuantitativas, son los distintos vencimientos que cada contrato tiene (roll over) y el valor de cada punto de su cotización (multiplicador). Recapitulando acerca de la definición de un contrato de futuro, los elementos importantes que lo componen son los siguientes: Activo subyacente: Es el activo sobre el que se basa. El contrato negociará una cantidad determinada de dicho activo. Por ejemplo, un contrato futuro sobre acciones negocia 100 acciones; el contrato sobre el petróleo negocia 1.000 barriles. Cotización del contrato futuro: Este es el precio al cual se ha producido la última transacción del contrato (precio al que se ejecutó la última orden), siendo el que suele verse en las gráficas. Por ejemplo, el contrato de petróleo cotiza a 57,50 USD/barril, lo
26
2. Un poquito de cultura
que quiere decir que alguien lo habrá vendido a ese precio, por lo que hay alguien que lo compró (se produjo la transacción). En relación con el precio de cotización conviene explicar el concepto de horquilla (spread). Cuando lanzamos al mercado una orden de compra o de venta de un contrato de futuro (o de cualquier otro activo financiero), esta se ejecutará a los llamados precios Ask o Bid. La diferencia entre estos precios es lo que se conoce como horquilla. Cuando se quiere comprar un contrato de futuro nos fijaremos en el precio Ask, el cual será el precio al que el vendedor nos lo ofrece (el que el vendedor quiere recibir por el activo, es decir el precio de demanda); por el contrario, el precio Bid será el que ofrezcamos al mercado (el precio que el comprador nos pagará por el mismo, es decir el precio de oferta). Los mercados con mucha liquidez tienen horquillas muy estrechas, pues siempre hay alguien que esté dispuesto a vender o a comprar lo demandado u ofertado. Por tanto, la horquilla será muy amplia en el caso de mercados poco líquidos, pues no habrá precios disponibles para casar cada orden de compra o de venta. Valor monetario de la posición (valor nominal): Es valor real de la posición (del futuro). En el ejemplo del futuro de petróleo, si se comprara un contrato se estarían negociando 57.500 USD (1.000 barriles x 57,50 USD/barril). Al no tratarse de un mercado de contado (como el de acciones), no se tendrá que pagar esta cantidad, si no únicamente el depósito de garantía que nos exige el mercado donde se negocia. Depósito de garantía: Cada mercado exige una cantidad en concepto de garantía para asegurar que la operación se realice de manera correcta. Pese a que cada contrato tiene su correspondiente garantía, esta puede estimarse en un 5% del valor monetario del contrato, aunque lo más adecuado es consultarlo directamente al emisor del contrato para saber su
27
Conceptos básicos para hacer Tráding Algorítmico
valor exacto. Por ejemplo, un contrato futuro miniSP tiene un valor nominal de 137.000 USD, siendo la garantía de 6.875 USD (ya hemos dicho que se debe consultar su cuantía exacta). Comisión: Es el coste que el bróker cobra por llevar a cabo la operación. Fecha de vencimiento: Fecha en la que el activo subyacente debe ser entregado y lógicamente la entrega del precio pactado. Cada contrato futuro tiene su propia fecha de vencimiento, la cual nunca suele ser mayor a tres meses. Sistema de liquidación: Una vez que se llega a la fecha de vencimiento, la liquidación del contrato puede hacerse por entrega física del activo subyacente (es la manera en que se hace cuando realmente tienes interés en la adquisición del activo subyacente); o realizando una liquidación por diferencias (esta es la usada por nosotros, los especuladores, quienes no tenemos ningún interés por adquirir el activo subyacente del futuro negociado). De manera que, como los contratos de futuro tienen un vencimiento, hay que tener en cuenta que cuando se llega a la fecha de vencimiento debemos cerrar la posición y en el caso de querer seguir con esa operación abrirla de nuevo en el siguiente contrato vigente. Esto es lo que se conoce como roll over. Por otro lado, en función de las características de cada contrato de futuro, el valor monetario de cada punto de su cotización es lo que se conoce como multiplicador. Es decir, el valor de lo que se mueve el valor monetario de la posición al moverse un punto la cotización. Su valor dependerá en cómo se defina la negociación del contrato. Si el precio del subyacente, como en el ejemplo del petróleo es en USD/barril y el contrato de futuro negocia
28
2. Un poquito de cultura
1.000 barriles por contrato, el multiplicador será 1.000. En el caso de las acciones, si el precio de cotización de la acción es USD/acción y el contrato negocia 100 acciones, el valor del multiplicador será 100. Mercado de Divisas (Forex) En el Mercado de Divisas, traducción del inglés de Foreign Exchange (FOREX), se negocia dinero. Dado que para comprar una divisa tenemos que usar la divisa con la que se vaya a pagar la otra divisa que se compra (o lo que es lo mismo, entregar la divisa comprada a cambio de la divisa con la que se paga), este mercado tiene la particularidad de que la transacción involucra a un par de divisas. La nomenclatura que se utiliza es divisa 1/divisa 2. La divisa 1 (la que se nombra primero) se denomina divisa base, mientras que la divisa 2 (la que se nombra en segundo lugar) se la conoce como divisa de cotización. De manera que la divisa de cotización nos indica lo que vale con respecto a una unidad de la divisa base (por ejemplo, que el par euro/dólar cotiza a 1,17938 quiere decir que 1 euro equivale a 1,17938 dólares). Al comprar este par lo que estamos es comprando un euros y al mismo tiempo vendiendo 1,17938 dólares. A diferencia de otros mercados financieros, no existe una ubicación física donde se pueda hacer este tipo de operaciones, si no que se opera a través de una red electrónica de bancos, sociedades y personas, todas interconectadas entre si. Esto hace que se puedan hacer transacciones las 24 horas del día. En el Mercado de Divisas se puede comprar o vender cualquier tipo de divisa en función de la necesidad de quien realiza la transacción, pero los pares que más se negocian son los
29
Conceptos básicos para hacer Tráding Algorítmico
conocidos como Majors (el 80% de las transacciones). Los majors tienen al dólar como una de las divisas que forma el par, al ser la divisa más negociada del mundo. Son los siguientes: EUR/USD (Euro/Dólar Americano) USD/JPY (Dólar Americano/Yen Japonés) GBP/USD (Libra británica/Dólar Americano) USD/CHF (Dólar Americano/Franco Suizo) USD/CAD (Dólar Americano/Dólar Canadiense) AUD/USD (Dólar Australiano/Dólar Americano) NZD/USD (Dólar Neozelandés/Dólar Americano) Por otro lado, los pares de divisa que no contienen al dólar americano, se las conoce como divisas cruzadas (Crosses). De manera que, cada divisa tiene su correspondiente par cruzado. Dentro de las divisas cruzadas se encuentran las que se conocen como Minors, que son las que dentro de los pares cruzados tienen mayor volumen de negociación (concretamente los cruces del Euro, Yen y Libra). Los más importantes son los siguientes: EUR/GBP (Euro/Libra británica) EUR/CHF (Euro/Franco Suizo) EUR/CAD (Euro/Dólar Canadiense) EUR/AUD (Euro/Dólar Australiano) EUR/NZD (Euro/Dólar Neozelandés) EUR/JPY (Euro/Yen Japonés) GBP/JPY (Libra británica/Yen Japonés) CHF/JPY (Franco Suizo/Yen Japonés) CAD/JPY (Dólar Canadiense/Yen Japonés) AUD/JPY (Dólar Australiano/Yen Japonés) NZD/JPY (Dólar Neozelandés/Yen Japonés) GBP/CHF (Libra británica/Franco Suizo) GBP/AUD (Libra británica/ Dólar Australiano)
30
2. Un poquito de cultura
GBP/CAD (Libra británica/ Dólar Canadiense) Por último, existe otra clasificación de pares de divisa conocida como divisas exóticas (Exotic pairs). Son aquellos pares compuestos por una divisa principal y otra de una economía emergente o fuerte. Dado a que se trata de pares con menores volúmenes de negociación, los costes para operarlos suelen ser superiores debido a la falta de liquidez de dichos mercados. Los más representativos son los siguientes: EUR/TRY (Euro/Lira Turca) USD/SEK (Dólar Americano/Corona Sueca) USD/NOK (Dólar Americano/Corona Noruega) USD/DKK (Dólar Americano/Corona Danesa) USD/ZAR (Dólar Americano/Rand Sudafricano) USD/HKD (Dólar Americano/Dólar de Hong Kong) USD/SGD (Dólar Americano/Dólar de Singapur) Otro aspecto importante a tener en cuenta en la operativa de divisas es el concepto de pip. Un pip es el mínimo cambio posible en el valor de un par de divisas. En la mayoría de las divisas el pip está en el cuarto decimal (salvo en el USD/JPY en el que está en el segundo decimal). Por ejemplo, el EUR/USD solo puede variar su valor por saltos en el cuarto decimal, es decir si está cotizando a 1,1731 y pasa a 1,1732 se habrá movido 1 pip. Algunos brokers dan los precios con cinco decimales para ajustar mejor las variaciones, por lo que se podrá tener un cambio de 1,17316 a 1,17324, correspondiendo a 0,8 pips. Para saber el valor de un pip en la divisa base, se tiene que dividir el valor del salto (del pip) entre el precio de cotización (no es más que una simple regla de tres). Por ejemplo, si el EUR/USD está cotizando a 1,17328, el valor del pip en euros será
31
Conceptos básicos para hacer Tráding Algorítmico
De esta forma ya se puede saber el valor de pérdidas o ganancias en función de cómo se mueva la cotización de ese par. Debido a que los valores de un pip son muy pequeños, no es habitual operar solamente una unidad de par, pues posiblemente los gastos de la operación serían mayores que cualquier beneficio obtenido. Por ello en el Mercado de Divisas se opera en lotes. El tamaño estándar es de 100k unidades del par (100.000 ud), aunque la mayoría de los brokers permiten operar con tamaños distintos al lote. De hecho, muchos de ellos ofrecen mini lotes (10k ud) e incluso micro lotes (1k ud). Por ejemplo, supongamos que estamos operando un lote del par EUR/GBP (100K EUR/GBP), el cual está cotizando a 0,88062. El valor del pip será:
Pero como el lote son 100.000 unidades del par EUR/GBP,
Lo que significa que en función del movimiento de la cotización del EUR/GBP podríamos saber cuánto se está ganando (o perdiendo) en la operación (en este ejemplo de un lote). Como es habitual que se tengan las cuentas en alguna divisa distinta del par que se está operando, puede ser interesante
32
2. Un poquito de cultura
saber el valor del pip en cualquier otra divisa. Siguiendo con el mismo ejemplo, si quisiéramos el valor del pip en dólares en vez de euros, se necesita saber el valor de la cotización del EUR/USD para expresar el valor del pip en dólares. Suponiendo que el EUR/USD está cotizando a 1,17384, querrá decir que 1 € son 1,17384 USD. Por lo tanto, El valor del pip del par EUR/GBP en dólares será:
Y como se está operando un lote, el valor del pip en esta operación será: Lo que significa que en función del movimiento de la cotización del EUR/GBP podríamos saber cuánto se está ganando (o perdiendo) en la operación (en este ejemplo de un lote) Como es habitual que se tengan las cuentas en alguna divisa distinta del par que se está operando, puede ser interesante saber el valor del pip en cualquier otra divisa. Siguiendo con el mismo ejemplo, si quisiéramos el valor del pip en dólares en vez de euros, se necesita saber el valor de la cotización del EUR/USD para expresar el valor del pip en dólares. Suponiendo que el EUR/USD está cotizando a 1,17384, querrá decir que 1 € son 1,17384 USD. Por lo tanto, El valor del pip del par EUR/GBP en dólares será:
Y como se está operando un lote, el valor del pip en esta operación será:
33
Conceptos básicos para hacer Tráding Algorítmico
El Apalancamiento Se llama apalancamiento de una determinada posición, a la relación entre el valor monetario de la posición tomada y la inversión necesaria para tomar dicha posición.
En el mercado de contado (por ejemplo, en la compra de acciones) para comprar una acción hay que depositar el valor de dicha acción, por lo que el apalancamiento toma el valor de 1. Se trata de un mercado no apalancado. Sin embargo, en el mercado de futuros al comprar un futuro no se tiene que aportar más que la garantía que el mercado exige para esa operación (esta suele oscilar entorno al 5% de valor de mercado). Por ejemplo, supongamos que queremos comprar un futuro del valor REPSOL. Un contrato futuro de REPSOL negocia 100 acciones. Si REPSOL está cotizando a 15,52€ al comprar un futuro estaremos posicionándonos en el mercado con 100 acciones (el contrato de futuro de Repsol negocia 100 acciones de Repsol), por lo que el valor de mercado será 1.552€. Sin embargo, solamente se tendrá que haber hecho el depósito de 200€ (valor estimado) en el concepto de garantía que nos exige el mercado. De manera que el apalancamiento de este mercado será:
El efecto del apalancamiento es un hecho que hay que tener en cuenta en la operativa de futuros, pues en el caso de que la estrategia que nos hace tomar una posición no fuera
34
2. Un poquito de cultura
acertada, podría hacernos perder mucho dinero. Por ejemplo, supongamos que compramos un futuro del miniSP (cada punto de este contrato vale 50 dólares y es lo que se conoce como multiplicador). El miniSP está cotizando a 2.632,75 puntos, por lo tanto, estamos posicionándonos en el mercado (valor monetario de la operación) con:
Pero realmente estamos negociando esa cuantía depositando únicamente la garantía que nos exige el mercado para este producto. Tomando el valor de la garantía 6.000 USD (en el orden de magnitud que exige el mercado actualmente), imaginemos que el MiniSP evoluciona favorablemente y sube un 5% pasando de 2.632,75 a 2.764,25. El valor de mercado ha pasado a:
Obteniéndose una plusvalía de
Habiendo invertido nada más que la garantía que se nos exigía para operar este producto. Por lo que la rentabilidad ha sido
El problema hubiera sido que la evolución del precio del miniSP no hubiera sido la prevista y se hubiera movido en nuestra contra, por ejemplo, que hubiera bajado un 5% (la cotización hubiera pasado de 2.632,75 a 2.501). El valor de mercado ahora sería:
35
Conceptos básicos para hacer Tráding Algorítmico
Por lo tanto, se habría producido una minusvalía de
Lo que supone una rentabilidad de
Como se puede ver, el apalancamiento debe ser tratado con sumo cuidado a la hora de hacer trading. Si juega a nuestro favor, los resultados llegan a ser extraordinarios; pero si el mercado se mueve en nuestra contra, las pérdidas pueden quebrar nuestra cuenta. Es por ello que, a la hora de hacer trading se debe tener un plan de acción que incluya, no solo el sistema que nos determine cuando entrar y salir del mercado, si no también la gestión monetaria adecuada para que nuestra cuenta siempre esté salvaguardada. No se debe olvidar que el capital de nuestra cuenta es como la gasolina de un coche. Podremos tener un buen coche, pero sin el combustible este no andará.
36
2. Un poquito de cultura
Conclusiones Bien es cierto que para operar no es necesario saber cómo están organizados los mercados, pero si que nos es útil tener una ligera idea de como funcionan. Por eso hemos descrito en qué consiste la bolsa y dónde se negocian los distintos tipos de productos financieros. Por otro lado, lo que si que es importante es conocer los detalles del mercado de futuros y de divisas que afectan de manera directa a la operativa que seguiremos como traders. Hemos definido qué son los futuros y presentado los conceptos de roll over y fecha de vencimiento del mismo, de multiplicador y pip, los distintos tipos de pares de divisa y cómo se forman, qué son las comisiones y las garantías.
37
38
3 Fundamentos Teóricos
Ahora que ya hemos adquirido los conceptos básicos que nos harán sentirnos cómodos hablando de trading, podemos empezar a empaparnos de la operativa específica que vamos a seguir, así que ¡vamos a ello! ¿Qué es un Sistema de Trading? Como expuse en la introducción, uno de los pilares sobre los cuales se basa el trading es la estrategia que se utiliza para tomar las decisiones, es decir el cuándo y dónde posicionarse. Hablaba de distintas áreas de conocimiento para hacer esta aproximación, pero era demasiado generalista, no dando ninguna indicación concreta para responder a las cuestiones que planteaba. De igual forma, se hablaba de la gestión monetaria, con la que se daría respuesta a la cuestión del cuánto invertir una vez se haya tomado la decisión de hacerlo. En este caso tampoco daba ninguna instrucción específica para dar respuesta a dicho planteamiento. Al fin de cuentas, un sistema de trading consiste en una serie
39
Conceptos básicos para hacer Tráding Algorítmico
de reglas que se deben seguir para posicionarse en el mercado. De acuerdo con esta definición, existen traders que, teniendo una serie de reglas que definen su operativa, aplican su intuición en cada operación. Su ventaja consiste en la flexibilidad y adaptación a los cambios del mercado, pero el inconveniente radica en que hay que tomar decisiones en cada operación, lo que trae consigo un gran desgaste emocional. Esta tipología de sistemas es conocida como Sistemas de Trading Discrecionales. Por otro lado, se encuentran los Sistemas de Trading Automáticos, en los cuales el método en el que se basan para tomar las decisiones puede ser muy variopinto, pero las reglas deben ser concretas, no dejando ninguna de ellas a la interpretación subjetiva de quien las siga. De manera que este conjunto de reglas generará, según las condiciones del mercado, señales de entrada y salida en un determinado momento; de igual forma, indicarán el número de posiciones a tomar en cada caso. Por supuesto, haciendo alusión al tercer pilar básico al que se hacía referencia (el psicotrading), estas reglas deben ser seguidas, porque no tiene ningún sentido poner una serie de normas que a la hora de llevarlas a cabo no sean ejecutadas. Pese a que las decisiones son tomadas de manera automática en este tipo de sistemas, las señales generadas se trasladan al mercado de manera manual en algunos casos o automática en otros. Estos últimos son conocidos como robots de trading. Ahora bien, el hecho de que se tengan una serie de reglas a seguir (el sistema de trading), no garantiza que estás sean buenas y generen operaciones exitosas. Por eso debe seguirse algún criterio que permita evaluar si el sistema dará señales con una cierta expectativa de éxito.
40
3. Fundamentos Teóricos
Tipos de Sistemas de Trading Los sistemas de trading pueden clasificarse desde un punto de vista general y de acuerdo a la forma en que se opera, de la siguiente manera: Sistemas Tendenciales: tratan de buscar la tendencia, aunque para ello tengan que dar muchas señales con resultado negativo, estas se compensan con la recompensa de la operación que ha cogido la tendencia. Sistemas Antitendenciales: Se posicionarán cuando se produce una corrección de la tendencia en la que se encuentra el mercado sobre el que opera. Sistemas de Reversión a la media: Toman posiciones cuando alguna variable se separa de su valor medio, previendo que volverá a su valor medio de nuevo. Sistemas de volatilidad: Se posicionan en función del valor de la volatilidad del mercado que operan, tratando de coger algún impulso que les de rentabilidad. Sistemas Intermercados: Utilizan el comportamiento de un mercado “director” para posicionarse en otro que pretende replicar de alguna forma. Sistemas de pares: Se opera sobre dos mercados (patas), posicionándose largo en una de las patas y corto en la otra, en función del grado de correlación que exista entre ambos. Sistemas basados en ciclos: Aprovechan los ciclos que cada mercado tiene de manera interanual o intraanual para posicionarse.
41
Conceptos básicos para hacer Tráding Algorítmico
Sistemas de Predicción: Sistemas que utilizan las técnicas más avanzadas para anticiparse a la evolución del precio del mercado en el futuro. Gestión de Capital: Existen multitud de estrategias de gestión monetaria para determinar el número de contratos con los que posicionarnos en cada operación que nos marque un sistema de trading. f óptima. Dando por hecho que se reinvertirán los beneficios que vaya generando un sistema de trading, la media geométrica es la función que nos da la rentabilidad total de la inversión. No entrando en el detalle, lo que se pretende es maximizar el valor de la media geométrica, obteniendo de esta forma la fracción del capital disponible que se ha de poner en riesgo. Dado lo engorroso que supone operar con estrategias de gestión monetaria con f óptima, así como a los diversos inconvenientes que trae consigo su uso, es mejor hacer uso de estrategias más sencillas y fáciles de llevar a cabo. Operar a riesgo constante. Consiste en determinar la cantidad que queremos poner en riesgo en cada operación. Lógicamente, esta cantidad debe ser una fracción del capital que se dispone.
Operar a volatilidad constante. Al igual que en la operativa a riesgo constante, el número de contratos lo determinamos en función de la volatilidad. De esta forma mejoramos la situación anterior, donde se ele-
42
3. Fundamentos Teóricos
gía un valor monetario de stop loss, independientemente de cualquier criterio técnico que nos diera un valor lógico de dónde situarlo. Para solucionar esto y dar un sentido más lógico al capital que queremos poner en riesgo, se utiliza un stop loss en términos de volatilidad. Una de las formas que se puede utilizar para determinar la volatilidad es usar el ATR (Average True Range). Este indicador fue creado por Welles Wilder y da el valor medio del rango de variación del precio en un determinado periodo. Con esta manera, se puede garantizar que el stop loss estará fuera del rango de movimiento habitual del precio con una cierta holgura (n*ATR), evitando falsas activaciones del mismo.
A mi modo de ver lo más adecuado es operar con una estrategias de gestión de capital mixta de Riesgo y de Volatilidad constante. En este caso, cada sistema, en función de sus particularidades específicas, asume un riesgo fijo en cada operación (la cantidad que estés dispuesto a perder en una operación) y fija un stop loss múltiplo de la volatilidad (n*ATR(periodo)) del mercado que opera. El número de contratos que nos harían perder en cada operación la cantidad fijada en caso de saltar el stop loss será con los que acometamos dicho trade.
43
Conceptos básicos para hacer Tráding Algorítmico
Conclusiones: Ya que pretendemos confeccionar un sistema de trading partiendo de cero, hemos definido lo que es un Sistema de Trading, así como una clasificación de los mismos. De esta forma, en función de nuestro perfil inversor podremos utilizar una u otra. Si somos traders calmados, con una buena tolerancia a las pérdidas y sin prisa por obtener resultados inmediatos nos sentiremos cómodos con sistemas seguidores de tendencia; pero si por el contrario, tenemos mucha aversión al riesgo, queriendo materializar las ganancias (o pérdidas) de manera rápida, un sistema de reversión a la media o un antitendencial (de periodos cortos) se adaptarían mejor a nuestra psicología. Por último, se han mostrado algunos de los distintos métodos de gestión monetaria existentes, para que la inversión se lo más eficiente posible.
44
4 Diseñando un Sistema de Trading
Una vez que ya tenemos unos criterios fundamentales para poder valorar si una idea que nos de rentabilidad, necesitamos una serie de herramientas para poder plasmar dicha idea en un sistema de trading. A continuación, presentamos las herramientas que disponemos para ello. Software para diseño de Sistemas de Trading Existe una amplia oferta de aplicaciones para el diseño de Sistemas de Trading. Las principales características de los mismos son: Disponibilidad de datos de mercado. Para ello deben tener una base de datos, la cual debe ser alimentada, bien manualmente o bien directamente desde una plataforma suministradora de datos. Sería interesante poder editar esta base de datos para adecuarla a tus necesidades.
45
Conceptos básicos para hacer Tráding Algorítmico
Graficador capaz de mostrar las cotizaciones de los valores que se quieran consultar. No solo es importante que los valores puedan ser visualizados sin más, si no que estos debieran poder visualizarse de las distintas formas en que el precio puede ser representado (gráficos lineales, velas japonesas, barras, etc…). A su vez, el graficador debe poder ser tratado, de manera que pudiera hacerse chartismo sobre él. Es interesante que pudieran dibujarse sobre él líneas y canales de tendencia, representaciones de líneas de Fibonacci, medias móviles, etc.… Ofrecer una gama de indicadores habituales para hacer análisis técnico y facilitar la toma de decisiones a la hora de visualizar los datos (Medias móviles, RSI, ATR, MACD, Estocástico, etc...).
Ilustración 1: Chartismo con el graficador de Amibroker
46
4. Diseñando un sistema de Trading
Escaneo de señales y Exploración de mercados de acuerdo a una serie de condiciones prefijadas. Posibilidad de ser programados para que de esta forma se puedan implementar nuestras ideas de trading (Sistemas de Trading, indicadores, escáneres, etc.…). Backtest que nos permita ver el comportamiento de una idea de trading en el tiempo. Optimizador de parámetros para ajustarlos a un comportamiento óptimo de acuerdo a funciones objetivo, basadas en los ratios estadísticos que evalúan la bondad de un sistema de trading.
Ilustración 2: Pantalla de Análisis de Amibroker donde se ha hecho un backtest a un sistema
Herramientas de ayuda para la toma de decisiones Como se ha expuesto en los capítulos que hasta ahora se han desarrollado en esta guía, el mejor criterio para desarrollar un sistema de trading en el que no nos afecten las emociones, o al menos que su impacto en la operativa sea mínimo, era seguir
47
Conceptos básicos para hacer Tráding Algorítmico
una operativa automática. Para ello, debemos de valernos de algunas herramientas que permitan tomar decisiones en función de cómo se comporten. Los Indicadores Técnicos En el Análisis Técnico, los datos básicos a partir de los que se toman las decisiones son el precio, el tiempo y el volumen. A partir de ellos, se elaboran una serie de instrumentos matemáticos que permiten, de alguna manera, objetivizar el comportamiento del mercado para poder tomar una decisión de entrada o salida del mismo. Los más importantes son los siguientes: Medias móviles: miden la media de los precios (o de cualquier otra variable) en un determinado periodo de días (o de cualquier otra unidad de tiempo que se esté utilizando para la operativa). Lógicamente, para su cálculo, cada nueva barra (en nuestro caso diaria) se irá reemplazando esta por la más antigua de la serie dentro del periodo tomado. De ahí a su definición de móvil, pues se va moviendo en el tiempo. Con ello lo que se consigue es suavizar la evolución del precio, eliminado el efecto de ruido que los precios presentan en el corto plazo Indicadores de estructura de mercado: observan la tendencia de los precios, la amplitud del mercado o cualquier otra magnitud con el fin de averiguar si la tendencia actual del mercado es firme o en su defecto pudiera estar agotada. Algún ejemplo sería el MACD y el ATR. Osciladores: son un caso especial de indicadores, los cuales se definen de manera que su campo de variación
48
4. Diseñando un sistema de Trading
esté acotado entre dos extremos de fácil interpretación. Normalmente entre 0 y 100 ó entre -1 y 1. Sirven para determinar los estados extremos del mercado (sobrecomprado o sobrevendido), indicando que el impulso puede haber terminado. Ejemplos de este tipo serían el RSI y el Estocástico.
Ilustración 3: Precio en formato de barra, Media Móvil Simple, MACD y RSI
Ratios de Evaluación de un Sistema Como hemos comentado, para poder seguir un sistema de trading con garantía de éxito, este debe ser sometido a un proceso de evaluación. Para ello, existen una serie de ratios estadísticos que a modo de estimadores nos darán una idea de si el sistema será interesante ser operado o no. A continuación, haremos un repaso de los ratios estadísticos que son utilizados en el diseño de los sistemas de trading. Beneficio Neto Pese a darnos la rentabilidad del sistema que estamos siguiendo, no nos da una imagen real de la bondad del mismo. Imaginemos que una sola operación genera
49
Conceptos básicos para hacer Tráding Algorítmico
una extraordinaria rentabilidad, pero el sistema genera múltiples pérdidas consecutivas. El sistema sería muy rentable, pero no nos generaría mucha confianza operarlo, pues estaríamos pendientes de una sola operación muy rentable. Habrá que tener en cuenta también el drawdown relacionado con el beneficio neto del sistema que se está operando. Máximo Drawdown Se trata de la mayor distancia de pico a valle en la curva de capital. Se pretende tener sistemas con unos valores bajos de drawdown. No deberían operarse sistemas con un drawdown máximo mayor del 33% del capital; ya que la presión psicológica haría que se abandonara la operativa de dicho sistema. Porcentaje de aciertos: Se trata del porcentaje de operaciones que aciertan en el sistema. No necesariamente un sistema con un elevado índice de aciertos es un buen sistema, porque podría darse el caso de que en las pocas pérdidas que hubiera, si estas fueran muy altas, se perdiera todo el capital acumulado en las ganancias. Además, si las ganancias en cada operación fueran pequeñas, puede que las comisiones que el Broker nos cobrara no fueran suficientes para generar ganancias reales en la operativa real. Ulcer Index Es un indicador creado por Peter Martin publicado en 1989 en el libro “The Investors Guide to Fidelity Funds”. Mide la volatilidad en la dirección del drawdown. Al igual que ocurre con el drawdown, se buscan sistemas
50
4. Diseñando un sistema de Trading
con valores bajos de Ulcer Index. No deberían operarse sistemas con un Ulcer Index mayor de 10. Recovery Factor (factor de recuperación) Consiste en dividir la ganancia neta entre el máximo drawdown del sistema. Nos dice cuánto drawdown tenemos que pagar para tener un determinado beneficio neto. Cuando el Recovery factor es mayor 7 estaremos ante un excelente sistema de trading (genera 7 veces más beneficio neto que drawdown). Los sistemas no deberían operarse con valores de Recovery Factors menores a 3. Profit Factor (factor de beneficio) Se trata de dividir lo que ganan las operaciones con ganancias entre lo que pierden las operaciones con pérdidas. Cuando el Profit factor es mayor de 1 estaremos ante estrategias rentables. Por otro lado, cuando el Profit factor es menor a 1, la estrategia no será rentable. Profit Factors mayores a 3 nos darán excelentes Sistema de Trading. Los sistemas deberían diseñarse para Profit Factors mayores de 2. Ratio de Sharpe Se calcula en base a la media y a la desviación de los resultados. En el numerador se sitúa la ganancia media del sistema y se le resta la ganancia libre de riesgo. En el denominador se sitúa la desviación de los resultados que representa el riesgo de la estrategia. Tanto el numerador y el denominador deben anualizarse.
51
Conceptos básicos para hacer Tráding Algorítmico
Ratio de Sharpe > 1: Buena estrategia. Ratio de Sharpe > 2: Estrategia Excelente. Ratio de Sharpe < 1: No da información. Hay que ayudarse de otros datos. Trades (número de operaciones) Interesan sistemas con un menor número de operaciones pues se tendrá una mayor ganancia por operación. En cualquier caso, debemos de tener en cuenta que a la hora de diseñar se pretende tener una fiabilidad estadística adecuada para poder tomar decisiones que se ajusten a los resultados estadísticos que genera el sistema. Para ello, en la fase de diseño, no se deben considerar sistemas en los que se tenga un número de operaciones menor de 30. Optimización Walk Forward Se trata de un proceso automático para la búsqueda de los parámetros que hacen el sistema más estable y rentable ante los cambios que se producen en las condiciones del mercado . El Walk Forward es una técnica de diseño y validación de sistemas de trading en la que se optimizan los parámetros de un sistema en un periodo de datos pasado (in sample) de acuerdo a los resultados que se obtengan de una función objetivo (algún ratio que determine la bondad del sistema); con los valores obtenidos de dichos parámetros, se prueba el sistema en un periodo inmediatamente posterior cuyos datos no conoce el sistema (out sample). Es como si estuviera operando en un mercado real que aún no conoce. Esto se repite hacia adelante hasta llegar al último periodo de datos conocidos. Estos últimos parámetros obtenidos de la optimización se probarán en el último paso out of sample con
52
4. Diseñando un sistema de Trading
el mercado real actual. Se pretende determinar si el comportamiento de la optimización es realista o se trata de la consecuencia de una sobreoptimización. De esta forma, se analiza el comportamiento de todos los tramos donde se probaron parámetros con datos no conocidos. Si este comportamiento “out of sample” no es adecuado (malos ratios estadísticos obtenidos en el sistema que se analiza), se considera que no ha pasado el test Walk Forward y por lo tanto, no debería ser operado. De esta forma, el sistema está trabajando en cada tramo out of sample con parámetros obtenidos del comportamiento más reciente del mercado sobre el que opera (in sample), evitando que se produzca una sobreoptimización del mismo y adaptándose a las condiciones
Ilustración 4: Ejemplo Walk forward paso a paso
Análisis de Monte Carlo Si se piensa en las operaciones individuales de nuestra estrategia, la secuencia en las que estas ocurren nos da la curva de capital de la misma. Ahora bien, ¿qué ocurriría si el orden en que
53
Conceptos básicos para hacer Tráding Algorítmico
ocurrieran dichas operaciones fuera distinto? Con el análisis de Monte Carlo se pueden sacar conclusiones al respecto. El método de Monte Carlo representa una amplia gama de algoritmos matemáticos que usan una muestra aleatoria de datos repetidos, para obtener propiedades estadísticas del proceso objeto de estudio. Fue inventado por el matemático Stanislaw Ulam cuando trabajaba desarrollando proyectos de armas nucleares en los Estados Unidos. En un sistema de trading, la simulación de Monte Carlo se refiere al proceso de usar una simulación aleatoria de la secuencia de trades para evaluar propiedades estadísticas de dicho sistema. Usando todas las posibles curvas de capital que se generarían en un orden distinto del que se ha partido, se pueden obtener estadísticas que permitirán hacer una evaluación de la estrategia desde la óptica de distintos escenarios. Con este análisis cualquier criterio de diseño que no tuviera una base sólida y tuviera puntos débiles, nos reportaría unos resultados para que en el futuro no fuera interesante operar esta estrategia. Por otro lado, pese a que el análisis de Monte Carlo tiene algunas desventajas, manejándolas adecuadamente, puede ser muy interesante. - La primera es que el análisis asume que los trades de la estrategia son los únicos posibles que pueden darse. Esto es absolutamente falso, ya que cualquier trade puede ser posible en un momento dado; pero si la distribución de los trades es precisa, el análisis de Monte Carlo puede ser extraordinario. - La segunda consiste en que el análisis asume que cada trade es independiente del anterior. La mayoría de las estrategias no
54
4. Diseñando un sistema de Trading
tienen este problema, pero en el caso de serlo, el análisis de Monte Carlo no es apropiado. Ahora bien, ¿cómo aplicamos esta técnica para demostrar en la medida de lo posible la fiabilidad de nuestro sistema? Cuando optimizamos intentamos buscar aquellos parámetros que maximicen la ganancia y minimicen el drawdown (DD). Pues bien, una vez determinada la mejor opción, se nos plantea la cuestión de con qué grado de confianza podremos saber que los valores que se obtienen de esa simulación van a ser representativos del funcionamiento de nuestro sistema en el futuro. Ciertamente, los resultados que obtenemos no nos dan una gran garantía, ya que estos los conseguimos de una única simulación. Es decir, ha sido fruto del azar el que esos resultados se hayan ordenado de una manera determinada para conseguir un valor óptimo de los parámetros, de acuerdo con la función objetivo elegida en el proceso de optimización. Pero ¿qué pasaría si desordenásemos las curvas de capital? La respuesta sería que se obtienen resultados distintos con un drawdown diferente. Esto es lo que hace el análisis de Monte Carlo, obteniéndose así un número grande de distintas curvas de capital con un drawdown y una ganancia diferente. Estas curvas se pueden ordenar y conseguir así el porcentaje de ellas que superan un valor determinado de ganancia o drawdown (o de cualquier otro ratio a estudiar). Con este análisis conseguimos eliminar el factor casualidad que teníamos con la optimización inicial y comprobar así el riesgo real que tiene el sistema o la cartera. El análisis de Monte Carlo
55
Conceptos básicos para hacer Tráding Algorítmico
nos ayuda a ver un sistema de trading no como un conjunto fijo de ratios, si no como una distribución en el que cada ratio es variable y su valor depende de la casualidad o suerte. De manera que, el Análisis de Monte Carlo nos ayuda a responder las siguientes preguntas: El rango en que pudiera moverse la Equity que nos da el sistema. El riesgo de ruina para un determinado capital. La probabilidad de que el sistema alcance un determinado máximo drawdown. El retorno anual que se puede esperar de una estrategia. La probabilidad de que el capital caiga por debajo de una determinada cantidad. La probabilidad de obtener una determinada racha de pérdidas. Conclusiones y pasos a seguir en el diseño de un Sistema de Trading Después de haber dado un repaso a las cuestiones elementales, lo que no indica que no sean importantes, ya estamos preparados para crear un sistema de trading. No se pretende en esta guía buscar el sistema perfecto, pues realmente no existe un sistema que sea perfecto para todo el mundo. Ahora bien, la práctica en la operativa hará que se vayan creando sistemas que se adapten al perfil inversor de cada
56
4. Diseñando un sistema de Trading
persona. Además, el que un sistema acierte todas las veces que entra a mercado es una tarea prácticamente imposible. Por eso debemos de valernos de las estadísticas, las cuales evaluaran la bondad del sistema. Los pasos que se deben seguir a la hora de crear un sistema de trading pueden resumirse en los siguientes: - En términos globales, piensa en qué tipo de sistema te gustaría operar. Este debe adaptarse a tu personalidad (sistema tendencial, de reversión a la media, etc…). - Elige una función objetivo para determinar la bondad del sistema que vas a crear. Puede ser cualquiera de las presentadas en este documento (Beneficio neto, Máximo Drawdown, Recovery Factor, Profit Factor, etc…), aunque existen multitud de ellas en la literatura de trading. - Decide la frecuencia con la que te gustaría operar. En función de esta decisión tendrás que elegir la frecuencia de los datos de mercado; es decir, si operarás barra intradiaria (con una amplia gama de tamaño que cubren desde minutos a horas por barra), diaria o semanal. - Verifica tu disponibilidad de dinero para operar, pues este debe ser suficiente para soportar los drawdown que pudieran presentarse, así como cubrir las garantías necesarias para poder operar. Por supuesto, no utilices nunca dinero que fuera necesario para cubrir tus necesidades básicas. - Decide el mercado que operarás para que el nivel de apalancamiento sea adecuado a tu perfil inversor. No es lo mismo operar el futuro del crudo con un multiplicador de 1.000 USD/punto que el futuro Mini del crudo con un multiplicador
57
Conceptos básicos para hacer Tráding Algorítmico
de la mitad. Otra opción sería operar el mercado de contado con acciones donde no hay apalancamiento, pero en contra hay que disponer de suficiente capital para desembolsar a la hora de comprar cada acción. - Elige el riesgo por operación que quieres tomar, de manera que cada vez que entres a mercado sepas cuánto dinero estás dispuesto a perder en ese trade. - Fija una rentabilidad anual que quieras alcanzar con esta operativa, para que puedas hacer una buena selección de parámetros en el proceso de optimización, validarlos en el análisis de Monte Carlo y poder chequear el funcionamiento de la estrategia cuando se esté operando en el mercado real. - Valiéndote de las herramientas que el Análisis Técnico te brinda, plasma tu idea determinando cuando deberían activarse las señales de entrada y salida del mercado. - Utiliza un stop loss que impida que puedas perder más dinero del que tenías previsto poner en riesgo cada vez que entras en un trade. - Asegúrate de que los datos que utilizas para la operativa sean buenos, prestando especial atención al tratamiento de los roll over, pues puede haber grandes saltos entre los contratos de vencimientos contiguos que pueden dar grandes errores en el proceso de simulación. Contratar un buen suministrador de datos puede ahorrarte mucho trabajo. - Optimiza los parámetros que consideres que son determinantes para que el sistema funcione bien. Es importante que no optimices muchos para no caer en lo que se conoce como sobreoptimización. Un número de parámetros a optimizar
58
4. Diseñando un sistema de Trading
adecuado estaría entre 3 y 5. - Ten en cuenta en la simulación las comisiones y los deslizamientos (cuando lanzas la señal al mercado normalmente no suelen coincidir con los precios de activación. Esto es lo que se conoce como slippage o deslizamiento en español). - Analiza las probabilidades de que el sistema se comporte como se ha diseñado con una simulación de Monte Carlo. - Opéralo con datos reales en una cuenta demo durante un tiempo para que veas cómo se comporta en realidad, así como para ver cómo te afectan las emociones al seguir el sistema. Puede que el sistema que has ideado no se adapte a tu perfil de personalidad y no podrás seguirlo en el mercado real con dinero real. - Una vez que te sientas cómodo con su comportamiento en el periodo anterior, opéralo en real. - Por último, cuando haya pasado el periodo del último paso de out of sample utilizado en el proceso de optimización (el cual se ha utilizado en la operativa en real), vuelve a optimizar para determinar los nuevos parámetros del nuevo periodo out of sample (en el caso de haber optimizado por el método de walk forward para la determinación de los parámetros). En cualquier caso, no operes más de un año un sistema sin hacerle un ajuste de parámetros (para sistemas tendenciales de largo plazo esta condición podría alargarse). Es como las revisiones que hay que hacer a los vehículos. En este caso, tu vehículo es tu sistema de trading y el capital del que dispones es tu gasolina.
59
Conceptos básicos para hacer Tráding Algorítmico
60
5. Aplicando lo aprendido
5 Aplicando lo aprendido
Con todo lo expuesto hasta ahora, se puede pasar a la acción. Ya se tienen todas las herramientas necesarias para poder desarrollar la idea que tenemos en mente. El presente capítulo creará un sistema de trading, poniendo en práctica todos los detalles que se han explicado en los capítulos anteriores. ¡¡Vaaaaamoooooossss…!!! Se utilizará el software para diseño de sistemas AMIBROKER, siendo el suministrador de datos IQfeed. De igual forma, se diseñará para barra diaria, de manera que, en todos los casos las activaciones se producirán con precios de cierre de mercado. Se creará para el mercado MiniSP 500. Es el futuro sobre índices más popular en la actualidad. Por ello, garantiza liquidez de mercado y al mismo tiempo una exigencia baja de garantías en
61
Conceptos básicos para hacer Tráding Algorítmico
comparación con otros futuros. Dado el sesgo alcista que tienen los índices, solo se operará en el lado largo. Los suministradores de datos tratan este futuro para entregar los datos de manera continua, evitando los saltos que se suelen producir con los roll over. Esto último es muy importante para poder hacer simulaciones, quedando fuera del alcance de este documento las distintas metodologías utilizadas para el tratamiento de datos para que los futuros se representen de manera continua. El multiplicador es de 50 USD/punto y el ticker (es el identificador que el suministrador de datos da para reconocer un determinado producto financiero) para el miniSP500 es @ ES#C. Como se trata de la creación de un sistema con fines didácticos, se parte de un capital inicial de 100.000 USD y no se tendrán en cuanta las garantías que nos exige el mercado. Se estimará un coste de comisión y deslizamiento de 50 USD para la entrada y otros tantos para la salida. La idea Vamos a programar un sistema utilizando el oscilador RSI, utilizando una media móvil como filtro de tendencia. También colocaremos un stop loss de protección que nos permita salirnos de la operación cuando se haya perdido una determinada cantidad. El RSI (Relative Strength Index) es un oscilador desarrollado por J. Welles Wilder, presentado en su libro “New Concepts in Technical Trading Sistems”. Se trata de un oscilador de la tasa
62
5. Aplicando lo aprendido
de cambio que mide, para un determinado periodo de tiempo, la velocidad a la que varían las cotizaciones; dando una medida de la fuerza relativa de las ganancias en las cotizaciones con respecto a las pérdidas de las mismas. La forma más habitual de utilizarlo es la de localización de valores extremos de mercado. Es decir, los estados de sobrecompra y sobreventa, los cuales determinan posibles giros de mercado. Cuando el valor del RSI es muy bajo, se dice que el mercado está sobrevendido, pudiéndose prever un giro al alza; y de manera simétrica, cuando su valor es muy alto, se dice que el mercado está sobrecomprado, pudiéndose esperar un giro a la baja. Suele usarse habitualmente los valores de 70 y 30 como umbrales de sobrecompra y sobreventa respectivamente. Por otro lado, una práctica muy habitual para determinar la tendencia de un mercado es la de utilizar las medias móviles, de manera que si los precios están por encima de la media de los precios en un determinado periodo, se entenderá que la tendencia es alcista; mientras que si los precios están por debajo de la misma, el mercado será bajista. El periodo que suele utilizarse para un largo plazo es el de 220 días (barras diarias en un año). De esta forma se deja tiempo suficiente para que se desarrolle la tendencia de mercado y se asegure que actúe como filtro de tendencia realmente. Las reglas Como ya se ha explicado, las reglas de un sistema de trading son las condiciones que se tienen que seguir para entrar y salir al mercado. Estas deben ser concisas sin dejar opción a ambigüedades. Son condiciones que no estén sujetas a interpretaciones subjetivas.
63
Conceptos básicos para hacer Tráding Algorítmico
Entrada de largos Abriremos largos cuando se cumplan simultáneamente las siguientes condiciones: 1. El precio de cierre esté por encima de la media móvil. 2. El valor del RSI esté por debajo del umbral de sobreventa a cierre de mercado. Salida de largos Cerraremos los largos cuando se cumpla la siguiente condición: El valor del RSI esté por encima del umbral de sobrecompra a cierre de mercado. Stop loss En todos los casos, cuando la posición que esté en mercado alcance una pérdida de 6.000 USD se activará un stop loss de protección. Es conveniente que la cantidad que se elija tenga la suficiente holgura para que no salte el stop en los movimientos que el mercado tiene habitualmente. Este valor es considerablemente mayor que la volatilidad que tiene el MiniSP500. El código Se trata de escribir las reglas del sistema en un lenguaje que el software que utilicemos para el diseño entienda. En este caso, se escribe el código en AFL (Amibroker Formula Language), que es el que utiliza Amibroker como lenguaje de programación. No siendo objeto del presente documento entrar en detalles de la configuración de Amibroker para llevar a cabo el proceso
64
5. Aplicando lo aprendido
de análisis del sistema de trading, así como del porqué de algunas líneas de código necesarias para implementación del sistema, se presenta el código del mismo.
Ilustración 5: Resumen de variables
Como se puede observar, solamente se optimizarán tres parámetros (el periodo del RSI y los umbrales de sobreventa y sobrecompra), siendo el resto fijos. A continuación se presenta el código del sistema en el lenguaje de programación de Amibroker (AFL). Una particularidad a considerar es que el software con el que se trabaje debe incluir los indicadores más importantes que se suelen utilizar en el análisis técnico. En el caso que nos ocupa, Amibroker tiene “built in” los indicadores RSI y MA (entre una amplia gama de ellos) en su biblioteca de indicadores, así como la función de stop loss. De esta forma, no es necesario tener que codificarlos nosotros mismos para su uso.
65
Conceptos básicos para hacer Tráding Algorítmico
Ilustración 6: Código del sistema creado (Amibroker)
Una vez se ha redactado, verificamos que no hay ningún error y que se comporta tal como se espera. Esto no quiere decir que sea óptimo de entrada, pero si se debe comprobar que las reglas hacen lo que se quiere que hagan. Una buena práctica para ello es pasar un backtest y comprobar que las señales que se activan cumplen las reglas.
66
5. Aplicando lo aprendido
La optimización Una vez que tenemos el código, utilizando el software de diseño, procedemos a la optimización. El método que se utilizará será el de Walk Forward. Es una práctica muy habitual elegir un periodo in sample de 3 años con un periodo out of sample de 1/3 del in sample tomado (1 año en este caso). La función objetivo que se ha tomado para la elección de los parámetros que mejor se comportan en el histórico de datos ha sido el Recovery Factor (podría haberse tomado cualquier otro).
Ilustración 7: Señales obtenidas con los parámetros de la optimización y sus correspondientes stop losses (Amibroker)
67
Conceptos básicos para hacer Tráding Algorítmico
Ilustración 8: Detalle de una activación mostrando la Media Móvil, el RSI y los umbrales de sobrecompra y sobreventa (Amibroker)
68
5. Aplicando lo aprendido
Las estadísticas obtenidas son las siguientes:
Ilustración 9: Estadísticas de los periodos out of sample obtenidos en la optimización Walk Forward (Amibroker)
69
Conceptos básicos para hacer Tráding Algorítmico
La evolución de la curva de capital y drawdown son los que se muestran a continuación:
Ilustración 10: Equity y drawdown del sistema en los periodos out of sample de la optimización Walk Forward (Amibroker)
70
5. Aplicando lo aprendido
Por último, ser presentan los resultados obtenidos en los distintos años en los que se ha realizado el test de optimización.
Ilustración 11: Resultados obtenidos en el periodo out of sample de la optimización Walk Forward (Amibroker)
71
Conceptos básicos para hacer Tráding Algorítmico
El análisis de los resultados Habiendo hecho la optimización, podemos sacar conclusiones acerca de la bondad del sistema que se ha creado. Resumiendo, los ratios que debiera tener un buen sistema se presenta la siguiente tabla:
Ilustración 12: Ratios de un buen Sistema de Trading
Se aprecia que los ratios que se han obtenido cumplen los requisitos que se le exige a un buen sistema de trading. 1. Sistema que se ha creado tiene menos de 5 parámetros (ver la ilustración 5). 2. Está diseñado con datos desde 2000 (el presente documento se ha redactado en diciembre de 2017). 3. El Ratio de Sharpe es superior a 2 (2,15) en el periodo fuera de muestra, lo que significa que es un muy buen sistema.
72
5. Aplicando lo aprendido
4. El Recovery Factor es de 4,43, lo que indica que el sistema tiene un buen poder de recuperación. 5. El máximo drawdown está dentro de los límites exigidos (6,68%). 6. El Profit Factor es extraordinario (5,40), lo cual demuestra que la estrategia es rentable. Entonces, se puede decir que la estrategia elegida es adecuada. Pero aún debemos ser precavidos, pues se trata de un solo test el que se ha pasado. Por un lado, se trata de una estrategia que, pese a que es fácil de seguir (pocos trades y bajo drawdown), no da mucha rentabilidad, siendo esto un hándicap importante. No se debe de olvidar que el principal objetivo de un trader es hacer dinero, pero eso sí, a bajo riesgo. Por otro lado, imaginemos que las operaciones se hubieran producido en un orden distinto al que en el test se han producido. Es entonces cuando se debe hacer un análisis de Monte Carlo, como test final antes de sacar las últimas conclusiones. El Análisis de Monte Carlo Se recuerda que el análisis de Monte Carlo en un sistema de trading, lo que hacía era tomar distintas secuencias de los trades obtenidos en un back test sobre un histórico de datos, para obtener estadísticas de los ratios que permiten determinar la bondad del sistema. Haciendo una simulación de Monte Carlo a los resultados obtenidos en los periodos out of sample del proceso de
73
Conceptos básicos para hacer Tráding Algorítmico
optimización, se obtienen los siguientes resultados:
Ilustración 13: Resultados de la simulación de Monte Carlo (Amibroker)
La primera columna muestra el percentil, lo que indica que el tanto por ciento de veces que se observa una determinada propiedad (restantes columnas), esta será menor o igual que el valor mostrado. Por ejemplo, para nuestro sistema, el 10% de las veces se obtendrá una rentabilidad anual como máximo del 0,58% (igual o menor al 0,58%); o lo que es lo mismo, que hay una probabilidad del 10% de que el sistema no tenga un rendimiento mayor del 0,58% (un 90% de probabilidad de que la rentabilidad sea mayor). Este dato nos puede ayudar a decidir si merece la pena o no asumir el riesgo de operar este sistema en función de la rentabilidad que daría cualquier depósito a plazo fijo (es decir, lo que nos reportaría dejar el dinero en el banco sin “riesgo”). Otro dato importante a comprobar con detenimiento es el valor del máximo drawdown. En un 90% de las veces el drawdown será menor o igual a 3,59% (18.278 USD). Por lo tanto, no parece que sea un sistema donde se asuma mucho riesgo, pues solamente con un 1% de probabilidad el drawdown será mayor a 25.890 USD (4,86%).
74
5. Aplicando lo aprendido
Estos resultados pueden representarse grĂĄficamente y de esta forma poder apreciar todo el rango de resultados de una forma mĂĄs visual, asĂ como poder hacer cualquier consulta a partir de ellos.
75
Conceptos básicos para hacer Tráding Algorítmico
76
5. Aplicando lo aprendido
Ilustración 13: Resultados de la simulación de Monte Carlo (Amibroker)
Conclusiones En este apartado me gustaría remarcar que todo lo expuesto hasta ahora tiene un fin pedagógico, tratando de indicar todos los pasos que debieran seguirse para diseñar un sistema de trading. En ningún caso se pretende que se opere este sistema de trading, ni las ideas que se han expuesto hasta ahora. Ahora bien, pese a la bondad que las estadísticas del sistema de trading que se ha diseñado sean buenas, posiblemente la rentabilidad obtenida y las pocas operaciones que se han obtenido hacen que no sea un sistema a operar en el mercado real (por lo menos bajo mi punto de vista). Pero sí que puede servir como base a implementar para mejorar cualquier otra idea que se tuviera.
77
Conceptos básicos para hacer Tráding Algorítmico
Lo importante es que se ha desarrollado toda la operativa desde el principio, como hacen los traders que operan en el mercado real; concretamente, como yo mismo hago una vez tengo una idea que quiero implementar. Si los resultados que obtuviéramos fueran satisfactorios y pasaran todos los test, de manera que nos sintiéramos cómodos al operarlo en un mercado real, debería hacerse la prueba final. Esta consiste en dejarlo un tiempo en una cuenta demo (dependiendo del periodo de muestra out of sample que se haya utilizado para el diseño) para ver que su comportamiento sigue siendo fiel a lo esperado. Si así lo hace tendremos nuestro sistema listo para ser operado en un mercado real.
78
6. Consideraciones Finales
6 Consideraciones Finales
Para terminar, se indicarán una serie de cuestiones que debieran tenerse en consideración cuando se opere en los mercados financieros y más concretamente en el mercado de futuros. Los sistemas de trading han sido diseñados para ser seguidos, de manera que no tiene ningún sentido saltarse alguna de las señales que cualquiera de los sistemas operados dieran. Imagínate que siguiendo un sistema tendencial, los cuales suelen tener un bajo índice de aciertos, nos saltáramos la señal ganadora; habríamos echado por tierra el seguimiento de este sistema, pues la rentabilidad del mismo habría sido dada por esa señal que no se tomó. Mi opinión es que el trading cuantitativo mediante el seguimiento de sistemas de trading es la mejor forma de sacar ventaja económica en nuestra operativa, al dejar de lado cualquier elemento subjetivo en la toma de decisiones, basándose en el tratamiento estadístico-probabilístico de un histórico de datos,
79
Conceptos básicos para hacer Tráding Algorítmico
las decisiones se toman de una manera absolutamente objetiva. Pese a que se sigan las señales de los sistemas diseñados, debe hacerse un seguimiento exhaustivo de la operativa, dadas las peculiaridades que el mercado de futuros trae consigo (roll over, gaps, deslizamiento, garantías…). De igual forma, los sistemas de trading tienen una vida útil, pudiendo dejar de sincronizarse con el mercado que están operando; esto no quiere decir que dejemos de operarlos una vez se encuentren en un drawdown importante. Por ello, debemos hacer un seguimiento continuo para analizar, en caso de ser necesario, si el sistema ha dejado de funcionar. Para poder operar en los mercados financieros es necesario tener contratados los servicios de un intermediario que esté habilitado para cursar las órdenes que queremos realizar. Asegurémonos que las comisiones, garantías y demás aspectos contractuales se ciñen a nuestras expectativas. Dado el riesgo que conlleva la operativa con productos derivados, como son los futuros, altamente apalancados, es absolutamente recomendable que operemos con capital que no necesitemos para nuestras necesidades cotidianas. Por último, no olvidar que rentabilidades pasadas no garantizan rentabilidades futuras. El mercado es soberano y siempre lleva razón, comportándose en cada momento de una manera que no es posible determinar (teoría de la eficiencia de mercados). De manera que los sistemas de trading tratan de sacar partido de las posibles ineficiencias puntuales que pudieran presentarse.
80
7. Agradecimientos
7 Agradecimientos
La redacción de este libro no hubiera sido posible sin los estímulos que generaron las conversaciones acerca de los mercados financieros con mis amigos Pedro García y José Luis Ruíz, a quienes quiero agradecer el haberme despertado el interés por este mundo. Se trataba de una época en la que muchos pensábamos que sabíamos de bolsa por el simple hecho de leer las recomendaciones de los periódicos financieros, así como por la compra de alguna que otra revista especializada en la materia. Después de haber coqueteado con algún producto apalancado y haber llevado una operativa tradicional de compra de acciones e incluso haberla abandonado al no ir las cosas del todo bien, comenzó la nueva etapa, más seria y basada en la investigación y el estudio. Es aquí cuando quiero dar las gracias a Manu Botias, porque todo este tinglado que hemos montado nace junto a él.
81
Conceptos básicos para hacer Tráding Algorítmico
De igual modo quiero agradecer la confianza prestada por Vicente Ferrio, quien se sumó al proyecto desde el primer momento, aún a pesar de que por aquel entonces no había ninguna expectativa definida. Sin ellos no hubiera tenido la fortaleza para aguantar las malas rachas a las que tienes que enfrentarte como operador en los mercados financieros. Desde un punto de vista de formación y adquisición de conocimientos no debo de olvidar la implicación que ha tenido en mi andadura Javier Alfayate. Disfruté mucho automatizando los sistemas de este gran profesional y ahora también amigo, así como de las comidas que compartimos hablando de cuestiones financieras. Creedme que se lo agradezco. También quiero agradecerle a Pedro Pinedo su aliento, empujándome a ir más allá en todos los proyectos de trading que tengo en mente. Además, quiero hacer una mención muy especial a Oscar Cagigas, porque quien comenzó siendo un receptor de un número interminable de preguntas acerca de trading automático cuando apenas sabía ni abrir Amibroker, hoy se ha convertido en un gran amigo con el que comparto cuestiones y conversaciones más allá del mundo que ocupa este libro. De igual forma, no debo dejar de reconocer la ayuda recibida por toda la comunidad de Amibroker, en cuyo fórum https://forum.amibroker.com/ y soporte http://amibroker. com/support.html he encontrado la solución a muchas cuestiones relativas al lenguaje de programación utilizado por este software (Amibroker Formula Language, AFL). Concretamente, quiero destacar la ayuda de Tomas Janeczko (Tomasz), Marcin Gorzynski, Giuseppe Bonariva (beppe), Alan Clement (HelixTrader), Milosz Mazukiewicz (Milosz),
82
7. Agradecimientos
Panagiotis (Panos), Dionysos, Ed (sharps4570) y Anthony Faragasso (Anthony), quienes contestaron amablemente a mis dudas dándome una solución a las mismas o alguna pista para encontrarla. Por último, no quiero olvidarme de mi hermano Carlos Vázquez, pues verdaderamente siento la admiración que le produce el que haya escrito este libro; de mi Padre, Santiago Vázquez, quien desgraciadamente no ha llegado a tenerlo en sus manos; y a Blanquita por toda su ayuda en la elaboración de todo este material junto a su infinita paciencia y apoyo emocional en todos los ámbitos de mi vida.
83
Conceptos básicos para hacer Tráding Algorítmico
84
8.Bibliografía
8 Bibliografía - Comisión Nacional del Mercado de Valores (2004). Guía Informativa de la CNMV. Qué debe saber de Opciones y Futuros. Madrid, España. - Eduardo Martínez Abascal (1999). Invertir en Bolsa. Conceptos y Estrategias. Madrid, España. MacGraw Hill. - Francisco López Rodríguez (2002). Curso Práctico de Opciones y Futuros. Madrid, España. Inversor Ediciones, S.L. - Javier Alfayate (2011). Aleta de Tiburón. Tácticas de un operador en Bolsa. Madrid, España. Gráficas Mayán S.L. - Javier Alfayate (2011). ¡Enséñame la pasta! En busca del Market Timing. Madrid, España. Villena A.G. - Javier López Ortega, Alejandro Sáez Sanz (2000). Indicadores para el Análisis de los Mercados Bursátiles. Madrid, España. A. D. I. Editorial. - José Luis González, Gonzalo Torres, Enrique Marazuela, Francisco Rodríguez del Prado, José Codina, Mar Barrero,
85
Conceptos básicos para hacer Tráding Algorítmico
Isabel Sánchez (2002). Curso Práctico de Bolsa. Madrid, España. Inversor Ediciones, S.L. - Howard B. Bandy (2012). Introduction to Amibroker. Advanced Technical Analysis Software for Charting and Trading System Development. Dakota del Sur, EEUU. Blue Owl Press, Inc. - Howard B. Bandy (2011). Quantitative Trading Systems. Practical Methods for Design, Testing and Validation. Dakota del Sur, EEUU. Blue Owl Press, Inc. - Manual de Introducción a los Sistemas de Trading (2008). Alava, España. Hispafinanzas. - Oscar G. Cagigas (2006). Trading con Gestión de Capital. Un enfoque práctico con numerosos ejemplos. España. - Oscar G. Cagigas (2007). Trading con Sistemas Automáticos. España. - Roberto D. Bacchini, Daniel F. Míguez, Javier I. García Fronti, Sebastián A. Rey (2004). Ingeniería Financiera. Futuros y Opciones utilizando Microsoft Excel. Buenos Aires, Argentina. Omicron System. - www.amibroker.com/guide - www.forexsos.com - www.mundo-forex.com/curso-forex - investing.com
86
8.Bibliografía
87
Conceptos básicos para hacer Tráding Algorítmico