Archive for the ‘Uncategorized’ Category

h1

ALM: Valorar bono y realizar ajuste de valor de mercado

19/07/2017

Se adjunta un Excel con explicaciones para dos tareas habituales en ALM:

  1. Valorar un bono: se calcula el valor de mercado (market value) de un bono de 100€, vencimiento en 8 años y cupón del 5% de manera teórica, y se compara con el mismo cálculo aplicando la curva spot. Si coinciden tanto valores de mercado como especialmente los rendimientos totales de mercado, la validación es correcta.
  2. Ajuste de mercado: puede darse la situación de que sea necesario valorar un bono utilizando en t=0 el valor de mercado provisto por un tercero (Bloomberg, tesorería, etc) para valorar el activo. En este caso se explica cómo hacer el ajuste en los cash flows de modo que el valor de mercado en T=0 sea el especificado por Bloomberg.

excel.icono

como valorar bono y market value adjustment

h1

Crear curva spot

19/07/2017

Para crear una curva spot se puede utilizar la lógica presente en el siguiente excel:

excel.iconocrear.matriz.spot

 

h1

ALM, curvas de escenarios

13/07/2017

Inicio una serie de artículos sobre ALM (Asset Liabilities Management, gestión de activos/pasivos en entornos financieros), orientado exclusivamente para informáticos que entran en este mundo.

En ALM se calculan todas las posibles estrategias de inversión de una entidad para maximizar su beneficio. Esto comprende evaluar una gran combinatoria de activos y hacer hipótesis de cómo el mundo real va a evolucionar (por ej. si subirán los tipos de interés, o si habrá una burbuja en el ladrillo, o si algún sector quebrará como la crisis de las .com como ocurrió en el año 2000), etc. Por eso se utilizan escenarios: conjuntos de datos (tablas) que dibujan curvas que representan la evolución de sectores. Estas tablas son calculadas por un conjunto de economistas, estadísticos, matemáticos, actuarios, informáticos, etc, y según el acierto o error en ellas de las estimaciones de estos profesionales en la gestión ALM de inversiones se obtendrán mejores o peores resultados. En ALM estas curvas son provistas por terceros y se utilizan para realizar cálculos.

Esas curvas pueden ser representadas mediante distintos criterios:

  • Tipos de interés: la rentabilidad que va a dar un activo desde hoy (t=0) hasta la fecha que elijamos. Esta rentabilidad es anual.
    ALM.escenario.curva.precios.tipos
    Para calcular la rentabilidad total de una inversión, se aplica la siguiente fórmula:RentabilidadTotal = ((1+tipoInt)^T) -1Así, para una inversión de 1€ hecha a un plazo de 7 años se obtendrían (1+0,345)^7 -1= 7,24%.La rentabilidad, a medida que pasa el tiempo, es mayor. Significa la incertidumbre por el “riesgo de crédito” (si prestas 1M a alguien para que te los devuelva en 10 años, hay más probabilidad de que en 10 años le suceda una catástrofe y no pueda devolvértelos, que si establecéis que el plazo de devolución sea sólo un año).
  • Precios: esta forma de expresar una curva de escenario indica cuánto has de invertir hoy (t=0) para obtener 1€ en el plazo que elijas. Viendo la tabla anterior, si quieres ganar un euro en 6 años, hoy deberías invertir 0,98681109€. Sigue la misma filosofía que los tipos de interés, pero se representa de manera inversa, pues como cuánto más tiempo pase mayor es el tipo de interés (condiciones) que vas a imponer a quien prestas dinero, menos capital inicial necesitas invertir ahora (t=0).

La conversión entre tipoInterés y Precio se calcula de la siguiente manera:

  • tipoInterés = (1/Precio)^(1/T)-1  (siendo T el correspondiente plazo).
  • Precio = 1/(1+tipoInterés)^T

Estas curvas suelen ser provistas en formato anual, de modo que se pueden hacer los cálculos utilizando esta frecuencia. Si se desease mayor precisión, mayor granularidad, sería necesario interpolarlas. Para ello se utilizan los siguientes métodos de interpolación:

  • Curva de tipos: interpolación lineal.
  • Curva de precios: interpolación exponencial.

En este excel se puede ver con mayor detalle:

excel.iconoALM_blog_tipos_vs_precios_interpolación

Igualmente se utilizan otras curvas:

  • Curva spot: Indica cuánto has de invertir ahora para obtener 1€ en el plazo que se elija. Va de 0 al vencimiento. Ej: 1, 0.98, 0.96, 0.95, etc. Se interpreta “para ganar 1€ en tres años he de invertir hoy (t=0) 0.95€”. En t=0 siempre es “1” pues es lo que inviertes y recuperas sin dejar pasar tiempo.
  • Curva de rendimientos: Es la inversa de la curva spot, se interpreta como “si invierto 1€, cuánto tengo en 3 años?”. ej. de curva: 1, 1.04, 1.05, etc…
  • Curvas forward y yield, curvas internas (se desarrollará en otro artículo).

más conocimientos complementarios se pueden encontrar en este artículo de Pablo Montero en el blog de Mirai. (Mirror en PDF).

h1

Dolphin sin opción de comprimir ficheros

19/02/2016

En las últimas versiones de KDE (como la incluída en Kubuntu 15.10)  Dolphin viene sin la opción de comprimir ficheros en el menú contextual del ratón.

