本文介绍了运行或累积度量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如果您对我的问题有任何建议,我将不胜感激:我有一个每日价值的股票列表(所以有几个股票,每个股票每天一个价值)。作为衡量标准,我正在尝试对年初的总投资组合计算累计保证金%,以便每天都有结果。
举个例子,如果投资组合的总价值某一天是100,后天是102,后天是104,我想用(这3天)0,2,4%来衡量。
我有一个衡量标准,每天计算整个投资组合的保证金百分比(我不能有一个列,因为数据不是基于投资组合,而是基于股票):
我希望实现的目标如下:
我尝试执行=CALCULATE(sum(dailies[marge_daily_percent_measure]); FILTER(all(dailies);INT(dailies[Date (Year)])=[annee]))
(过滤将获取当年数据)但总和不能应用于度量值(他正在寻找列)。
我也尝试了TOTALYTD,但有两个问题:Sum仍然不能应用于度量值,我还需要每天的结果。
感谢您的任何提示。
推荐答案
假设您的股价表如下
2021年12月30日 | 104 |
2021年12月31日 | 106 |
2022年1月3日 | 107 |
2022年1月4日 | 107 |
2022年1月5日 | 106 |
2022年1月6日 | 95 |
2022年1月7日 | 106 |
2022年1月10日 | 110 |
我已经计算了一个保证金度量DAX,如下所示。和使用SUMX
的累计度量值。
DAX:页边距
Margin =
VAR _SelectedDate =
SELECTEDVALUE ( 'Table'[Date] )
VAR _SelectedValue =
SELECTEDVALUE ( 'Table'[Value] )
VAR _PreviousDate =
CALCULATE ( MAX ( 'Table'[Date] ), 'Table'[Date] < _SelectedDate )
VAR _PreviousValue =
CALCULATE ( SUM ( 'Table'[Value] ), 'Table'[Date] = _PreviousDate )
VAR Margin =
DIVIDE ( _SelectedValue - _PreviousValue, _PreviousValue )
RETURN
Margin
DAX:毛利累计
Cumulative Margin =
VAR _SelectedDate =
SELECTEDVALUE ( 'Table'[Date] )
VAR Cumulative =
CALCULATE (
SUMX ( VALUES ( 'Table'[Date] ), [Margin] ),
'Table'[Date] <= _SelectedDate
)
RETURN
Cumulative
请记住,您从Cumulative Margin
获得的最终百分比值与第一个值与最后一个值的差值不同。在本例中,(110-104)/104 = 5.77%
。使用累计,我得到6.91%
输出
这篇关于运行或累积度量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!