PyalgoTrade 计算权重平滑平均价(三)

本节介绍如何使用收盘价的SMA价格的策略

from pyalgotrade import strategy
from pyalgotrade.barfeed import yahoofeed
from pyalgotrade.technical import ma

class MyStrategy(strategy.BacktestingStrategy):
    def __init__(self, feed, instrument):
        super(MyStrategy, self).__init__(feed)
        # We want a 15 period SMA over the closing prices.
        self.__sma = ma.SMA(feed[instrument].getCloseDataSeries(), 15)
        self.__instrument = instrument

    def onBars(self, bars):
        bar = bars[self.__instrument]
        self.info("%s %s" % (bar.getClose(), self.__sma[-1]))

# Load the yahoo feed from the CSV file
feed = yahoofeed.Feed()
feed.addBarsFromCSV("orcl", "orcl-2000.csv")

# Evaluate the strategy with the feed‘s bars.
myStrategy = MyStrategy(feed, "orcl")
myStrategy.run()

这与前面的例子非常相似,只是:

  • 用收盘价格数据系列中初始化SMA过滤器。
  • 打印当前的SMA值以及收盘价。
    如果您运行脚本,您应该看到收盘价格和相应的SMA值,但在这种情况下,前14个SMA值为空。那是因为我们需要至少15个值来求取SMA:
    2000-01-03 00:00:00 strategy [INFO] 118.12 None
    2000-01-04 00:00:00 strategy [INFO] 107.69 None
    2000-01-05 00:00:00 strategy [INFO] 102.0 None
    2000-01-06 00:00:00 strategy [INFO] 96.0 None
    2000-01-07 00:00:00 strategy [INFO] 103.37 None
    2000-01-10 00:00:00 strategy [INFO] 115.75 None
    2000-01-11 00:00:00 strategy [INFO] 112.37 None
    2000-01-12 00:00:00 strategy [INFO] 105.62 None
    2000-01-13 00:00:00 strategy [INFO] 105.06 None
    2000-01-14 00:00:00 strategy [INFO] 106.81 None
    2000-01-18 00:00:00 strategy [INFO] 111.25 None
    2000-01-19 00:00:00 strategy [INFO] 57.13 None
    2000-01-20 00:00:00 strategy [INFO] 59.25 None
    2000-01-21 00:00:00 strategy [INFO] 59.69 None
    2000-01-24 00:00:00 strategy [INFO] 54.19 94.2866666667
    2000-01-25 00:00:00 strategy [INFO] 56.44 90.1746666667
    .
    .
    .
    2000-12-27 00:00:00 strategy [INFO] 30.69 29.9866666667
    2000-12-28 00:00:00 strategy [INFO] 31.06 30.0446666667
    2000-12-29 00:00:00 strategy [INFO] 29.06 30.0946666667

作者:readilen
链接:http://www.jianshu.com/p/7a9e2635bfa1
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

时间: 2024-10-13 22:21:36

PyalgoTrade 计算权重平滑平均价(三)的相关文章

网站要提高权重要总结三点

网站要提高权重要总结三点:“有高质量的网站内容,加上高质量的链接,再加上持之以恒的努力” 个人总结:从seo新手过度到seo高手,这其实就是一个“破蛹化蝶”的过程.“破蛹化蝶”的过程非常痛苦,有些蛹就算承受了这般巨大痛苦,最后也未必能成功蜕变.但是,蛹化成蝶后才是最美丽的,只有承受了痛苦,才能有成蝶的机会.所以说,既然选择了要走seo这条路,站长就应该敢于承受过程中的一切困难,坚持到最后才是真正的成功者.

使用excel计算指数平滑和移动平均

指数平滑法 原数数据如下: 点击数据——数据分析 选择指数平滑 最一次平滑 由于我们选择的区域是B1:B22,第一个单元格“钢产量”,被当做标志,所以我们应该勾选标志.当我们勾选了标志后,列中的第一个单元格将不被用于计算,计算从第二个单元格开始. 结果如下: 做二次平滑 这里,我们不再采用标志,所以数据区间选择在C3:C22 对比一下 阻尼系数=0.3 阻尼系数=0.05 阻尼系数=0.9 画在一张图上对比下,可见阻尼系数越大,曲线越平. 移动平均(一阶和二阶) 同理可以使用excel计算得到如

