Laboratorio de Inversión y Especulación 7 - Colaborar No Programadores
Ya tenemos una carpeta en los servidores de Rankia donde colocar los históricos que descarguemos, tenemos tres descargadores funcionando, solo tenemos que crear los batch para descargar todo lo que queremos, podemos empezar con:
Seguid las flechas hasta llegar a los historicos, ver el codigo fuente y usar el isdn como dato necesario para los batch, el ticker sera el nombre.
NOTA: Como entiendo que para la gente que no sabe programar y que tiene conocimientos muy básicos de informática, es complicado colaborar, estoy trabajando en un interfaz gráfico, que sea ejecutable con un .exe normal desde windows y no necesite instalar java sino que ya lo lleve incluido (por supuesto la aplicación a descargar será mas pesada.)
NOTA 2: Tengo pensado hacer un coloquio con Francisco Llinares dentro de unas semanas, cuando tengamos mas funcionalidad y lo haya probado mas gente, para poder hablar de que el lo que quiere cada uno, y de las tareas que quiere hacer cada uno, con estos últimos posts hay material mas que de sobra para colaborar y en dos o tres semanas anunciamos el coloquio, ya que tendremos mas gente colaborando activamente y el sistema estará probado y conocido por otros muchos, eso espero...
- Un batch para el IBEX 35
- Un batch para el Eurostoxx50
- Un batch para todo el mercado continuo
- Un batch de índices
- Un batch de ETFs
- Un batch de los valores del S&P500
- Un batch de los valores del NASDAQ
- Otros que se propongan
Estas son tareas para los no programadores, el que se anime que me lo diga y coja uno. Tenemos que coordinar quien descargara y subirá por FTP todos los días las actualizaciones, yo no puedo ahora mismo porque me estoy mudando de piso y tendré que pedir internet y esos líos, así que no me quiero comprometer hoy mismo, quizás dentro de 2 semanas si. Esta tarea debería de ser automática prácticamente y cuestión de unos clicks, esperar 10 min a que descargue y listo!
Como crear un batch?
Tenemos dos tipos de batch, uno para descargar la información por primera vez, entre dos fechas y otro para actualizar el archivo desde la fecha mas reciente.
Para seguir un formato común pondremos el nombre del tipo IBEX_RETRIEVE.batch para obtener los datos por primera vez y otro IBEX_UPDATE.batch para actualizarlos diariamente.
Tenemos ejemplos de batch para actualizar y para importar en el post lab 4.
Para crear un batch solo se necesita Notepad, ved los ejemplos:
Crear un batch desde BolsaMadrid
En este caso seria:
name="nombre" value="ABENGOA"
name="isin" value="ES0105200416"
RETRIEVE VALUE ES0105200416 FROM BOLSAMADRID INITDATE 01/01/2006 ENDDATE 04/04/2006 TICKER ABENGOA
UPDATE VALUE ES0105200416 FROM BOLSAMADRID TICKER ABENGOA
Seguid las flechas hasta llegar a los historicos, presionar update, y obtener el dato para el batch de la URL.
RETRIEVE VALUE %5EIBEX FROM YAHOO INITDATE 01/01/2006 ENDDATE 04/04/2006 TICKER IBEX
UPDATE VALUE %5EIBEX FROM YAHOO TICKER IBEX
Seguir las flechas hasta llegar a los historicos, presionar update, y obtener el dato para el batch de la URL.
RETRIEVE VALUE 99624 FROM GOOGLE INITDATE 01/01/2006 ENDDATE 04/03/2006 TICKER CISCO
UPDATE VALUE 99624 FROM GOOGLE TICKER CISCO
En todos los RETRIEVE tendremos que intentar buscar las fechas con mayores valores posibles.
Queda claro que este proyecto colaborativo tiene la finalidad de buscar pautas de inversión y especulación mediante estadísticas y todos los métodos que se nos ocurran, necesitando históricos para empezar a trabajar en ello, dado que ninguno de nosotros recibimos un sueldo por hacer este trabajo, sino que es un hobby, no hay obligación de hacer tareas ni de cumplir plazos de tiempo, cada cual tiene su propio trabajo, familia y quehaceres varios...
Si se cree que se va a tener tiempo se toma una tarea mas larga, sino una mas corta si se ha tomado una tarea y no se tiene mas tiempo se deja un mensaje diciéndolo y otra persona puede continuar con la tarea.
Yo personalmente he dedicado varias decenas de horas en las ultimas semanas al proyecto y probablemente pueda dedicar muchas menos en los próximos meses debido a las condiciones de mi trabajo, voy a gestionar usuarios de sourceforge y responder dudas, y si tengo tiempo escribiré código y si no, lo dejare para mas adelante.
Creo que colaborar en el proyecto es beneficioso para todos aparte de mostrar una iniciativa por parte de la persona que es muy valorada, colaborar en un proyecto Open Source es algo que yo pondría en mi CV, aparte del beneficio que pueda obtener de los resultados del propio proyecto en si.
Comentario para los programadores:
Yo creo que se podría considerar hacer las pautas mediante scripting:http://www.beanshell.org/manual/bshmanual.html
Da mucho juego con las funcionalidades remotas, consola etc... Y las pautas de cada uno serian importables como fichero de texto.
Mirad el manual y me decís que os parece!
Juanmi apuesta por poner varios lenguajes de scripting... A gusto del programador, al menos uno!
NOTA: Como entiendo que para la gente que no sabe programar y que tiene conocimientos muy básicos de informática, es complicado colaborar, estoy trabajando en un interfaz gráfico, que sea ejecutable con un .exe normal desde windows y no necesite instalar java sino que ya lo lleve incluido (por supuesto la aplicación a descargar será mas pesada.)
NOTA 2: Tengo pensado hacer un coloquio con Francisco Llinares dentro de unas semanas, cuando tengamos mas funcionalidad y lo haya probado mas gente, para poder hablar de que el lo que quiere cada uno, y de las tareas que quiere hacer cada uno, con estos últimos posts hay material mas que de sobra para colaborar y en dos o tres semanas anunciamos el coloquio, ya que tendremos mas gente colaborando activamente y el sistema estará probado y conocido por otros muchos, eso espero...
Etiquetas: colaborar no programadores, laboratorio


