En el post de hoy vamos a hablar sobre la forma de calcular en Power BI saldos medios para poder usarlos en nuestros cálculos de ratios de nuestros modelos financieros.
Vamos a tomar como base de nuestro ejemplo el cálculo de la rentabilidad económica, también conocida como ROA (Return On Assets).
Este ratio se enfoca en la eficiencia de la empresa en el uso de sus activos para generar ganancias, y se calcula como el cociente entre el beneficio antes de intereses e impuestos y los activos totales medios.
La fórmula DAX quedaría de la siguiente forma:
ROA = DIVIDE(
[BAII],
[AT Medio]
)
Y ahora viene la pregunta: ¿cómo calculamos en Power BI el activo total medio?.
Si somos un agente externo a la empresa, únicamente tendremos disponible la información de las cuentas anuales publicadas en el registro mercantil, con lo que tendremos que conformarnos con calcular el AT Medio como la media entre el activo del cierre de ejercicio N y el del cierre del ejercicio N-1:
AT Medio = (AT + AT PY)/2
*AT PY => Activo Total previous year.
Sin embargo, si tenemos acceso a la contabilidad de la empresa, ya seamos parte de su equipo financiero o consultores externos, tenemos la opción de montar en Power BI un informe financiero conectado al libro diario.
En ese caso, podemos calcular el Total Activo a cada una de las fechas de nuestro modelo.
Por tanto, podríamos optar por sacar un saldo medio del activo a través de una tabla virtual con DAX, que nos refleje el saldo para cada una de las fechas de nuestro calendario:
AT Medio = AVERAGEX(
ADDCOLUMNS(
VALUES(dimCalendario[Fecha]),
«@TA», [Total Activo]
),
[@TA]
)
En esta fórmula, la parte que va dentro del ADDCOLUMNS nos creará la tabla virtual con el saldo para cada fecha:
El AVERAGEX calculará la media sobre los valores de la columna de la tabla virtual que tiene los valores del total activo (@TA).
Con ello, obtendremos un dato mucho más representativo que si cogemos únicamente los 2 valores de los cierres de ejercicio N y N-1.
Opción 2: También podríamos optar por calcular la media de los valores del activo únicamente de los saldos de cada cierre mensual (y no de todos los días como en la propuesta anterior), ya que quizás solo queremos fiarnos de los datos de cierres mensuales revisados, una vez incluidas amortizaciones, regularización de existencias, asientos de nóminas, periodificaciones….
En ese caso, la fórmula debe crear una tabla virtual con los valores del total activo a cierre de cada uno de los meses:
AT Medio 2 = AVERAGEX(
ADDCOLUMNS(
VALUES(dimCalendario[Año-Mes]),
«@TA», [Total Activo]
),
[@TA]
)
Obtendríamos la siguiente tabla virtual sobre la que calcular el AVERAGEX:
Una vez calculado el AT Medio con alguna de las 2 opciones anteriores, la fórmula del ROA quedaría de la siguiente forma:
ROA = DIVIDE(
[BAII],
[AT Medio]
)
Debemos tener en cuenta que el ROA es calculado comúnmente al cierre de los ejercicios, con lo que el numerador de la función, el BAII, hace referencia al resultado del ejercicio completo.
Por ello, si ponemos nuestros cálculos en una tabla a nivel de año, los cálculos van a ser los esperados:
Sin embargo, si en lugar de poner nuestra tabla a nivel de año, la ponemos a nivel de año-mes, vamos a tener nuestro activo total medio con los saldos medios de cada mes, mientras que el BAII va a ser el resultado de ese mes únicamente, con lo que el ROA va a salir con cifras mucho más bajas de las mostradas para el mismo ratio en la tabla a nivel anual:
Por ello, debemos tener cuidado del contexto temporal en el que evaluamos nuestra medida y, en caso de que no vaya a evaluarse a nivel anual, debemos darle una vuelta a nuestros cálculos…
Podríamos optar por calcular un rolling year sobre el BAII (en este post de mi blog explicaba cómo calcular el rolling year: Link ) , o un year to date ponderado por el número de días que han transcurrido desde el inicio de ejercicio (pudiendo hacer también un year to date del cálculo del activo medio).
También debemos considerar que si optamos por el rolling year para el cálculo del BAII, los cálculos de los primeros 11 meses de nuestros datos (en nuestro ejemplo desde 2022-01 hasta 2022-11) no van a ser representativos, ya que el rolling year no va a poder acumular el BAII de un año completo al no haber datos para los meses del ejercicio 2021.
Conclusión: Quizás prefiramos no complicar los cálculos y quedarnos con la evaluación de nuestro ratio únicamente a nivel anual, pero si queremos ver una evolución mensual debemos valorar alguna de estas otras opciones comentadas.
Si estas otras opciones generan interés igual me anime más adelante a grabar un pequeño vídeo sobre el tema, ya que sería demasiado extenso para un post…
Espero que te haya resultado interesante y puedas ponerlo en práctica en tus proyectos.
PD: Si quieres aprender cómo crear modelos financieros en Power BI conectados al libro diario de las empresas y más técnicas como ésta, no dejes pasar la oportunidad de adquirir el curso que he preparado para la academia Namasdata. Te dejo el enlace por aquí : Link
Seguimos!!! 👊