利用python编写macd、kdj、rsi、ma等指标

(3页)

本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!

8.90 积分

# -*- coding: utf-8 -*- “““ Created on Thu Dec 15 13:57:32 2016@author: four “““ import pandas as pd#获取地址数据 def get_adress_data(adress=0):data=pd.read_csv(adress,parse_dates=False,header=None,names=['dateL','openL','highL','lowL','cl oseL','volL'])data['dateL']=pd.to_datetime(data.dateL)return data #获取macddef get_macd_data(data,short=0,long1=0,mid=0):if short==0:short=12if long1==0:long1=26if mid==0:mid=9data['sema']=pd.ewma(data['closeL'],span=short)data['lema']=pd.ewma(data['closeL'],span=long1)data.fillna(0,inplace=True)data['data_dif']=data['sema']-data['lema']data['data_dea']=pd.ewma(data['data_dif'],span=mid)data['data_macd']=2*(data['data_dif']-data['data_dea'])data.fillna(0,inplace=True)return data[['data_dif','data_dea','data_macd']]def get_kdj_data(data,N=0,M=0):if N==0:N=9if M==0:M=2low_list = pd.rolling_min(data['lowL'], N)low_list.fillna(value=pd.expanding_min(data['lowL']), inplace=True)high_list = pd.rolling_max(data['highL'],N)high_list.fillna(value=pd.expanding_max(data['highL']), inplace=True)rsv = (data['closeL'] - low_list) / (high_list - low_list) * 100data['KDJ_K'] = pd.ewma(rsv,com=M)data['KDJ_D']=pd.ewma(data['KDJ_K'],com=M)data['KDJ_J'] = 3 * data['KDJ_K'] - 2 * data['KDJ_D']data.fillna(0,inplace=True)return data[['KDJ_K','KDJ_D','KDJ_J']]def get_ma_data(data,N=0):if N==0:N=5data['ma']=pd.rolling_mean(data['closeL'],N)data.fillna(0,inplace=True)return data[['ma']] def get_rsi_data(data,N=0):if N==0:N=24data['value']=data['closeL']-data['closeL'].shift(1)data.fillna(0,inplace=True)data['value1']=data['value']data['value1'][data['value1']0]=0data['plus']=pd.rolling_sum(data['value1'],N)data['minus']=pd.rolling_sum(data['value2'],N)data.fillna(0,inplace=True)rsi=data['plus']/(data['plus']-data['minus'])*100data.fillna(0,inplace=True)rsi=pd.DataFrame(rsi,columns=['rsi'])return rsidef get_cci_data(data,N=0):if N==0:N=14data['tp']=(data['highL']+data['lowL']+data['closeL'])/3data['mac']=pd.rolling_mean(data['tp'],N)data['md']=0for i in range(len(data)-14):data['md'][i+13]=data['closeL'][i:i+13].mad()#data['mac']=pd.rolling_mean(data['closeL'],N)#data['md1']=data['mac']-data['closeL']#data.fillna(0,inplace=True)#data['md']=pd.rolling_mean(data['md1'],N)cci=(data['tp']-data['mac'])/(data['md']*0.015)cci=pd.DataFrame(cci,columns=['cci'])return cci#读取数据data=get_adress_data(adress=u'C:/Users/four/Desktop/m1_SZZS.csv') a=get_macd_data(data) b=get_kdj_data(data) c=get_ma_data(data) d=get_rsi_data(data) e=get_cci_data(data) 关 键 词: 利用 python 编写 macd kdj rsi ma 指标

天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。

关于本文

本文标题:利用python编写macd、kdj、rsi、ma等指标

链接地址: https://www.wenku365.com/p-8818262.html

