博客
关于我
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/

你可能感兴趣的文章
module ‘@babel/runtime/helpers/interopRequireDefault.js‘ is not defined报错解决方法
查看>>
ModuleNotFoundError: No module named ‘setuptools_rust‘
查看>>
ModuleNotFoundError: No module named ‘webdriver_manager‘ 错误即使在安装 webdrivermanager 之后
查看>>
ModuleNotFoundError: No module named ‘_bz2‘
查看>>
ModuleNotFoundError: No module named ‘_lzma‘
查看>>
ModuleNotFoundError:没有名为“versioneer“的模块
查看>>
ModuleNotFoundError: no module named ‘pip‘解决方法
查看>>
ModuleNotFoundError:Spyder中没有名为Pip&39;的模块
查看>>
Module加载
查看>>
MogoTemplate基本入门(Mongodb数据库基本增删改查)
查看>>
Mojarra JSF ViewState 反序列化漏洞复现
查看>>
My new English
查看>>
Mojo:比 Python 快 35000 倍的编程语言诞生!
查看>>
MolecularNotes 开源项目教程
查看>>
MolGAN网络架构:用于小分子图的隐式生成模型
查看>>
Moment.js
查看>>
moment.js常见格式化处理各种时间方法
查看>>
Moment.js常见用法总结
查看>>
moment时间处理相关小结
查看>>
mongo - 正常关闭服务
查看>>