社区
教程
Wiki
注册
登录
创作新主题
社区所有版块导航
Python
python开源
Django
Python
DjangoApp
pycharm
DATA
docker
Elasticsearch
分享
问与答
闲聊
招聘
翻译
创业
分享发现
分享创造
求职
区块链
支付之战
aigc
aigc
chatgpt
WEB开发
linux
MongoDB
Redis
DATABASE
NGINX
其他Web框架
web工具
zookeeper
tornado
NoSql
Bootstrap
js
peewee
Git
bottle
IE
MQ
Jquery
机器学习
机器学习算法
Python88.com
反馈
公告
社区推广
产品
短视频
印度
印度
一周十大热门主题
ChatGPT会员促销,五折优惠...
【已复现】Gitea act_runner 容器逃逸漏洞(CVE-2026-58053)安全风险通告
Chatgpt K12即将拉闸,一场狂欢即将结束
2026必看AI干货!《大模型/AIGC/GPT-4/Transformer/DL/KG/NLP/C...
畅销10余年,这部Python经典终于出实战手册了!
Kimi坐上全球程序员的工位!GitHub Copilot模型菜单中第一次出现开放权重模型
畅销10余年,这部Python经典终于出实战手册了!
用ChatGPT砍价$15万?澳中介炮轰买家:轻信AI错失好房
ChatGPT刚上线车险比价,这边1.9万代理人合同就被AI改写?
Nat. Rev. Bioeng.|机器学习驱动抗体多目标设计与优化
关注
Py学习
»
Python
使用python计算各类移动平均线
邢不行
• 2 年前 • 401 次点击
计算移动平均线是最常见的需求,下面这段代码将完成以下三件事情:
1. 从csv格式的文件中导入股票数据,数据例图如下:
2.计算各类移动平均线,包括简单简单算术移动平均线MA、指数平滑移动平均线EMA;
3.将计算好的数据输出到csv文件中。
代码应该复制下来就能运行了,关于从哪里可以得到代码中使用的数据,后面会讲,下面贴上代码(附件中也可以下载):
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
# -*- coding: utf-8 -*-
"""
@author: yucezhe
@contact: QQ:2089973054 email:xjc@yucezhe.com
"""
import
pandas
as
pd
# ========== 从原始csv文件中导入股票数据,以浦发银行sh600000为例
# 导入数据 - 注意:这里请填写数据文件在您电脑中的路径
stock_data = pd.read_csv(
'stock data/sh600000.csv'
,
parse_dates
=[
1
])
# 将数据按照交易日期从远到近排序
stock_data.sort(
'date'
,
inplace
=
True
)
# ========== 计算移动平均线
# 分别计算5日、20日、60日的移动平均线
ma_list = [
5
,
20
,
60
]
# 计算简单算术移动平均线MA - 注意:stock_data['close']为股票每天的收盘价
for
ma
in
ma_list:
stock_data[
'MA_'
+
str
(ma)] = pd.rolling_mean(stock_data[
'close'
]
,
ma)
# 计算指数平滑移动平均线EMA
for
ma
in
ma_list:
stock_data[
'EMA_'
+
str
(ma)] = pd.ewma(stock_data[
'close'
]
,
span
=ma)
# 将数据按照交易日期从近到远排序
stock_data.sort(
'date'
,
ascending
=
False
,
inplace
=
True
)
# ========== 将算好的数据输出到csv文件 - 注意:这里请填写输出文件在您电脑中的路径
stock_data.to_csv(
'sh600000_ma_ema.csv'
,
index
=
False
)
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
代码输出的数据截图如下:
需要用到的股票数据可以加我微信xbx297,都是可以免费发给你的。
Python社区是高质量的Python/Django开发社区
本文地址:
http://www.python88.com/topic/164720
登录后回复