30、高效简单移动平均线的实现

高效简单移动平均线的实现

1. 算法优化的考量

在进行算法实现时,算法的选择至关重要,选择高效的算法往往比高效地实现算法更为关键。当你已经选择了一个不错的算法并完成初步实现后,是否要投入时间进行优化是一个需要慎重考虑的问题。性能优化可能是一项成本高昂的活动,除非必要,否则不应轻易尝试。

若必须让实现变得更快,首先要确定多快才算足够快。例如,算法是需要从耗时数天缩短至数小时,还是要达到微秒级别的速度?这是绝对要求,还是在特定时间框架内尽力而为即可?此外,还需要考虑代码的可读性和可共享性,因为高性能的代码往往更难理解。如果开发的代码要并行执行,还会对可执行系统的类型施加诸多限制。

建议尽量减少优化的次数,以达到实现所需的运行速度为目标。具体过程如下:
1. 找到最重要的瓶颈。
2. 消除它(或至少降低其影响)。
3. 检查实现是否足够快,如果不够快,则重复上述步骤。

2. 简单移动平均线(SMA)算法

2.1 SMA 算法原理

简单移动平均线(SMA)是一种用于时间序列技术分析的常用工具,尤其在金融市场和交易中应用广泛。其核心思想是在每个时间点,通过回顾预定义数量的周期来计算平均值。例如,对于分钟级别的时间序列,计算 SMA(30) 意味着在每个观测点,取从该点开始前 30 分钟的观测值(即 30 个观测值),并将这 30 个观测值的平均值作为该时间点的 SMA(30) 值。

SMA 具有以下特性:
- 观测数量相同 :SMA 系列包含的观测数量与原始时间序列相同。
- 初始 NA 值

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值