Anoche recibí una invitación a Google Wave. No voy a perder el tiempo explicando qué es porque Google lo explica ya bastante bien y porque confío en que dentro de poco todo el mundo lo habrá aprendido conmigo o sin mí. Baste con decir que lo llaman "el correo del futuro" (cosa cierta a día de hoy pero falsa en cuanto el producto salga a la luz de manera oficial. Breve Veritas). Nada más recibirla me puse a ver el vídeo con la presentación de la versión beta actual y me he quedado realmente impresionado con las posibilidades que ofrece. Entre ellas (aunque no los las más representativas) ponían ejemplos de traducción simultánea a otros idiomas y la capacidad de insertar documentos embebidos (pdf's, vídeos...). La verdad es que, a día de hoy, este correo del futuro me permite hablar solamente con cuatro personas y hay una de ellas a las que no conozco. Y la herramienta de traducción simultánea debe estar aún en desarrollo, porque no la he encontrado por ninguna parte. Finalmente he usado el GW para chatear un rato (de una forma bastante divertida) con un amigo que vive aquí al lado al que vi ayer, al que he vuelto a ver un par de horas después y al que volveré a ver mañana.
Por otro lado, precisamente ayer recibí un paquete por correo. Me refiero al correo clásico, al de avión-tren-camionetaamarilla. En fin, "el correo del pasado". Se trataba nada menos que de una carta de mi amigo el Uzbeco al que estuve ayudando con su tesis hasta el final. Resulta que, con la carta manuscrita, me había adjuntado un documento: Un libro de Honoré de Balzac en versión alemana que me regala por mi ayuda con su tesis. Nada más recibirlo comencé a leer la carta, que está redactada en inglés y con los renglones caídos a medida que avanza cada carilla.
No he podido evitar sorprenderme un momento por el contraste de estas situaciones: El correo del futuro me permite hablar en la web con mi vecino al que veo a diario y no tiene la herramienta de traducción que todos esperamos que nos una sin necesidad de aprender idiomas, mientras que por el arcaico correo tradicional un uzbeco escribe en inglés a un español una carta con el libro de un francés en versión alemana. Una paradoja ante la que mi corazón clásico y enamorado del susurro del papel (perdonad que me enternezca en público) no puede dejar de sonreír.
Mostrando entradas con la etiqueta tesis. Mostrar todas las entradas
Mostrando entradas con la etiqueta tesis. Mostrar todas las entradas
viernes, 13 de noviembre de 2009
jueves, 24 de septiembre de 2009
CIR model
La tesis del uzbeco se alarga. Repasando los códigos descubrí que no había hecho ninguna predicción usando el modelo de Cox Ingersoll y Ross, sino que había repetido la rutina con el modelo de Vasicek. Como suele pasar en estos casos la rutina que no había probado tiene fallos...
Los he ido corrigiendo y me he hecho un buen lío buscando cuál es la expresión correcta para la función de densidad de probabilidad... finalmente he descartado la distribución chi quadrado no centrada. He supuesto que esa sirve para predicciones a más de un día vista (de ahí que sea suma de normales) o bien que es para un modelo de tiempo contínuo (de ahí que utilice un valor tan raro para el número de grados de libertad). El caso es que los resultados no tenían sentido y he terminado por utilizar una normal con varianza = sigma cuadrado por la raíz del tipo de interés predicho. Eso es lo que se deduce de las ecuaciones diferenciales... y la verdad es que me ha funcionado. Las predicciones son casi iguales que para el modelo de Vasicek.
SIN EMBARGO, algunas veces (una de cada no sé cuantas) vuelven a salir resultados absurdos con la distribución normal. Tiene lógica que no salga siempre el mismo resultado, porque para la identificación de parámetros, estoy generando puntos aleatorios para usarlos como punto de comienzo del algoritmo de minimización. Uso más de 540 distintos cada vez y me quedo con la mejor solución. Esto es necesario porque existen muchos mínimos locales (o podrían existir) y el mínimo al que llegamos depende mucho del punto de inicio del algoritmo. Pues bien, he estado comprobando el número de soluciones distintas y blablabla y parece ser que la función es tan tortuosa que el algoritmo casi siempre termina en mínimos locales (soluciones sin sentido). Mi sospecha (y casi convicción) es que, probablemente eso es lo que ha estado pasando al usar la distribución de chi cuadrado, sólo que en ese caso la función tiene aún más mínimos locales y nunca llegué al mínimo absoluto.
Así se queda. Con llegar una sola vez a la solución me basta para hacer la gráfica. Los resultados tienen sentido y la ecuación que he usado tiene cierta lógica. Habría que mirar muy de cerca y saber mucho para decir con certeza que eso está mal. Así que listo. A seguir con Longstaf & Schwartz, que lo dejé a medias.
Cerrad la boca y que la fuerza os acelere
Los he ido corrigiendo y me he hecho un buen lío buscando cuál es la expresión correcta para la función de densidad de probabilidad... finalmente he descartado la distribución chi quadrado no centrada. He supuesto que esa sirve para predicciones a más de un día vista (de ahí que sea suma de normales) o bien que es para un modelo de tiempo contínuo (de ahí que utilice un valor tan raro para el número de grados de libertad). El caso es que los resultados no tenían sentido y he terminado por utilizar una normal con varianza = sigma cuadrado por la raíz del tipo de interés predicho. Eso es lo que se deduce de las ecuaciones diferenciales... y la verdad es que me ha funcionado. Las predicciones son casi iguales que para el modelo de Vasicek.
SIN EMBARGO, algunas veces (una de cada no sé cuantas) vuelven a salir resultados absurdos con la distribución normal. Tiene lógica que no salga siempre el mismo resultado, porque para la identificación de parámetros, estoy generando puntos aleatorios para usarlos como punto de comienzo del algoritmo de minimización. Uso más de 540 distintos cada vez y me quedo con la mejor solución. Esto es necesario porque existen muchos mínimos locales (o podrían existir) y el mínimo al que llegamos depende mucho del punto de inicio del algoritmo. Pues bien, he estado comprobando el número de soluciones distintas y blablabla y parece ser que la función es tan tortuosa que el algoritmo casi siempre termina en mínimos locales (soluciones sin sentido). Mi sospecha (y casi convicción) es que, probablemente eso es lo que ha estado pasando al usar la distribución de chi cuadrado, sólo que en ese caso la función tiene aún más mínimos locales y nunca llegué al mínimo absoluto.
Así se queda. Con llegar una sola vez a la solución me basta para hacer la gráfica. Los resultados tienen sentido y la ecuación que he usado tiene cierta lógica. Habría que mirar muy de cerca y saber mucho para decir con certeza que eso está mal. Así que listo. A seguir con Longstaf & Schwartz, que lo dejé a medias.
Cerrad la boca y que la fuerza os acelere
lunes, 21 de septiembre de 2009
Tesis ajenas nunca fueron buenas
Pues hoy es lunes, así que según la costumbre he tenido la clase de español. Como tenía que prepararlas (sí, hace falta prepararlas. Ahora lo explico) y eso me suele llevar de cuatro y media o cinco de la tarde hasta las siete, he echado toda la mañana programando en Matlab un trabajito que tengo entre manos y que empieza a correr prisa. Después de comer, sin tomarme ni un descanso, me he vuelto a poner con Matlab casi hasta las cinco. Tras preparar las clases me he ido en bici a casa de la familia B. a la que enseño en el salón de su casa. A las 20:30 he salido de vuelta en bici (no es que yo sea especialmente ecologista, sino que no tengo otro medio de transporte), he hecho la cena, he cenado y aquí estoy. Destrozado, para el arrastre.
¿Y ahora qué? Pues ahora (en cuanto acabe este post) me pondré otra vez a programar. Y me pregunto: ¿si estoy en paro, cómo es que no paro?.
Lo que ocurre es que tengo un amigo que estudia economía, está haciendo su tesis del máster. Había decidido introducir en su tesis un capítulo con precdicciónes de tasas de interés a corto plazo blablablá y blablablá, para lo que le convenía aprender a programar en Matlab. Al chiquillo, con su metro noventa y cuatro de estatura le ha pillado el toro (le quedan dos semanas para entregar el trabajito) y ha calculado que no tiene tiempo para ponerse a aprender a programar y hacer las predicciones. Y, "en sabiendo que yo pregono destreza, experiencia y profundo conocimiento" del citado programa, me ha pedido que le haga esa parte del trabajo.
- Bueno, vale. Pero no me pidas saber economía, sólo matemáticas. Tú dame las ecuaciones que haya que implementar y resolver y yo lo hago.
- Of course, of course. - (Bueno, el chaval es de Uzbequistán y estudia en alemania, así que no habla Español)
En la siguiente escena se me ve a mí con unos cuatro o cinco documentos pdf sobre economía (en inglés, que nadie lo dude) leyendo, no las ecuaciones a implementar, sino todo el desarrollo matemático que sustenta los modelos económicos que el muy uzbeco está tratando. ¡Qué cabrón! jajaja.
[Sáltese esta parte si le aburren los detalles]
Para los que tengan idea de ese mundillo los cito brevemente: Affine models, de los que hay "one-factor" y "two-factor models. Entre ellos: Cassical / extended Vasicek Model, classical / Extended CIR model, Longstaff and schwartz model ... Para cada modelo suele haber más de un posible enfoque.
Mi trabajo consiste en:
-Tomar las ecuaciones que rigen el enfoque seleccionado de cada modelo e implementarlas en función de parámetros.
-Tomar datos reales de los tipos de interés y usarlos para hacer un ajuste de parámetros (en jerga económica inglesa "calibration" of the model).
-Con los parámetros, extrapolar la ecuación para predecir futuros valores de los tipos de interés.
¿y ya? No.
-Luego tengo que generar las gráficas comparando los resultados de las predicciones con los datos reales correspondientes al periodo predicho.
Como sabrá cualquier aficionado a la matemática aplicada, existen muchos métodos para hacer un ajuste de parámetros (el que esté pensando en regresiones lineales que deje de leer y se meta en empresariales) : least squares minimization, the maximum likelihood method, the general method of the moments, Kalman filter... Y aunque conocía la mitad, nunca había puesto en práctica más que el primero (LSM).
Total, que como es un amigo, está más agobiao que un gorila metido en un tanque y me necesita, aquí llevo ya más de una semana aprendiendo economía, programando en Matlab, aprendiendo aspectos prácticos de los distintos algoritmos de minimización y ajuste de funciones, sacando gráficas YYYYY (porque también me lo ha pedido) poniendo por escrito los resultados y los detalles de implementación de los algoritmos.
¿Que le estoy haciendo yo la tesis? No exageremos. Él mismo ha sacado hoy ese tema y me ha dicho que al menos un cuarto de su tesis es lo que yo estoy haciendo. Pues no, ni me quejo ni le cobro (que también me lo ha ofrecido. Aunque sí le dejaré echarme una mano para comprar un vuelo). Y no es que yo sea el mejor amigo del mundo, si me pidiera dinero para una cerveza lo mandaría a la mierda. Lo que pasa (me viene a la cabeza "un artista del hambre") es que me encanta programar y que me necesiten.
Supongo que la mayoría de lectores pensarán llegado este punto que soy tonto. Sí, yo soy el tonto. Pero mientras el resto de los parados ven series de televisión, yo adorno mi currículum con una colaboración en una tesis de máster en economía sobre modelos y predicción de tipos de interés, me aprendo al dedillo los detalles de la minization Toolbox de Matlab y cojo experiencia en ajuste de funciones y predicción probabilística. Además, el tonto es, de todos los parados, el que tiene alojamiento y billete de vuelta gratis para un viaje a Alemania y el tonto os puede asegurar que sabe muy bien cómo aprovechar ese viaje: Haciendo entrevistas de trabajo en la pequeña e industrializada Alemania.
Como esta entrada se me ha alargado mucho y como se hace tarde y el sueño me acecha, dejaré para otra ocasión las historias sobre las clases de español y sobre si hay o si no hay que prepararlas.
Buenas noches. Y que la fuerza os acelere.
¿Y ahora qué? Pues ahora (en cuanto acabe este post) me pondré otra vez a programar. Y me pregunto: ¿si estoy en paro, cómo es que no paro?.
Lo que ocurre es que tengo un amigo que estudia economía, está haciendo su tesis del máster. Había decidido introducir en su tesis un capítulo con precdicciónes de tasas de interés a corto plazo blablablá y blablablá, para lo que le convenía aprender a programar en Matlab. Al chiquillo, con su metro noventa y cuatro de estatura le ha pillado el toro (le quedan dos semanas para entregar el trabajito) y ha calculado que no tiene tiempo para ponerse a aprender a programar y hacer las predicciones. Y, "en sabiendo que yo pregono destreza, experiencia y profundo conocimiento" del citado programa, me ha pedido que le haga esa parte del trabajo.
- Bueno, vale. Pero no me pidas saber economía, sólo matemáticas. Tú dame las ecuaciones que haya que implementar y resolver y yo lo hago.
- Of course, of course. - (Bueno, el chaval es de Uzbequistán y estudia en alemania, así que no habla Español)
En la siguiente escena se me ve a mí con unos cuatro o cinco documentos pdf sobre economía (en inglés, que nadie lo dude) leyendo, no las ecuaciones a implementar, sino todo el desarrollo matemático que sustenta los modelos económicos que el muy uzbeco está tratando. ¡Qué cabrón! jajaja.
[Sáltese esta parte si le aburren los detalles]
Para los que tengan idea de ese mundillo los cito brevemente: Affine models, de los que hay "one-factor" y "two-factor models. Entre ellos: Cassical / extended Vasicek Model, classical / Extended CIR model, Longstaff and schwartz model ... Para cada modelo suele haber más de un posible enfoque.
Mi trabajo consiste en:
-Tomar las ecuaciones que rigen el enfoque seleccionado de cada modelo e implementarlas en función de parámetros.
-Tomar datos reales de los tipos de interés y usarlos para hacer un ajuste de parámetros (en jerga económica inglesa "calibration" of the model).
-Con los parámetros, extrapolar la ecuación para predecir futuros valores de los tipos de interés.
¿y ya? No.
-Luego tengo que generar las gráficas comparando los resultados de las predicciones con los datos reales correspondientes al periodo predicho.
Como sabrá cualquier aficionado a la matemática aplicada, existen muchos métodos para hacer un ajuste de parámetros (el que esté pensando en regresiones lineales que deje de leer y se meta en empresariales) : least squares minimization, the maximum likelihood method, the general method of the moments, Kalman filter... Y aunque conocía la mitad, nunca había puesto en práctica más que el primero (LSM).
Total, que como es un amigo, está más agobiao que un gorila metido en un tanque y me necesita, aquí llevo ya más de una semana aprendiendo economía, programando en Matlab, aprendiendo aspectos prácticos de los distintos algoritmos de minimización y ajuste de funciones, sacando gráficas YYYYY (porque también me lo ha pedido) poniendo por escrito los resultados y los detalles de implementación de los algoritmos.
¿Que le estoy haciendo yo la tesis? No exageremos. Él mismo ha sacado hoy ese tema y me ha dicho que al menos un cuarto de su tesis es lo que yo estoy haciendo. Pues no, ni me quejo ni le cobro (que también me lo ha ofrecido. Aunque sí le dejaré echarme una mano para comprar un vuelo). Y no es que yo sea el mejor amigo del mundo, si me pidiera dinero para una cerveza lo mandaría a la mierda. Lo que pasa (me viene a la cabeza "un artista del hambre") es que me encanta programar y que me necesiten.
Supongo que la mayoría de lectores pensarán llegado este punto que soy tonto. Sí, yo soy el tonto. Pero mientras el resto de los parados ven series de televisión, yo adorno mi currículum con una colaboración en una tesis de máster en economía sobre modelos y predicción de tipos de interés, me aprendo al dedillo los detalles de la minization Toolbox de Matlab y cojo experiencia en ajuste de funciones y predicción probabilística. Además, el tonto es, de todos los parados, el que tiene alojamiento y billete de vuelta gratis para un viaje a Alemania y el tonto os puede asegurar que sabe muy bien cómo aprovechar ese viaje: Haciendo entrevistas de trabajo en la pequeña e industrializada Alemania.
Como esta entrada se me ha alargado mucho y como se hace tarde y el sueño me acecha, dejaré para otra ocasión las historias sobre las clases de español y sobre si hay o si no hay que prepararlas.
Buenas noches. Y que la fuerza os acelere.
Suscribirse a:
Entradas (Atom)