mike87
Hola,
Estoy tratando de crear una medida que calcule el cambio diario del precio de una acción. Intenté usar la función LASTDATE, pero por alguna extraña razón, resulta el 31 de diciembre de 2017 en lugar de la fecha de hoy. La función MAX da el mismo resultado, pero MAXX me da el correcto (2 de noviembre de 2017). Sin embargo, MAXX está formateado como texto y no puedo formatearlo hasta la fecha.
El conjunto de datos no contiene filas después del 2 de noviembre. Supongo que LASTDATE, por alguna razón, interpreta la parte del año de la fecha en lugar del día.
Agregaré datos nuevos todos los días y quiero crear una medida que pueda mostrar en una visualización de tarjeta con cambios diarios. O cambios reales o porcentaje. ¿Alguien tiene alguna idea de cómo resolver la última fecha?
Los datos están estructurados así:
Columna 1: Precio de las acciones
Columna 2: Fecha
Zubair_Muhammad
En respuesta a mike87
Hola @ mike87
Pruebe esta MEDIDA.
Archivo adjunto aquí también
PriceChange = VAR LastPirce = CALCULATE ( VALUES ( Table1[Stock Price] ), FILTER ( Table1, Table1[Date] = MAX ( Table1[Date] ) ) ) VAR SecondLastDate = CALCULATE ( MAX ( Table1[Date] ), FILTER ( Table1, Table1[Date] < MAX ( Table1[Date] ) ) ) RETURN LastPirce - CALCULATE ( VALUES ( Table1[Stock Price] ), Table1[Date] = SecondLastDate )
v-jiascu-msft
Hola @ mike87,
¿Cómo lo intentaste? Están funcionando bien en mi prueba. Será mejor que cree una nueva tabla de fechas para trabajar con funciones de inteligencia de tiempo.
calendar = CALENDAR ( DATE ( 2017, 1, 1 ), DATE ( 2017, 12, 31 ) )
La fórmula de cambio diario podría ser así:
DailyChange = VAR yesterday = CALCULATE ( MIN ( 'table'[Stock Price] ), PREVIOUSDAY ( 'calendar'[date] ) ) RETURN DIVIDE ( yesterday, MIN ( 'table'[Stock Price] ), 0 )
¡Atentamente!
Valle
mike87
En respuesta a v-jiascu-msft
Gracias por tu respuesta Dale.
Todavía no he usado muchas variables. No obtengo los números correctos, pero parece que la función de inteligencia de tiempo realmente funciona con su enfoque.
¿Obtienes el cambio correcto?
v-jiascu-msft
En respuesta a mike87
Hola @ mike87,
Sí, suelo usarlo en tal escenario. Eso podría depender de su modelo de datos y de la imagen que cree. ¿Puedes compartir tu archivo pbix?
¡Atentamente!
Valle
mike87
En respuesta a v-jiascu-msft
@ v-jiascu-msft
He subido un par de imágenes del conjunto de datos y el tablero.
Se trata de datos de stock simples con precio de cierre y fechas.
Zubair_Muhammad
En respuesta a mike87
Hola @ mike87
Pruebe esta MEDIDA.
Archivo adjunto aquí también
PriceChange = VAR LastPirce = CALCULATE ( VALUES ( Table1[Stock Price] ), FILTER ( Table1, Table1[Date] = MAX ( Table1[Date] ) ) ) VAR SecondLastDate = CALCULATE ( MAX ( Table1[Date] ), FILTER ( Table1, Table1[Date] < MAX ( Table1[Date] ) ) ) RETURN LastPirce - CALCULATE ( VALUES ( Table1[Stock Price] ), Table1[Date] = SecondLastDate )
mike87
En respuesta a Zubair_Muhammad
Gracias @Zubair_Muhammad.
Eso funcionó perfectamente