Hola Dani,
A mi me encantaría colaborar con el tema de los batches ya que lo de programar no se me da muy bien jejeje.
Un saludo!
Me surge una pregunta... una vez que tengamos los datos actualizados, ¿por qué no reaprovechar un sistema de análisis del estilo de Metatrader o Ninjatrader para el resto de funcionalidades (análisis técnico, programación de sistemas/pautas)? ¿La finalidad es que todo el sistema sea software libre?
Un saludo,
Carlos
Sin lugar a dudas intentaremos integrarlo y darle compatibilidad con el resto de aplicaciones.
A que te refieres con que todo el sistema sea software libre? No le veo sentido a que no lo sea, ya que lo que nos interesa es que cualquiera pueda usarlo.
Perfecto Aru, vete empezando con alguno y lo pruebas en la aplicacion o me lo vas mandando y lo pruebo yo, pon un mensaje diciendo cual quieres para que otros no hagan el mismo!
Gracias!
Von Neuman (Dani)
Hola Dani, el proyecto me interesa pero ando un poco liado ahora con examenes y tampoco se como colaborar. Soy estudiante de física tal vez pueda ser de alguna ayuda. Intentaré seguir como pueda de momento a partir de julio estaré más libre.
P.S. Me gustaría ayudar con la programacion pero mis conocimientos son muy rudimentarios.
Un saludo
sitios como yahoo permiten bajarse los historicos en formato csv, que creo es mejor que analizar una hoja html con scripts de shell.
No se, a lo mejor me estoy columpiando...
Von Neuman, create un usuario en sourceforge, bajate el codigo, mirate los comentarios del foro, y ves que es en lo que puedes colaborar.
A dia de hoy ya descargamos 700M de historicos automaticamente mas 8000 tickers, eso lo tenemos que poner disponible en rankia, tenemos una persona mirando descargar futuros... y otros de rivados y otra persona haciendo graficas usando Flex, Juanmi esta mirando integrar la aplicacion con Tomacat para mostrar las graficas en Flex...
Seguro que puedes colaborar en alguna de las partes!
Un saludo,
Dani
Hola!
Me gustaría contribuir.
No soy programador y dispongo de poco tiempo. Utilizo habitualmente Linux y me encanta desarrollar cosillas que "hagan cosas solas". Como sería un poco el caso, quedo a vuestra disposición.
Ah!, my servidor estaría 24 horas disponible para bajar cosas, reenviarlas y similares...
Ya estoy dado de alta en Sourceforge. necesitaría que me integraseis en el grupo.
Gracias y saludos!
PS: utilizo Ninjatrader y he visto que el formato de fechas de los ficheros es distinto que el que estáis utilizando. Se ha previsto que esto pueda modificarse a la hora de bajarse los datos del repositorio de Rankia?
eswap, cual es tu usuario de sourceforge? Para el formato habra que hacer algo en la aplicacion, para que devuelva diferentes formatos, cual es el formato de ninjatrader? Que tal esta? Nunca lo he utilizado!
Un saludo,
Dani
Perdona, lo dí por obvio: mi usuario es "eswap" también en Sourceforge.
El formato de Ninjatrader lo podrás encontrar aquí: http://www.ninjatrader-support.com/HelpGuideV6/helpguide.html?HistoricalData
Con relación a Ninjatrader, bueno, no soy un broker avanzado, pero desde el principio me ha interesado mucho el trading automático y poder ejecutar backtests.
Combinando Ninjatrader con IB tienes las comisiones más bajas y una aplicación realmente avanzada y funcional: sin florituras pero muy potente.
Saludos!