获取 Wind 数据并进行简单的择时分析
使用Python获取Wind数据并进行简单的择时分析时,需要按照以下步骤操作。
(1)登录Wind官网,在“金融解决方案”的下拉列表里选择“金融终端”选项,如下图3.2所示。

(2)根据自己计算机的实际情况单击“Windows版”“Mac版”或“移动版”按钮,如下图所示。
也可以申请试用。

(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朋友圈公布。
相关文章:
获取 Wind 数据并进行简单的择时分析
使用Python获取Wind数据并进行简单的择时分析时,需要按照以下步骤操作。 (1)登录Wind官网,在“金融解决方案”的下拉列表里选择“金融终端”选项,如下图3.2所示。 (2)根据自己计算机的实际情况…...
小檗碱的酵母代谢工程生物合成-文献精读78
De novo production of protoberberine and benzophenanthridine alkaloids through metabolic engineering of yeast 将酵母代谢工程应用于原小檗碱和苯并啡啶类生物碱的从头合成 苄基异喹啉类生物碱的微生物合成-文献精读77 香叶醇酵母生产机器学习优化酵母-文献精读66 黄…...
文件指针和写入操作
文件指针位置 w 模式: 打开文件时,文件指针位于文件的开头。如果文件已存在,文件内容会被清空。写入的数据会从文件开头开始覆盖原有内容。 a 模式: 打开文件时,文件指针位于文件的末尾。如果文件已存在,文…...
跨越科技与文化的桥梁——ROSCon China 2024 即将盛大开幕
在全球机器人技术飞速发展的浪潮中,ROS(Robot Operating System)作为一款开源的机器人操作系统,已成为无数开发者、研究人员和企业的首选工具。为了进一步推动ROS的应用与发展,全球知名的机器人操作系统会议——ROSCon…...
springboot+shiro 权限管理
一、为什么要了解权限框架 权限管理框架属于系统安全的范畴,权限管理实现对用户访问系统的控制,按照安全规则用户可以访问而且只能访问自己被授权的资源。 目前常见的权限框架有Shiro和Spring Security,本篇文章记录springboot整合sh…...
PureMVC在Unity中的使用(含下载链接)
前言 Pure MVC是在基于模型、视图和控制器MVC模式建立的一个轻量级的应用框架,这种开源框架是免费的,它最初是执行的ActionScript 3语言使用的Adobe Flex、Flash和AIR,已经移植到几乎所有主要的发展平台,支持两个版本框架…...
25国考照片处理器使用流程图解❗
1、打开“国家公务员局”网站,进入2025公务员专题,找到考生考务入口 2、点击下载地址 3、这几个下载链接都可以 4、下载压缩包 5、解压后先看“使用说明”,再找到“照片处理工具”双击。 6、双击后会进入这样的界面,点击&…...
一位纯理科生,跨界自学中医,自行组方治好胃病、颈椎病与高血脂症,并在最权威的中国中医药出版社出版壹本专业中医图书!
这是一位铁杆中医迷, 也是《神农本草经——精注易读本》的作者。 希望更多的人能够受到启发,感受中医之神奇,敢于跨界,爱好中医,学习中医! 一个病人以自己的切身感受与诊断,并使之汤药治愈疾病&…...
运动控制 双轮差速模型轨迹规划
文章目录 一、轨迹规划1.1轨迹平滑与轮迹1.2 目标距离1.3 速度限制1.4 候选速度的计算与调整1.5 路径生成 二、双轮轨迹2.1 计算梯度2.2 计算偏移轨迹2.3 返回结果 一、轨迹规划 1.1轨迹平滑与轮迹 初始时,我们有一条由若干坐标点构成的机器人运行路径。通过对这些…...
使用 Sortable.js 库 实现 Vue3 elementPlus 的 el-table 拖拽排序
文章目录 实现效果Sortable.js介绍下载依赖添加类名导入sortablejs初始化拖拽实例拖拽完成后的处理总结 在开发过程中,我们经常需要处理表格数据,并为用户提供便捷的排序方式。特别是在需要管理长列表、分类数据或动态内容时,拖拽排序功能显得…...
MySQL索引相关介绍及优化(未完...)
如何看一条SQL语句的执行好坏? MySQL提供了自带的工具Explain可以查看sql语句的执行好坏。 explain主要的列: 1:type:这一列表示MySQL决定如何查找表中的行,查找数据行记录的大概范围。 有 system const eq_ref ref…...
【AI+教育】一些记录@2024.11.04
一、尝新 今天尝试了使用九章随时问,起因是看到快刀青衣的AI产品好用榜,里面这么介绍九章随时问:「它不是像其他产品那样,直接给你出答案。而是跟你语音对话,你会感觉更像是有一位老师坐在你的旁边,一步步…...
三维测量与建模笔记 - 2.2 射影几何
教程中H矩阵写的有问题,上图中H矩阵应该是(n1) x (m1) 共点不变性,下图中黄色方块标记的点,在射影变换前后,虽然直线的形状有所变化,但仍然相交于同一个点。 共线不变性,下图黄色标记的两个点,在…...
论文速读:简化目标检测的无源域适应-有效的自我训练策略和性能洞察(ECCV2024)
中文标题:简化目标检测的无源域适应:有效的自我训练策略和性能洞察 原文标题:Simplifying Source-Free Domain Adaptation for Object Detection: Effective Self-Training Strategies and Performance Insights 1、Abstract 本文重点关注计算…...
ros与mqtt相互转换
vda5050 VDA5050协议介绍 和 详细翻译-CSDN博客 ros与mqtt相互转换 如何转换的,通过某个中转包,获取ros的消息然后以需要的格式转换为mqtt 需要的参数 ros相关 parameters[ (ros_subscriber_type, vda5050_msgs/NodeState), (ros_subscriber_queue…...
Golang | Leetcode Golang题解之第522题最长特殊序列II
题目: 题解: func isSubseq(s, t string) bool {ptS : 0for ptT : range t {if s[ptS] t[ptT] {if ptS; ptS len(s) {return true}}}return false }func findLUSlength(strs []string) int {ans : -1 next:for i, s : range strs {for j, t : range s…...
安卓开发之数据库的创建与删除
目录 前言:基础夯实:数据库的创建数据库的删除注意事项 效果展示:遇到问题:如何在虚拟机里面找到这个文件首先,找到虚拟机文件的位置其次,找到数据库文件的位置 核心代码: 前言: 安…...
数据结构:LRUCache
什么是LRUCache 首先我们来看看什么是cache 缓存(Cache)通常用于两个速度不同的介质之间,以提高数据访问的速度和效率。这里有几个典型的应用场景: 处理器和内存之间: 处理器(CPU)的运算速度远…...
shell脚本案例:创建用户和组
使用场景 在部署程序时,往往首要任务是创建用户和组。有的程序可能用到的组、用户比较多;且不知道服务器环境是否已经有了所需的组和用户。所以针对这个情况,根据Oracle RAC部署时的实际情况写了个脚本。 Linux版本 脚本代码 #!/bin/bash …...
C++笔试题之实现一个定时器
一.定时器(timer)的需求 1.执行定时任务的时,主线程不阻塞,所以timer必须至少持有一个线程用于执行定时任务 2.考虑到timer线程资源的合理利用,一个timer需要能够管理多个定时任务,所以timer要支持增删任务…...
C++实现分布式网络通信框架RPC(3)--rpc调用端
目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中,我们已经大致实现了rpc服务端的各项功能代…...
synchronized 学习
学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...
设计模式和设计原则回顾
设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...
理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端
🌟 什么是 MCP? 模型控制协议 (MCP) 是一种创新的协议,旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议,它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...
聊聊 Pulsar:Producer 源码解析
一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台,以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中,Producer(生产者) 是连接客户端应用与消息队列的第一步。生产者…...
STM32F4基本定时器使用和原理详解
STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...
高危文件识别的常用算法:原理、应用与企业场景
高危文件识别的常用算法:原理、应用与企业场景 高危文件识别旨在检测可能导致安全威胁的文件,如包含恶意代码、敏感数据或欺诈内容的文档,在企业协同办公环境中(如Teams、Google Workspace)尤为重要。结合大模型技术&…...
(转)什么是DockerCompose?它有什么作用?
一、什么是DockerCompose? DockerCompose可以基于Compose文件帮我们快速的部署分布式应用,而无需手动一个个创建和运行容器。 Compose文件是一个文本文件,通过指令定义集群中的每个容器如何运行。 DockerCompose就是把DockerFile转换成指令去运行。 …...
全志A40i android7.1 调试信息打印串口由uart0改为uart3
一,概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本:2014.07; Kernel版本:Linux-3.10; 二,Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01),并让boo…...
如何理解 IP 数据报中的 TTL?
目录 前言理解 前言 面试灵魂一问:说说对 IP 数据报中 TTL 的理解?我们都知道,IP 数据报由首部和数据两部分组成,首部又分为两部分:固定部分和可变部分,共占 20 字节,而即将讨论的 TTL 就位于首…...
