【原生代码】Python3 实现ATR、MA、EMA、SMMA、RMA、TEMA指标的计算

本文介绍了如何使用Python3实现金融市场技术分析中的六种指标:真实波动幅度(ATR)、移动平均线(MA)、指数移动平均线(EMA)、平滑移动平均线(SMMA)、RMA(RSI中的移动平均线)和三重指数平滑移动平均线(TEMA)。内容包括参数说明、各指标的计算方法,并提供了变量结构图。
摘要由CSDN通过智能技术生成

1. 参数说明

r:K线数据,字典或者数组
days:指标长度
name:使用哪一个字段,填’Close’即可,如果不填则代表r是数组而不是字典

变量r 字典结构图如下:

{
    {
        'Time': 0,
        'Close': 0,
        'Open': 0,
        'High': 0,
        'Low': 0,
        'Volume': 0,
    }
}

2. ATR 真实波动幅度 (需配合下面的指标)

def ATR(r, days, ma='sma'):
    tr = [0]
    for i in range(len(r)):
        if i:
            tr.append(max(r[i]['High']-r[i]['Low'], abs(r[i]['High'] - r[i-1]['Close']), abs(r[i]['Low'] - r[i-1]['Close'])))

    if ma == 'rma':
        return RMA(tr, days)

    if ma == 'ema':
        return EMA(tr, days)

    return SMA(tr, days)

3. MA 移动平均线

def SMA(r,
  • 4
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值