飞狐EMA算法C++实现
飞狐的 EMA 算法源码,逻辑清晰、实现简单,拿来就能用。代码用的是标准 C++写的,没有啥依赖,结构也挺轻巧。用std::vector
数据序列,计算 EMA 值的时候直接套了权重计算公式,响应快、结果准,蛮适合做策略原型或者写指标插件的。
EMA 本身就挺实用,尤其在趋势判断上,比 SMA 灵活多了。飞狐这个版本也比较贴近实际交易的节奏,第一项直接赋值,后面滚动计算。你如果在写自己的 K 线模块,或者想自定义技术指标逻辑,这段代码还蛮值得参考。
代码段挺短的,看起来没压力:
vec[i] = (2 * X[i] + (N - 1) * vec[i - 1]) / (N + 1);
就是这么一行,好了大部分情况。如果你用resize
初始化向量,也能规避一些越界或者未定义的值。
如果你也在折腾金融类的小工具,或者想搞搞量化系统的指标模块,这段飞狐的Ema
函数代码可以直接拿来改。反正逻辑清楚,不用花太多时间理解。
428B
文件大小:
评论区