博客
关于我
MDX Cookbook 12 - 计算 SMA 简单移动平均 LastPeriods() 函数的使用
阅读量:796 次
发布时间:2023-02-08

本文共 887 字,大约阅读时间需要 2 分钟。

移动平均(MA)和简单移动平均(SMA)的概念

在技术分析中,移动平均(MA)是一种分析时间序列数据的有效工具。最常见的应用是通过股价、回报率或交易量等变量来计算移动平均。MA可以用来反映数据的长期趋势或周期,其数学上的表现形式也被称为卷积。

其中,简单移动平均(SMA)是最常用的移动平均方法。SMA 30表示以当前日期为起点,计算过去30个交易日的平均值。例如,收市价的10日SMA就是过去10个交易日收市价的平均值。

让我们以网络订单数量为例来探讨这一概念。首先,我们需要查看每天的订单数据。在此基础上,我们可以选择2006年以来的SMA 30订单情况。为了便于分析,我还记录了对应的日期。

通过Adventure Works数据库,可以使用以下MDX公式来计算SMA 30:

WITHMEMBER [Measures].[SMA 30 of Order Count] AS

AVG(
LastPeriods(30,[Date].[Date].CurrentMember)
,[Measures].[Internet Order Count]
)
MEMBER [Measures].[SMA 30 Date] AS LastPeriods(30,[Date].[Date].CurrentMember).Item(0).Name

SELECT {

[Measures].[Internet Order Count],
[Measures].[SMA 30 of Order Count],
[Measures].[SMA 30 Date]
} ON 0,{
[Date].[Date].[Date].MEMBERS
} ON 1
FROM [Adventure Works]
WHERE [Date].[Calendar Year].&2006

需要注意的是,2006年1月1日之前的29天属于2005年12月底。因此,这里的30天包括了当天。

关于LastPeriods()函数的应用,我在另一篇MDX读书笔记中有详细说明。

更多BI相关内容,请参考相关文章链接。

转载地址:http://amyfk.baihongyu.com/

你可能感兴趣的文章
Mapped Statements collection already contains value for*
查看>>
mapper.xml中mapper找不到问题
查看>>
Mapper映射文件传参(数组/集合)与#{}和${} 区别
查看>>
mapping文件目录生成修改
查看>>
MapReduce Java API-使用Partitioner实现输出到多个文件
查看>>
MapReduce Java API-多输入路径方式
查看>>
MapReduce与HDFS企业级优化
查看>>
MapReduce分布编程模型之函数式编程范式
查看>>
MapReduce实现二度好友关系
查看>>
MapReduce的思想
查看>>
MapReduce的模式、算法和用例
查看>>
MapReduce的编程思想(1)
查看>>
MapReduce程序依赖的jar包
查看>>
MapReduce程序(一)——wordCount
查看>>
MapReduce:大数据处理的范式
查看>>
MapStruct 对象间属性复制
查看>>
MapStruct 映射过程中忽略某个字段
查看>>
MapStruct 超神进阶用法,让你的代码效率提升十倍!
查看>>
MapStruct使用工具类中的方法来映射字段
查看>>
MapXtreme 2005 学习心得 一些基础函数代码(四)
查看>>