Microsoft is giving away 50,000 FREE Microsoft Certification exam vouchers. Get Fabric certified for FREE! Learn more
Simplemente averiguale cómo calcular si mi modelo era una tabla plana. Pero tengo un modelo multidimensional como:
Necesito una medida para calcular el rendimiento acumulado (ProductX) para cada fondo. aquí está mi muestra.
Estoy tratando de adaptar este código sin éxito:
cumul_norm_return_summarizefree =
CALCULATE(
PRODUCTX( ALLSELECTED(perf[date]), (1+[norm_return]))-1,
FILTER(
ALLSELECTED(perf), perf[date]<=MAX([date]) &&
perf[fund] IN FILTERS(perf[fund])
)
)
Gracias de antemano.
Actualización 9/12:
Obtuve el resultado esperado usando este código en la tabla de transacciones:
Acc Return =
CALCULATE(
PRODUCTX(Transactions,[Return]),
FILTER(ALL(Transactions[Data]),
Transactions[Data]<=MAX(Transactions[Data])
)
)
Pero tengo curiosidad con respecto a la tabla de fechas. ¿Cómo puedo lograr el resultado utilizando fechas de dimensión de fecha?
Saludos
Solved! Go to Solution.
Hola
La siguiente medida funcionaría
Cumulative Return =
VAR __AvailableTransactionDates = VALUES('Transactions'[Date])
VAR __FirstAvailableTransactionDate =
MINX(__AvailableTransactionDates, 'Transactions'[Date])
VAR __LastAvailableTransactionDate =
MAXX(__AvailableTransactionDates, 'Transactions'[Date])
VAR __IsSingleDateFiltered = HASONEVALUE('Date'[Date])
VAR __SelectedDates = ALLSELECTED('Date'[Date])
VAR __MinSelectedDate = MINX(__SelectedDates, 'Date'[Date])
VAR __CurrentDate = MAX('Date'[Date])
VAR __IsMaxDateInTranRange =
__CurrentDate <= __LastAvailableTransactionDate
VAR __IsMinDateInTranRange =
__MinSelectedDate >= __FirstAvailableTransactionDate
VAR __IsSingleAssetSelected = HASONEVALUE(Asset[AssetName])
VAR __CumReturnPeriod =
FILTER(
__SelectedDates,
'Date'[Date] >= __MinSelectedDate
&& 'Date'[Date] <= __CurrentDate
)
VAR __DailyReturnsUptoCurrentPeriod =
CALCULATETABLE(
SUMMARIZE(
Transactions,
Transactions[Date],
Transactions[Return]
),
REMOVEFILTERS('Date'),
__CumReturnPeriod
)
VAR __CumulativeReturn =
IF(
(
__IsSingleAssetSelected
&& __IsSingleDateFiltered
&& __IsMaxDateInTranRange
)
||
(
__IsSingleAssetSelected
&& NOT(__IsSingleDateFiltered)
&& __IsMaxDateInTranRange
&& __IsMinDateInTranRange
),
PRODUCTX(
__DailyReturnsUptoCurrentPeriod,
'Transactions'[Return]
) - 1
)
RETURN
__CumulativeReturn
También he subido el archivo aquí.
Si esto responde a su consulta, márquelo como la solución y un pulgar hacia arriba sería genial.
@askhanduja solución realmente me dio esta idea:
Return Amount RP =
VAR CurrentDate = MAX ( 'Date'[Date] )
VAR FirstVisibleDate = MINX(ALLSELECTED('Date'[Date]), ('Date'[Date]))
VAR Result =
CALCULATE (
PRODUCTX(Transactions,[Return]),
DATESBETWEEN('Date'[Date],FirstVisibleDate,CurrentDate)
)
RETURN
Result
Hola
La siguiente medida funcionaría
Cumulative Return =
VAR __AvailableTransactionDates = VALUES('Transactions'[Date])
VAR __FirstAvailableTransactionDate =
MINX(__AvailableTransactionDates, 'Transactions'[Date])
VAR __LastAvailableTransactionDate =
MAXX(__AvailableTransactionDates, 'Transactions'[Date])
VAR __IsSingleDateFiltered = HASONEVALUE('Date'[Date])
VAR __SelectedDates = ALLSELECTED('Date'[Date])
VAR __MinSelectedDate = MINX(__SelectedDates, 'Date'[Date])
VAR __CurrentDate = MAX('Date'[Date])
VAR __IsMaxDateInTranRange =
__CurrentDate <= __LastAvailableTransactionDate
VAR __IsMinDateInTranRange =
__MinSelectedDate >= __FirstAvailableTransactionDate
VAR __IsSingleAssetSelected = HASONEVALUE(Asset[AssetName])
VAR __CumReturnPeriod =
FILTER(
__SelectedDates,
'Date'[Date] >= __MinSelectedDate
&& 'Date'[Date] <= __CurrentDate
)
VAR __DailyReturnsUptoCurrentPeriod =
CALCULATETABLE(
SUMMARIZE(
Transactions,
Transactions[Date],
Transactions[Return]
),
REMOVEFILTERS('Date'),
__CumReturnPeriod
)
VAR __CumulativeReturn =
IF(
(
__IsSingleAssetSelected
&& __IsSingleDateFiltered
&& __IsMaxDateInTranRange
)
||
(
__IsSingleAssetSelected
&& NOT(__IsSingleDateFiltered)
&& __IsMaxDateInTranRange
&& __IsMinDateInTranRange
),
PRODUCTX(
__DailyReturnsUptoCurrentPeriod,
'Transactions'[Return]
) - 1
)
RETURN
__CumulativeReturn
También he subido el archivo aquí.
Si esto responde a su consulta, márquelo como la solución y un pulgar hacia arriba sería genial.
Check out the April 2025 Power BI update to learn about new features.
Explore and share Fabric Notebooks to boost Power BI insights in the new community notebooks gallery.