打造属于自己的量化投资系统4——利用backtrader创建指数平均数指标

1.指数平均数指标(EXPMA或EMA)

指数平均数指标(Exponential Moving Average,EXPMA或EMA) EXPMA=(当日或当期收盘价-上一日或上期EXPMA)/N+上一日或上期EXPMA,其中,首次上期EXPMA值为上一期收盘价,N为天数。

从EXPMA指标的构造原理和它的使用原则来看,这一指标更接近于均线指标,而且由于EXPMA指标通过对参数进行有效地设定,可以发挥出比均线指标更为直观和有用的信息。

 '''#指数平均数指标
       公式:EXPMA=(当日或当期收盘价-上一日或上期EXPMA)/N+上一日或上期EXPMA,其中,首次上期EXPMA值为上一期收盘价,N为天数
           self.smfactor -> 2 / (1 + period)
           self.smfactor1 -> `1 - self.smfactor`
           movav = prev * (1.0 - smoothfactor) + newdata * smoothfactor
    '''
    
    def __init__(self):
        #ema源码位于indicators\ema.py
        #指标必须要定义在策略类中的初始化函数中
        self.ema=bt.ind.MovingAverageExponential(period=15)
        
    def next(self):
        #self.data.close是表示收盘价
        #收盘价大于ema,买入
        if self.data.close>self.ema:
            self.buy()
        
        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值