算数平均值/加权平均值
算数平均值
S = [s1, s2, ..., sn]
样本中的每个值都是真值与误差的和。
算数平均值:
m = (s1 + s2 + ... + sn) / n
算数平均值表示对真值的无偏估计。
np.mean(array)
array.mean()
案例:计算收盘价的算术平均值。
#算数平均值 import numpy as np import matplotlib.pyplot as mp import datetime as dt import matplotlib.dates as mddef dmy2ymd(dmy):"""把日月年转年月日:param day::return:"""dmy = str(dmy, encoding='utf-8')t = dt.datetime.strptime(dmy, '%d-%m-%Y')s = t.date().strftime('%Y-%m-%d')return sdates, opening_prices, \ highest_prices, lowest_prices, \ closing_prices = \np.loadtxt('aapl.csv',delimiter=',',usecols=(1, 3, 4, 5, 6),unpack=True,dtype='M8[D],f8,f8,f8,f8',converters={1: dmy2ymd}) # 日月年转年月日# 绘制收盘价的折现图 mp.figure('APPL', facecolor='lightgray') mp.title('APPL', fontsize=18) mp.xlabel('Date', fontsize=14) mp.ylabel('Price', fontsize=14) mp.grid(linestyle=":")# 设置刻度定位器 # 每周一一个主刻度,一天一个次刻度 ax = mp.gca() ma_loc = md.WeekdayLocator(byweekday=md.MO) ax.xaxis.set_major_locator(ma_loc) ax.xaxis.set_major_formatter(md.DateFormatter('%Y-%m-%d')) ax.xaxis.set_minor_locator(md.DayLocator()) # 修改dates的dtype为md.datetime.datetiem dates = dates.astype(md.datetime.datetime) mp.plot(dates, closing_prices,color='dodgerblue',linewidth=2,linestyle='--',alpha=0.8,label='APPL Closing Price') #计算收盘价的均值 mean = np.mean(closing_prices) # mean = closing_prices.mean() print(mean) mp.hlines(mean,dates[0],dates[-1],colors='orangered',label='mean') mp.legend() mp.gcf().autofmt_xdate() mp.show()
加权平均值
样本:S = [s1, s2, ..., sn]
权重:W = [w1, w2, ..., wn]
加权平均值:a = (s1w1+s2w2+...+snwn)/(w1+w2+...+wn)
np.average(closing_prices, weights=volumes)
VWAP - 成交量加权平均价格(成交量体现了市场对当前交易价格的认可度,成交量加权平均价格将会更接近这支股票的真实价值)
import numpy as np closing_prices, volumes = np.loadtxt('../../data/aapl.csv', delimiter=',',usecols=(6, 7), unpack=True) vwap, wsum = 0, 0 for closing_price, volume in zip(closing_prices, volumes):vwap += closing_price * volumewsum += volume vwap /= wsum print(vwap) vwap = np.average(closing_prices, weights=volumes) print(vwap)
TWAP - 时间加权平均价格(时间越晚权重越高,参考意义越大)
import datetime as dt import numpy as npdef dmy2days(dmy):dmy = str(dmy, encoding='utf-8')date = dt.datetime.strptime(dmy, '%d-%m-%Y').date()days = (date - dt.date.min).daysreturn daysdays, closing_prices = np.loadtxt('../../data/aapl.csv', delimiter=',',usecols=(1, 6), unpack=True,converters={1: dmy2days}) twap = np.average(closing_prices, weights=days) print(twap)
# 加权平均值 import numpy as np import matplotlib.pyplot as mp import datetime as dt import matplotlib.dates as mddef dmy2ymd(dmy):"""把日月年转年月日:param day::return:"""dmy = str(dmy, encoding='utf-8')t = dt.datetime.strptime(dmy, '%d-%m-%Y')s = t.date().strftime('%Y-%m-%d')return sdates, opening_prices, \ highest_prices, lowest_prices, \ closing_prices ,volumes= \np.loadtxt('aapl.csv',delimiter=',',usecols=(1, 3, 4, 5, 6,7),unpack=True,dtype='M8[D],f8,f8,f8,f8,f8',converters={1: dmy2ymd}) # 日月年转年月日 print(dates) # 绘制收盘价的折现图 mp.figure('APPL', facecolor='lightgray') mp.title('APPL', fontsize=18) mp.xlabel('Date', fontsize=14) mp.ylabel('Price', fontsize=14) mp.grid(linestyle=":")# 设置刻度定位器 # 每周一一个主刻度,一天一个次刻度 ax = mp.gca() ma_loc = md.WeekdayLocator(byweekday=md.MO) ax.xaxis.set_major_locator(ma_loc) ax.xaxis.set_major_formatter(md.DateFormatter('%Y-%m-%d')) ax.xaxis.set_minor_locator(md.DayLocator()) # 修改dates的dtype为md.datetime.datetiem dates = dates.astype(md.datetime.datetime) mp.plot(dates, closing_prices,color='dodgerblue',linewidth=2,linestyle='--',alpha=0.8,label='APPL Closing Price') # 计算收盘价的均值 mean = np.mean(closing_prices) # mean = closing_prices.mean() mp.hlines(mean, dates[0], dates[-1], colors='orangered',label='mean') # VWP成交量加权平均值 vwap = np.average(closing_prices, weights=volumes) mp.hlines(vwap, dates[0], dates[-1], color='blue', label='VWAP') #TWAP事件加权平均价格 w = np.linspace(1,4,30) twap = np.average(closing_prices,weights=w) mp.hlines(twap,dates[0],dates[-1],color='green',label='TWAP') mp.legend() mp.gcf().autofmt_xdate() mp.show()
转载于:https://www.cnblogs.com/maplethefox/p/11457290.html
算数平均值/加权平均值相关推荐
- Python之数据分析(算数平均值、加权平均值、最大值与最小值)
文章目录 一.算数平均值 二.加权平均值 三.最大值与最小值 一.算数平均值 1.平均值的作用 平均数是表示一组数据集中趋势的量数,它是反映数据集中趋势的一项指标.一组数据少则几十,多则上千,甚至于过 ...
- 平均值不等式证明:算数平均值、几何平均值、调和平均值大小关系证明
三个平均值不等式证明(算数平均值不小于几何平均值,几何平均值不小于调和平均值) 写在前面:最近在自学数学分析,学到这里时书上并未给出完整证明,同时在网上也没有找到想要的内容,因此这里记录一下推导过程, ...
- Python计算csv数据的算数平均值
自己编两组数据计算了一下两者之差的绝对值的平均值.两组数据存在了一个.csv文件里,利用了python中的panda库和numpy库 import numpy as np import pandas ...
- 2021高校毕业生就业薪酬分析:博士、硕士、本科、专科的月起薪算数平均值分别为14823元、10113元、5825元、3910元[图]
近日,"本科毕业月平均起薪5825元"的话题迅速热搜,引发网友热议.在2022届高校毕业生规模预计达到1076万人的严峻就业形势下,"毕业起薪"成为社会关注的焦 ...
- python数据分析 - numpy | ndarray数组 | numpy常用函数
文章目录 数据分析 numpy概述 numpy历史 numpy的核心:多维数组 numpy基础 ndarray数组 内存中的ndarray对象 ndarray数组对象的特点 ndarray数组对象的创 ...
- 数据分析之numpy基础/matplotlib绘图/numpy常用函数/杂项功能
文章目录 数据分析 numpy概述 numpy`历史` numpy的核心:多维数组 numpy基础 ndarray数组 内存中的ndarray对象 ndarray数组对象的特点 ndarray数组对象 ...
- Python小记:14.数据分析基础知识点汇总
目录: 数据分析 numpy概述 numpy`历史` numpy的核心:多维数组 numpy基础 ndarray数组 内存中的ndarray对象 ndarray数组对象的特点 ndarray数组对象的 ...
- 【名词解释】什么叫加权平均值?有什么意义吗?
什么是加权平均值? 举例说明,下面是一个同学的某一科的考试成绩: 平时测验 80, 期中 90, 期末 95 学校规定的科目成绩的计算方式是: 平时测验占 20%: 期中成绩占 30%: 期末成绩占 ...
- excel平均值公式_投资组合Normal VaR的具体计算方法(Excel版)
VaR的含义 面临"正常"的市场波动时,在给定的置信水平和持有期限内,预期的最大损失量. VaR(95%,1日),即一个交易日内在95%的置信区间内的最大损失. Normal Va ...
最新文章
- 第二弹,坐地铁就能学会的3种「非常有趣」的 Python 玩法
- 2021 网易创新企业大会来了
- 2016 年Adobe设计成就奖作品征集
- ASP.NET2.0数据操作之创建业务逻辑层
- Python FastApi:post文件与数据/本地端测试
- LDAP命令介绍---dsconfig
- MYSQLMANAGER实例管理器总结
- IDEA和mysql的连接
- 通过docker build --build-arg 传值进 Dockerfile 动态构建容器
- 简易 Vue 构建--篇二
- android sugar框架 使用,数据库框架Sugar的使用
- 小程序入门学习19--springboot之HelloWorld
- linux内核长期支持版本,Linux Kernel 3.12长期支持分支迎来第63个维护版本
- C代码工具--自动生成enum值和名字映射代码
- Camera2 camera i2c总线协议介绍
- GOM引擎版本为什么玩家会自动掉线或闪退?
- 网证CTID是一种什么业务?有什么前景?
- 神之意志是什么?他想要做什么?
- linux 可读可写可执行权限 chmod
- 九齐单片机 NY8A051D点亮LED