转载 ------ 三次指数平滑法

原文地址: http://blog.csdn.net/nieson2012/article/details/51980943 目录 ?1.指数平滑定义及公式 ?2.一次指数平滑 ?3二次指数平滑 ?4.三次指数平滑 ?5指数平滑系数α的确定 1.指数平滑的定义及公式 产生背景:指数平滑由布朗提出.他认为时间序列的态势具有稳定性或规则性,所以时间序列可被合理地顺势推延:他认为最近的过去态势,在某种程度上会持续的未来,所以将较大的权数放在最近的资料. 基本原理:指数平滑法是移动平均法中的一种,其特点

文本分类学习(三) 特征权重(TF/IDF)和特征提取

上一篇中,主要说的就是词袋模型.回顾一下,在进行文本分类之前,我们需要把待分类文本先用词袋模型进行文本表示.首先是将训练集中的所有单词经过去停用词之后组合成一个词袋,或者叫做字典,实际上一个维度很大的向量.这样每个文本在分词之后,就可以根据我们之前得到的词袋,构造成一个向量,词袋中有多少个词,那这个向量就是多少维度的了.然后就把这些向量交给计算机去计算,而不再需要文本啦.而向量中的数字表示的是每个词所代表的权重.代表这个词对文本类型的影响程度. 在这个过程中我们需要解决两个问题:1.如何计算出适

预测算法——指数平滑法

 目录 ?1.指数平滑定义及公式 ?2.一次指数平滑 ?3二次指数平滑 ?4.三次指数平滑 ?5指数平滑系数α的确定 1.指数平滑的定义及公式 产生背景:指数平滑由布朗提出.他认为时间序列的态势具有稳定性或规则性,所以时间序列可被合理地顺势推延:他认为最近的过去态势,在某种程度上会持续的未来,所以将较大的权数放在最近的资料. 基本原理:指数平滑法是移动平均法中的一种,其特点在于给过去的观测值不一样的权重,即较近期观测值的权数比较远期观测值的权数要大.根据平滑次数不同,指数平滑法分为一次指数平滑法

[LeetCode] Nested List Weight Sum II 嵌套链表权重和之二

Given a nested list of integers, return the sum of all integers in the list weighted by their depth. Each element is either an integer, or a list -- whose elements may also be integers or other lists. Different from the previous question where weight

根据权重随机选取指定条数记录的简单算法实现(C#)

一.应用场景: 有时我们需要从一些列数据中根据权重随机选取指定条数记录出来,这里需要权重.随机,我们根据权重越大的,出现概率越大.例如广告系统:可根据客户支付金额大小来调控客户们的广告出现概率,客户支付金额越大,其广告出现频率越频繁,例如:加入有10条广告,然后每条广告都有一个权重,我们每次要根据权重选取5条广告出来进行显示.有了需求,我们就进行解决,本文章就是利用一种简单的算法来实现根据权重来随机选取. 二.简单算法的实现: 根据我们需求,上网找了不少资料,都没有找到一种比较适合的方案,就自己

css权重计算方法浅谈

在这之前只知道css权重的皮毛,比如说:行内权重比头部权重高,头部比外部样式权重高----工作中才知道真正理解css权重重要性.理解权重了才能写出来最优css选择器来.对后面学习less,scss有很大帮助. 从css代码存放的位置来看,权重计算当然是--->内嵌样式 > 内部样式表 > 外联样式表!然而工作中我们的css代码都是写在外联样式表中的咯. 参考w3c样式选择器权重优先级是这个样子的 important > 内嵌样式 > ID > 类 > 标签 | 伪

指标权重确定方法之熵权法

熵最先由申农引入信息论,目前已经在工程技术.社会经济等领域得到了非常广泛的应用. 熵权法的基本思路是根据指标变异性的大小来确定客观权重. 一般来说,若某个指标的信息熵越小,表明指标值得变异程度越大,提供的信息量越多,在综合评价中所能起到的作用也越大,其权重也就越大.相反,某个指标的信息熵越大,表明指标值得变异程度越小,提供的信息量也越少,在综合评价中所起到的作用也越小,其权重也就越小. 二.熵权法赋权步骤 1. 数据标准化 将各个指标的数据进行标准化处理. 假设给定了k个指标,其中.假设对各指标