Nadie va a cuestionar
a estas alturas la eficacia, la potencia y la comodidad de Microsoft Excel para
manejar datos en tablas. Más aún, la potencia para manejar datos en general.
Excel ofrece soluciones a prácticamente todos los campos del cálculo, la
empresa y la estadística. Incuye infinidad de librerías propias y externas y encierra
un lenguaje de programación, el VBA (Visual Basic
for Applications), que permite desarrollar aplicaciones para cualquier
propósito.
El fin de que estemos aprendiendo R no es otro que el poder manejar datos de
cotizaciones financieras con el fin de
estudiar métodos cuantitativos y poder aportar y aprovechar el caudal de
conocimientos y librerías que miles de usuarios de este programa están
facilitando en el repositorio.
Es muy probable que todo
lo que pretendemos investigar se pueda hacer con Excel y que no necesitaríamos
R, pero es también seguro que si los desarrollos avanzan a la velocidad
esperada, pronto llegaremos a un punto donde el manejo de datos en Excel se
haga ineficaz. De ahí poder contar con un programa como R, disponible para todas las plataformas y mucho
más orientado a los campos por los que pretendemos caminar, que te recuerdo que
son
- Probabilidad
- Procesos estocásticos
- Métricas cuantitativas
- Data Mining
- Redes Neuronales
- Análisis de patrones
- Métodos de Money Management
- Análisis de Riesgo
¿Por qué digo ahora ésto? pues porque toca
aprender a importar y exportar datos, principalmente a Excel, ya que Excel nos facilita mucho la
labor en tareas básicas, aparte de su poder visual. Y quien dice Excel dice
Drive y cualquier otro programa como puede ser directamente el formato texto.
Si el hecho de
aprender a programar R es importante, este capítulo de resulta vital dentro de
este castillo de conocimiento que estamos desarrollando.
¿ De dónde obtenemos los datos?
En nuestros estudios
vamos a manejar históricos de datos de cotizaciones de activos financieros. El
programa más universal para realizar chartismo de estos datos es el Metastock (R)
aunque en España tenemos
la fortuna de haber desarrollado y poder disfrutar del excelente VisualChart
que camina hacia los
20 años en el mercado, es de gran calidad y dispone de todas las herramientas
necesarias para el análisis técnico y será en el que nos apoyemos para hacer
estudos gráficos.
Hay muchos importantes
programas más, todos ellos reciben y grafican datos financieros para poder
hacer análisis técnicos sobre ellos, pero la suscripción a recibir dichos datos
en tiempo real es de pago. Si solo deseamos los datos "fin de día" ó EOD
(end of day) VisualChart nos los ofrece
gratuítamente. En cualquier caso esos datos están codificados por ellos y para
ellos y nosotros vamos a tener que cocinarlos en base a nuestras
investigaciones, por lo que tenemos que tener un dominio absoluto de como son y
como poder adaptarlos.
También tenemos la
posibilidad de usar Google o Yahoo Finance (https://es.finance.yahoo.com/)
que nos permite obtener gratuitamente bases de datos históricas de todos los
mercados mundiales e, incluso, poder pasarlos a Excel y actualizar nuestras
propias bases de datos.
La importancia de
tener bases de datos históricas, bien cuidadas y actualizadas, es vital porque
de esos datos sacaremos conclusiones de estrategias futuras. Si esos datos no son
correctos las conclusiones no serán fiables y nuestro proyecto se derrumbará antes de empezar.
Aunque tranquilo porque cualquier estrategia que diseñemos tendrá su periodo de
prueba igual que a un medicamento se le exige un largo periodo de ensayos que determinen su calidad, eficacia y seguridad antes
de su comercialización. Incluso se podría dar el caso que adoptemos estartegias mal diseñadas y aún así resulten efectivas, que
es lo que necesitamos.
En resulmen, hoy por
hoy, Marzo de 2015, para poder avanzar en nuestro proyecto de la forma más
limpia y cómoda es que elaboremos programas que nos permitan disponer de nuestras
propias bases de datos de históricos de cotizaciones siguiendo estas características:
- Poder leer las numerosas bases de datos históricas Metastock disponibles
- Poder leer bases de datos históricas de Visualchart y Yahoo Finance.
- Poder usar Excel con todas estas bases de datos.
- Almacenar, para nuestra gestión, todos los datos a formato texto CSV (comma-separated values) que es apropiado para Excel y R, usando inicialmente los campos Date Time Ticker Open High Low Close Volume, pero teniendo en mente que hay otros campos interesantes que, de ser posible, habría que añadirlos como son el Open Interest , operaciones extraordinarias, splits, dividendos, ampliaciones, excepciones, anomalías, y un largo etcetera.
- Alimentar nuestras bases de datos, en un principio, a través de Yahoo Finanzas en periodos EOD y en el intradiario de, al menos, 15 minutos , pero con la idea de disponer en un futuro cercano, de un sistema propio de alimentación datos en tiempo real (RT real time)
Vamos pues a estudiar
ahora como poder llevar a cabo todo esto.
Avanzamos....
Hola Manuel,
ResponderEliminarSoy Carlos Ortega (de la lista de ayuda de R en español - R-help-es).
En varias de las primeras charlas del grupo de Usuarios de R de Madrid, un compañero hizo varias presentaciones sobre como utilizar R para técnicas de Trading. Tenía experiencia en haber trabajado en estas cosas y quería unificar lo mejor de cada una de las herramientas propietarias con lo que R ofrece. Lo que tenemos de las charlas que dio es esto:
http://madrid.r-es.org/?s=trading&searchsubmit.x=0&searchsubmit.y=0
Si buscáis en su empresa (Entropycs) debiera de tener todavía disponible un programa que desarrolló utilizando R como base para utilizar estas técnicas de Trading. Este programa inicialmente lo iba a vender pero al final lo ofrecía de forma gratuita.
Saludos,
Carlos Ortega.