分享

【量化小讲堂

 yfushia 2015-09-29
 本帖最后由 fantuanxiaot 于 2015-3-26 15:06 编辑

引言:
我之前一直用SAS、MATLAB。最近用Python,发现python的pandas包简直是分析金融数据做量化研究的神器。准备写个系列帖子“量化小讲堂”,希望通过实际的列子,让大家知道如何使用python & pandas进行金融数据处理,希望能对大家有帮助。帖子主要面向入门学习者,大神请轻拍。





【量化小讲堂 - python & pandas技巧系列】使用python计算各类移动平均线

计算移动平均线是最常见的需求,下面这段代码将完成以下三件事情:
1. 从csv格式的文件中导入股票数据,数据例图如下:
输入文件截图.png     输入数据截图.png

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)

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

代码输出的数据截图如下:
输出数据截图.png

可以到这里下载程序中用到的股票数据:网址其中包含了所有股票、从上市日起的全部交易数据。




之后会讲的内容:


现在想到的之后几期会讲的内容:
【量化小讲堂 - python & pandas技巧系列】如何在windows环境安装python和pandas
【量化小讲堂 - python & pandas技巧系列】如何在mac OSX环境安装python和pandas
【量化小讲堂 - python & pandas技巧系列】使用python计算KDJ指标
【量化小讲堂 - python & pandas技巧系列】使用python计算MACD指标
【量化小讲堂 - 投资策略系列】KDJ、MACD指标双金叉选股效果
【量化小讲堂 - python & pandas技巧系列】使用pytho将日线数据转换成周线、月线数据

更多的内容还没想好,大家要是有什么想知道可以留言回复哈 :)


本篇内容的代码:

本帖隐藏的内容

使用python计算各类移动平均线.zip (945 Bytes, 售价: 1 个论坛币)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多