Check your eligibility for this 50% exam voucher offer and join us for free live learning sessions to get prepared for Exam DP-700.
Get StartedDon't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.
Tengo un modelo con cinco tablas.
La tabla de hechos ('InstrumentTransactions') tiene fechas de cantidad de existencias compradas o vendidas.
La tabla que registra el valor de una acción se encuentra en la tabla InstrumentExchangeRate
Para calcular la cantidad poseída en un momento dado, la calculo como un saldo o un inventario así:
Qty Running Total = CALCULATE(
SUM( InstrumentTransaction[Amount] ),
FILTER(
ALL( DimTradeDate ),
DimTradeDate[dimDateKeyAsDate] <= MAX( DimTradeDate[dimDateKeyAsDate] )
)
)
Donde Cantidad es la cantidad real comprada o vendida en DimTradeDate
Ahora aquí viene la parte interesante y es Multiplique la cantidad poseída con la última tasa en un momento dado.
La tabla 'InstrumentExchangeRate' contiene la fecha y el nuevo tipo de cambio para cualquier ticker. Para simplificar, solo vamos a ver un ticker.
Ahora quiero calcular, usando una medida DAX, el valor del ticker A a través de TODAS las fechas.
Por ejemplo, compro 100 el 1.1.2022 y vendo 50 el 24.2.2022, entonces mis datos se verían así:
(tenga en cuenta que mis fechas están en dd.mm.AAAA)
Por alguna razón, no he podido encontrar una solución sobre esto.
Aquí hay un archivo con ejemplos codificados de cómo se ve el modelo y los datos.
FindLatestValue en SDC table.pbix
Hola
Puede descargar mi archivo PBI desde aquí. Vea la tercera tabla en la imagen.
Espero que esto ayude.
Estoy modificando la tabla para que solo tenga un valor máximo de 1 por día. Observe la tabla InstrumentExchangeRate como una dimensión que cambia lentamente
La gráfica se engrosa: es un modelo de Analysis Services. No puedo compartir el archivo ni usar PQ :I
Hola
Asegúrese de que las fechas del objeto visual se arrastran desde la tabla del calendario. Pruebe estas medidas
Precio = suma('InstrumentExchangeRate'[Valor])
Último precio conocido =
Hola, agregué una relación entre la tabla del calendario y la tabla de intercambio y funciona.
Last known price =
VAR _Balance =
CALCULATE (
[new Price],
LASTNONBLANK ( 'DimTradeDate'[dimdatekeyasdate], CALCULATE ( [new Price] ) )
)
RETURN
_Balance
Donde el precio es simplemente una suma del tipo de cambio
Pero falla cuando tienes dos o más cambios de precio por día, así que hice esto en su lugar:
Latest Rate =
CALCULATE (
MAX ( InstrumentExchangeRate[exchangerate] ),
FILTER (
InstrumentExchangeRate,
InstrumentExchangeRate[dimdatekey] <= MAX ( DimTradeDate[dimdatekey] )
&& InstrumentExchangeRate[dimdatekey] >= MIN ( DimTradeDate[dimdatekey] )
)
)
Ahora solo necesito calcular el saldo a lo largo del tiempo, que debería ser el último precio de QTY Balance * y listo.
Pero solo obtengo esto y necesito llenar los vacíos
Hola
En el ejemplo inicial que tomaste no mencionaste que puede haber más de 1 precio en un día. de todos modos, en el Editor de consultas, el enfoque debe ser retener solo 1 fila por día. Si está dispuesto a mi enfoque, comparta el enlace de descarga de su archivo PBI.
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
Check out the January 2025 Power BI update to learn about new features in Reporting, Modeling, and Data Connectivity.