当前位置: 首页 > news >正文

获取 Wind 数据并进行简单的择时分析

使用Python获取Wind数据并进行简单的择时分析时,需要按照以下步骤操作。

1)登录Wind官网,在“金融解决方案”的下拉列表里选择“金融终端”选项,如下图3.2所示。

2)根据自己计算机的实际情况单击“WindowsMac版”或“移动版”按钮,如下图所示。

也可以申请试用。

3)下载并安装完毕后,打开Wind金融终端,输入用户名和密码,就能登录了。然后选择“开

>插件修复>修复Python接口”选项,如下图所示。

4)修复完成后,如下图所示。

注意:修复完成后,可通过“配置详情”查看具体修复了哪些 Python 设置。若列表中没有

需要使用的Python,可通过“添加路径”修复指定的Python,添加路径格式可参考具体的提示。

5)接下来,可以调用WindPy进行简单的择时分析,代码如下。

from pylab import *
import matplotlib.pyplot as plt
import datetime
from WindPy import w
from matplotlib.pyplot import MultipleLocator #这个类用于设置刻度间隔
#支持中文
mpl.rcParams['font.sans-serif'] = ['SimHei']
#获取股票数据
def get_stock_data(ticker, fields, start_date, end_date, options):
stock_data = w.wsd(ticker, fields, start_date, end_date,options,
usedf=True)
return stock_data[1]['CLOSE']
#计算移动平均线
def calculate_moving_average(data, window):
avg = data.rolling(window=window).mean()
return avg
#转换日期
def changedate(stock_data):
alldates = []
riqi = stock_data.index
for i in range(len(riqi)):
alldates.append(riqi[i].strftime('%Y-%m-%d'))
return alldates
#绘制股票价格走势图
def plot_stock_price(stock_data,alldates):
#绘制股票价格和移动平均线图
plt.figure(figsize=(12, 6))
plt.plot(alldates, stock_data['ma5'], label='5-day MA')
plt.plot(alldates, stock_data['ma10'], label='10-day MA')
plt.xlabel('Date')
plt.ylabel('Price')
#把 x轴的刻度间隔设置为 20,并存在变量里
x_major_locator = MultipleLocator(len(alldates)/20)
ax = plt.gca()
ax.xaxis.set_major_locator(x_major_locator)
#设置 x轴的旋转角度为 45度
ax.tick_params(axis='x', rotation=45)
plt.legend()
plt.show()
if __name__ == '__main__':
w.start() #启动 API接口
result = w.isconnected() #判断 WindPy是否已经登录成功
if result == True:
ticker = '000001.SH' #股票代码
start_date = "2023-04-01" #开始日期
end_date = datetime.datetime.now() #结束日期
window = 20 #移动平均线的窗口大小
fields = "open,high,low,close"
options = "returnType=1;PriceAdj=CP"
stock_data = get_stock_data(ticker, fields, start_date, end_date,
options)
alldates = changedate(stock_data)
#计算 5日和 10日移动平均线
stock_data['ma5'] = calculate_moving_average(stock_data, 5)
stock_data2 = get_stock_data(ticker, fields, start_date, end_date,
options)
stock_data['ma10'] = calculate_moving_average(stock_data2, 10)
plot_stock_price(stock_data,alldates)
else:
print('未连接! ')

这个程序首先启动Wind接口,然后获取股票代码为000001.SH的股票数据。接着计算了5日、

10日的移动平均线,并根据这些移动平均线的交点生成了择时信号。最后,将结果绘制出来,如

下图所示。

赠书活动:

本次的赠书活动的书籍是我的新书《Python金融大数据分析快速入门与案例详解》。

赠书活动规则
🤝关注我:和我一起揭开编程世界的神秘面纱。相遇是一种缘分,关注更是一种信任!
📲 添加博主wx:添加我的微信 jessica_ying_cat,遇到问题也可直接咨询。
💬 评论区留言:在评论区留言,即可参与。留言内容越走心、越有启发性,越有机会获得点赞!
👋活动时间:2024 年 11 月4 日到 2024 年 11 月 11 日。
🎁 公布结果:活动结束后,我将抽取幸运读者,免费获取此书,并在评论区或wx朋友圈公布。

http://www.lryc.cn/news/476628.html

相关文章:

  • 小檗碱的酵母代谢工程生物合成-文献精读78
  • 文件指针和写入操作
  • 跨越科技与文化的桥梁——ROSCon China 2024 即将盛大开幕
  • springboot+shiro 权限管理
  • PureMVC在Unity中的使用(含下载链接)
  • 25国考照片处理器使用流程图解❗
  • 一位纯理科生,跨界自学中医,自行组方治好胃病、颈椎病与高血脂症,并在最权威的中国中医药出版社出版壹本专业中医图书!
  • 运动控制 双轮差速模型轨迹规划
  • 使用 Sortable.js 库 实现 Vue3 elementPlus 的 el-table 拖拽排序
  • MySQL索引相关介绍及优化(未完...)
  • 【AI+教育】一些记录@2024.11.04
  • 三维测量与建模笔记 - 2.2 射影几何
  • 论文速读:简化目标检测的无源域适应-有效的自我训练策略和性能洞察(ECCV2024)
  • ros与mqtt相互转换
  • Golang | Leetcode Golang题解之第522题最长特殊序列II
  • 安卓开发之数据库的创建与删除
  • 数据结构:LRUCache
  • shell脚本案例:创建用户和组
  • C++笔试题之实现一个定时器
  • 【英特尔IA-32架构软件开发者开发手册第3卷:系统编程指南】2001年版翻译,2-13
  • 快消零售行业的培训创新:构建在线培训知识库
  • 【AI开源项目】Botpress - 开源智能聊天机器人平台及其部署方案
  • 一文读懂系列:SSL加密流量检测技术详解
  • Android Studio各种历史版本
  • 大数据导论及分布式存储HadoopHDFS入门
  • 语言模型的采样方法
  • 使用 Nginx 配置真实 IP 地址转发
  • WPF+MVVM案例实战与特效(二十四)- 粒子字体效果实现
  • Oracle视频基础1.4.3练习
  • energy 发布 v2.4.5