Futuros

Cortos

I.

Todo lo que uno necesita saber sobre los espacios de colores (y nunca supo que lo necesitaba preguntar).

II.

Todos estos asuntos sobre la intermitencia de las energías renovables, etc., ¡son tan estadísticos/probabilísticos! ¿Cómo no quererlos?

III.

Otro artículo sobre la reducción de la varianza. Esta vez, el de los precios del pescado en el sur de la India. El gráfico que lo dice todo es este:

Otro de los instrumentos para reducir la varianza de los precios son los mercados, en general y los de futuros en particular. Pero a principios del siglo que corre, cuando andaba por aquella parte del mundo, el gobierno de la India decidió hacer esta cosa que me ha recordado Claude-3-Opus (al que cito):

Habiendo mónadas, ¿quién quiere callbacks?

R

Nunca me he visto en la tesitura de tener que usar callbacks porque no son mi guerra. Pero por lo que he oído de la gente que sabe mucho más que yo, son uno de esos infiernos de los que hay que huir con el mismo pavor que de los fors, los ifs, los elses (¡argggg! ¡he escrito else!) y los whiles.

Una pequeña maravilla teórica que me ha hecho replantearme la absoluta inutilidad de aquello que estudié en Álgebra III (funtores y demás) son las mónadas.

¿Cuánto tarda en ejecutarse este código?

R

Es:

library(future)

plan(multiprocess, workers = 4)

system.time({
  a1 <- future({Sys.sleep(7); 1})
  a2 <- future({Sys.sleep(1); 1})
  a3 <- future({Sys.sleep(1); 1})
  a4 <- future({Sys.sleep(1); 1})
  a5 <- future({Sys.sleep(1); 1})
  a6 <- future({Sys.sleep(1); 1})
  a7 <- future({Sys.sleep(1); 1})

  res <- sapply(list(a1, a2, a3, a4, a5, a6, a5), value)
})

Piensa antes las posibles opciones:

  • ~8 segundos: ejecuta primero a1-a4 en 7 segundos y luego a5-a7 en un segundo adicional.
  • ~7 segundos: ejecuta primero a1-a4, pero cuando acaban a2-a4, lanza a5-a7, que terminan antes que a1
  • ¿Otras?

Vosotros mismos.

R en paralelo (pero ahora, con futuros)

R

Esta entrada extiende y mejora una homónima de 2014.

El problema de entonces consistía en calcular por separado y en paralelo objetos A, B y C para combinarlos después. Cuando, por supuesto, el cálculo de A, B y C es pesado.

El muy reciente paquete future incorpora a R un mecanismo disponible en otros lenguajes de programación: un cierto tipo de datos, los futuros, que contienen promesas de valores que se calculan fuera del hilo principal del programa. Se usan, por ejemplo, para realizar llamadas a APIs, operaciones de IO o (y esto es más pertinente para usuarios de R) cálculos que llevan su tiempico.

Ingeniería fiscal para mi hipoteca: ¿vendo un futuro?

Tengo una hipoteca. El tipo de interés que pago es el Euribor a 12 meses más un diferencial. He usado una calculadora de hipotecas y he descubierto que si el Euribor sube un 1%, mi cuota (anual, es decir, sumando los incrementos de los 12 meses) se incrementaría en 660 euros.

Y me he preguntado: ¿existe algún producto financiero que me dé dinero si sube el Euribor? ¿Existe alguna manera de protegerme de una subida del índice?