Estoy a punto de implementar una variación del modelo de mercado LIBOR (completo con Least-Square-Montecarlo, calibración, precios, etc.) y decidí implementarlo en C#.
La implementación implicará trabajar con datos estadísticos, optimización numérica y monte carlo. Como domino R, C++, C# y Mathematica, suelo distribuir la carga de trabajo entre las plataformas según sus puntos fuertes. Así: Mathematica para la optimización, R para el análisis estadístico y C#/C++ para la fuerza bruta de montecarlo, etc.
La semana pasada se me encomendó la tarea de crear un entorno distribuible de fijación de precios y gestión de riesgos para el modelo de mercado del Libor al que se pueda acceder a través de MS-Excel.
He optado por C# porque es muy fácil interactuar con Excel a través de Excel-DNA (Una vez hice la interfaz con C++ pero no es tan conveniente como C#)
Por lo tanto, estoy buscando soluciones bien documentadas para:
- estadísticas (para la estimación de una matriz de convarianza) - ¿tal vez enlazando con R?
- numérico (reducción del rango, descomposición de la matriz) - ALGLIB - ¿hay alguna alternativa?
- optimización ( para calibración - sobre todo necesito métodos no gradientes )
- visualización (la gente de la gestión de riesgos suele les gustan los gráficos bonitos.) - C# tiene un entorno de gráficos. Nunca lo he utilizado y no sé si es bueno.
También hay que tener en cuenta: Se me permite hacer una versión algo alterada del código disponible para el público . Por lo tanto, sería bueno que los paquetes/add-ins estuvieran disponibles de forma gratuita para uso no comercial.