pythonmacd指标编写_利用python编写macd、kdj、rsi、ma等指标相关推荐

  1. pythonmacd指标编写_利用python编写macd、kdj、rsi、ma等指标 -

    # -*- coding: utf-8 -*- \ Created on Thu Dec 15 13:57:32 2016 @author: four \ import pandas as pd #获 ...

  2. python数据预测_利用Python编写一个数据预测工具

    利用Python编写一个数据预测工具 发布时间:2020-11-07 17:12:20 来源:亿速云 阅读:96 这篇文章运用简单易懂的例子给大家介绍利用Python编写一个数据预测工具,内容非常详细 ...

  3. python抓取股票形态_利用Python实现MACD#39;顶底背离#39;形态,并实现自动化交易!...

    点及财经,股票期货专业投机者. 前言 股票或期货的价格波动,总会有一些可以规律可以遵循的.其中,"背离"也算是其中的一种,并且可以作为判断趋势结束或阶段调整的预警信号. 通常情况下 ...

  4. python二元函数如何编写_利用python实现PSO算法优化二元函数

    python实现PSO算法优化二元函数,具体代码如下所示: import numpy as np import random import matplotlib.pyplot as plt from ...

  5. python hello world程序编写_用Python编写一个简单程序

    按照软件行业传统习惯,当你学习一种新的编程语言如Python时,首先编写一个"Hello World! "程序. 请执行以下步骤,以创造你的"Hello World!&q ...

  6. python学号怎么编写_用python编写学生管理系统

    #该程序在设计返回值时用了flag(标志)和i(标识下标): #之前在travers()函数的编写中for循环中缺少一个return导致在传递参数时会有错误: # 主要体现在修改和删除首个元素时!值得 ...

  7. python爬虫简单实例-Python 利用Python编写简单网络爬虫实例3

    利用Python编写简单网络爬虫实例3 by:授客 QQ:1033553122 实验环境 python版本:3.3.5(2.7下报错 实验目的 获取目标网站"http://bbs.51tes ...

  8. python编写统计选票的程序_使用python编写微信公众号发稿统计程序

    近日为学校公众号统计发稿情况,需统计本年度各部门分别所发稿件标题.时间.作者等. 首先考虑查看公众号后台有无统计功能,看到的界面如下: 每页只显示7天的消息,且没有部门作者信息.再看另一界面: 只统计 ...

  9. 利用android实现汇率计算器,利用python编写一个汇率计算器

    利用python编写一个汇率计算器 发布时间:2020-11-10 15:03:44 来源:亿速云 阅读:137 作者:Leah 这篇文章运用简单易懂的例子给大家介绍利用python编写一个汇率计算器 ...

  10. 利用python编写手机脚本

    利用python编写手机脚本 adb连接安卓模拟器 在手机里编写python脚本控制手机 如何使用python控制手机(以微信游戏跳一跳为例) adb连接安卓模拟器 链接(转载)https://www ...

最新文章

  1. 开启JAVA自学新篇章
  2. easyui数据表格重置_Python办公自动化,自动更新表格,告别繁琐
  3. linux mysql 大页_Linux HugePages及MySQL 大页配置
  4. 【响应式Web前端设计】CSS浮动(float,clear)讲解
  5. java 模板引擎_Spring Boot 如何快熟整合Thymeleaf模板引擎
  6. php mysql 菜鸟_PHP 和 MySQL 基础教程(四)
  7. 实验五 数独游戏界面设置
  8. java array to list iterator_Iterator to list的三种方法
  9. 用傅里叶分析得到频域信息 MATLAB,信号分析实验_傅里叶matlab实现.doc
  10. boost::bind 详解
  11. Git bash和 Git GUI设置中文
  12. sysctl 系统配置
  13. 梦殇 chapter six
  14. 流程控制的三个练习题的问题,请求解释,谢谢
  15. 计算机打开管理闪退,win10任务管理器闪退怎么解决-解决win10任务管理器闪退的方法 - 河东软件园...
  16. ubuntu18.04无法安装最新显卡驱动解决办法
  17. 对于Java的MyBatis的入门
  18. 安邦金融:99%的人都不知道,原来保险还可以这样配置
  19. java实现数据同步
  20. selenium打不开Ie浏览器的解决办法

热门文章

  1. 编辑中的word变成只读_教大家word文档变成只读模式怎么改
  2. 找到服务器系统日志,查看服务器系统日志
  3. java定义个字符串_Java定义字符串(2种方式)
  4. ugui 转轮_unity3D的FingerGestures小工具
  5. iOS_6_ToolBar+xib+红楼梦
  6. echarts自定义legend图例和tooltip默认提示文字
  7. java中strlen,浅析C++中strlen函数的使用与模拟实现strlen的方法
  8. 什么是localhost(127.0.0.1)?
  9. 【渝粤题库】广东开放大学 建筑构造 形成性考核
  10. 网站被黑提醒该站点可能受到黑客攻击,部分页面已被非法篡改...