Para incluirlo, es tan sencillo como ejecutar lo siguiente desde shell:

sudo ln /usr/share/kde4/servicetypes/konqpopupmenuplugin.desktop /usr/share/kservicetypes5/konqpopupmenuplugin.desktop

dolphin.con.menu.comprimir

 

Fuente: AskUbuntu

h1

Error No existe el archivo o el directorio #include

10/01/2016

 

PROBLEM

carlos@shirley:~/egg/64$ make gcc -g -ansi -Wall -DLinux -DUSLEEP -D_GNU_SOURCE -DUSB_SERIAL -DALT_UI -DNO_UI -DPACKETDUMP -DHEXDUMP -DREPORT=1 -DEGG_DYNAMIC   -c -o eggui.o eggui.c
eggui.c:39:20: fatal error: curses.h: No existe el archivo o el directorio
#include <curses.h>
compilation terminated.
make: *** [eggui.o] Error 1

SOLUTION

carlos@shirley:~/egg/64$ sudo apt-get install libncurses5-dev

h1

Problems while installing Genymotion on old Ubuntu’s versions

07/01/2016

Some common problems and their solutions while installing Genymotion on Ubuntu Trusty 14.04:

PROBLEM
carlos@WhenIGrewUp:~/apps/genymotion$ sudo ./genymotion
./genymotion: error while loading shared libraries: libQt5Script.so.5: cannot open shared object file: No such file or directory

SOLUTION
carlos@WhenIGrewUp:~/apps/genymotion$ sudo apt-get install libqt5scripttools5  libqt5qml5  qt5-qmake


 

PROBLEM
carlos@WhenIGrewUp:~/apps/genymotion$ sudo ./genymotion
ene. 6 19:52:15 [Genymotion] [Warning] QSslSocket: cannot resolve SSLv2_client_method

SOLUTION
carlos@WhenIGrewUp:~/apps/genymotion$ sudo apt-get install libssl0.9.8


 

PROBLEM
carlos@WhenIGrewUp:~/apps/genymotion$ sudo ./genymotion
ene. 6 19:52:15 [Genymotion] [Warning] QSslSocket: cannot resolve SSLv2_client_method

SOLUTION
carlos@WhenIGrewUp:~/apps/genymotion$ sudo apt-get install libssl0.9.8


From my experience, it’s fully recommended upgrading to any later Ubuntu (if possible) to make Genymotion work.

 

ALTERNATIVE: download a previous version of Genymotion (2.5.2),

 

h1

Navegación lenta en Chromium/Linux

04/09/2015
Si se sufre una navegación ralentizada en los navegadores Chrome/Chromium, esto puede deberse, entre otros factores, a una alta fragmentación en la base de datos que utiliza internamente. Es recomendable limpiarla periodicamente (semestralmente para un uso particular es suficiente). Para ello, se pueden aplicar los siguientes pasos:
1º) Hacer backup del directorio de configuración:

carlos@WhenIGrewUp:~$  cp -R /home/carlos/.config/chromium /home/carlos/config/chromium_BACKUP

2º) Instalar Sqlite3:

carlos@WhenIGrewUp:~$ sudo apt-get install sqlite3

 3º) Descargar el siguiente script:

carlos@WhenIGrewUp:~$ wget  https://raw.githubusercontent.com/skydrome/random/master/shell/browser-vacuum.sh

y darle permisos:
carlos@WhenIGrewUp:~$ chmod 755 browser-vacuum.sh
3º) Ejecutarlo

carlos@WhenIGrewUp:~/.config$ ./browser-vacuum.sh
[carlos] Scanning for firefox                 [found]
[default]
Cleaning  permissions.sqlite                  done ∘
 Cleaning  cookies.sqlite                      done - 1056 KB
 Cleaning  content-prefs.sqlite                done ∘
 Cleaning  extensions.sqlite                   done ∘
 Cleaning  addons.sqlite                       done ∘
 Cleaning  search.sqlite                       done ∘
 Cleaning  formhistory.sqlite                  done ∘
 Cleaning  signons.sqlite                      done ∘
 Cleaning  webappsstore.sqlite                 done ∘
 Cleaning  places.sqlite                       done - 7680 KB
 Cleaning  cookies.sqlite.bak                  done - 384 KB
 Cleaning  healthreport.sqlite                 done ∘
 Cleaning  urlclassifier3.sqlite               done - 18368 KB
[carlos] Scanning for chromium                [found]
Waiting for chromium to exit....... kill it? [y|n]: y
[Default]
 Cleaning  Favicons                            done - 5060 KB
 Cleaning  Web Data                            done - 930 KB
 Cleaning  Top Sites                           done - 100 KB
 Cleaning  Cookies                             done - 1852 KB
 Cleaning  Network Action Predictor            done - 2254 KB
 Cleaning  Extension Cookies                   done ∘
 Cleaning  QuotaManager                        done - 4 KB
 Cleaning  WebRTCIdentityStore                 done - 2 KB
 Cleaning  Origin Bound Certs                  done ∘
 Cleaning  History                             done - 50840 KB
 Cleaning  Shortcuts                           done - 340 KB
 Cleaning  Login Data                          done ∘
Total Space Cleaned: 88870 KB

defragmentacion.BD.sqlite.Chromium