A. Python 实现股票数据的实时抓取
编写Python脚本实时抓取股票数据,满足个人对实时涨跌信息的需求,无需依赖现有股票软件。
首先,获取沪深两市所有上市股票数据。利用Scrapy框架,实现数据爬取并保存至TTJJ.json文件,工程清单包括新建Scrapy工程、设置user-agent文件以防止被服务器封锁。
爬虫核心代码在TTJJr中,整合找到的UserAgentMiddle代码,改进登陆方式。同时,items模块定义数据保存格式,pipeline实现数据处理,保存至json文件,配置细节见settings.py。
获取实时交易数据,通过访问新浪股票接口hq.sinajs.cn/list=(输入股票代码)获取更新信息,仅在开盘至收盘期间有效,其他时间显示为前一日收盘价。简化逻辑,筛选出涨幅最高的10只股票,代码如下。
运行结果展示获取的数据,包含股票代码与当前涨幅,显示每行均为涨幅最高的10只股票。使用结果如图所示,反映了实时抓取的股票实时数据信息。
通过以上步骤,实现Python脚本自动抓取股票实时数据,满足个人需求,记录了一段利用编程技术获取实时股市信息的经历。
B. 股票软件用什么编程
股票软件主要使用编程语言和开发工具进行编程,常用的编程语言包括Java、C++、Python等。
股票软件的开发涉及的编程语言有多种。Java因其跨平台的特性,被广泛用于开发股票软件。C++以其高效和灵活的特点,也在股票软件的编程中占有一席之地。此外,Python因其在数据分析与算法交易方面的优势,也被越来越多的股票软件开发者所采用。
接下来,详细解释这几种编程语言在股票软件编程中的应用:
1. Java:Java作为一种跨平台编程语言,可以在不同的操作系统上运行,具有很好的兼容性和稳定性。股票软件中的交易系统、行情分析等功能,通过Java编程可以实现跨平台的无缝对接。
2. C++:C++是一种面向对象的编程语言,具有高效、灵活的特点。在股票软件中,一些对执行速度要求较高的实时交易系统或高频交易系统,常常使用C++进行开发。
3. Python:Python在数据分析、机器学习、算法交易等领域具有明显优势。股票软件中涉及的大量数据处理、策略回测、自动化交易等功能,Python可以很好地满足这些需求。同时,Python的代码编写效率高,使得开发过程更加高效。
这些编程语言通常会结合一些开发工具来使用,如集成开发环境和各种软件开发框架,以实现股票软件的各项功能。
总之,股票软件的编程主要依赖于Java、C++、Python等编程语言以及相关的开发工具。开发者会根据软件的具体需求和功能特点选择合适的编程语言和工具进行开发。
C. 股票软件用什么语言
股票软件主要用C++或者Python语言进行开发。
详细解释如下:
一、股票软件开发语言概述
股票软件是用于股票交易、分析、预测的工具,其开发涉及多种编程语言。其中,C++和Python是两种常见的选择。
二、C++在股票软件中的应用
C++是一种面向对象的编程语言,因其高效、灵活的特性而被广泛用于股票软件的开发。股票软件需要处理实时数据、进行复杂的算法计算,C++的高性能可以满足这些需求。此外,其强大的库支持也有助于开发者快速构建功能丰富的股票软件。
三、Python在股票软件中的应用
Python是一种解释型语言,以其简单易学、开发效率高的特点受到开发者的青睐。在股票软件开发中,Python可以用于实现各种功能,包括数据分析、可视化、策略回测等。此外,Python有许多第三方库,如Pandas、NumPy、Matplotlib等,可以方便地处理金融数据、进行数据分析及可视化。
四、总结
股票软件的开发可以选择多种编程语言,其中C++和Python是较为常见的选择。C++因其高效、灵活的特性而适用于处理实时数据和复杂算法;而Python则因其简单易学、开发效率高以及丰富的第三方库而广泛应用于数据分析、可视化等方面。开发者可以根据项目需求和自身擅长选择合适的编程语言进行开发。
D. 怎么样在股票软件上设立自己想要的指标
加qq,121909844,我可以帮你编写
E. 求高手编写一个通达信用:个股每日“成交额”的指标源码
求高手给一个表达沪市整个市场昨日成交金额(亿元)的公式或函数
F. 请问哪款股票软件可以根据自己提供的数据系列画出折线图(或K线图)
飞狐、5.83内核的通达信、advanced get都可以做到。
如果是现有交易品种,飞狐和通达信都不能保存结果。只能即时查看,而且要一条一条k线地的输数据,比较麻烦。
你自己可以在飞狐里自建一个品种,用TXT按格式输好数据后导入。这种方法比较好一点。有人试达将彩票的数据输到飞狐里,像看K线一样看。
另外advanced get只要读取符合格式的文本文档就可以了。
飞狐(不是和讯的新飞狐)和Get(8.0的版本就可以了)网上都有免费能用的版本。自己网络一下吧。
G. 如何搭建自己的股票高频数据库(Python)
二话不说,先上结果。本文阐述了以下几个方面:
下图是编写好的数据接口提取数据的示例。该数据接口支持多标的、多品种(股票、指数一起提取)、多字段、多时间提取。并且支持不复权、后复权、等比前复权提取(前复权不太实用就没有做)。而且速度巨快,没有数据量的限制。如果你也觉得很香,请接着往下看,本文将手把手教你搭建这样的数据库。
数据库搭建需要用到一些第三方库,在各位动手之前请安装:
本文的方法不涉及到常用的数据库(不涉及MySQL、MongoDB),思路非常简单,请各位放心食用。主要是使用pyarrow来加强代码性能。虽然不涉及到常用数据库,但这是我目前能想到的最有效的方法。
正所谓“巧妇难为无米之炊”,想搭建高频数据库,就需要一个数据源获取高频数据。在此,我推荐聚宽作为我们的数据源。 聚宽账号的申请请点这里。新人用户有每日100万条数据,DataFrame的一行算一条,请各位务必珍惜自己的数据量。(不过我是正式用户了,每天两个亿,就不太在意这一点哈哈。)
非会员的100万条数据量能干啥?我们来简单计算以下:每个交易日有240条数据(4个小时,240条分钟k线),假设一年有250个交易日,每只股票每年需要占用60000条数据。也即一日的数据量能够提取一只股票16年(100/6=16.66667)左右的股票分钟数据。相当于数据库的搭建过程还是相当艰难的,每天耗尽数据量只能下载好一只股票的数据。(白嫖是这样的啦,如果有条件可以联系聚宽客服,购买正式账号)
我们这里假设我们的数据库记录2015年至今的股票分钟数据。(当然我自己的数据库记录的是2005年1月1日的全A股分钟数据)这里,我们以贵州茅台(股票代码 600519.XSHG)为例,演示数据的提取与保存。先看看数据如何从接口提取出来(这里需要用到各位申请的聚宽账号):
来看看代码运行的结果。
数据提取后,自然需要把数据保存起来。pandas.DataFrame有很多方便的方法可以将数据保存下来。为做对比,这里将数据保存为csv格式和ftr格式。
相对应的,我们可以用这样的代码将保存好的数据读取进来。虽然pandas有read_feather函数,可以直接将ftr文件读取进来,但这个速度比直接调用pyarrow的更慢一些。考虑到代码性能,这里直接从pyarrow调用read_feather函数。
虽然两种格式都能将数据完整地保存下来,但读取速度上,ftr文件占据着绝对的优势。因此,我们考虑到数据库的性能以及数据库所占空间,我们选择使用ftr格式储存数据。feather正如他的名称,像羽毛一样轻,它所占的空间会比csv更小。这是一种不占空间,读取速度又快的文件格式,太香了!
在前文中我提到了行情数据的提取、保存方法,并强调了一定要提取不复权的数据。这是为了与复权因子结合,还原各种形式的复权数据。至于复权的详细定义,请参看 网络。
随便打开一个股票看盘软件,大致会有3种复权方式,即前复权、不复权、后复权。按照我自己的想法,可以这么理解:
在这样的情况下,如果记录价格数据,记录前复权的数据是最没有意义的,因为隔一段时间,历史的价格就全变了。如果只做收益率相关研究的话,记录后复权数据是可以的。然而,我们这里要搭建数据库,所以采取“记录不复权数据”加上“复权因子”还原的方法。
我们着手提取复权因子。在提取之前,不妨再理顺一下思路:
思路理顺了,我们来看看后复权因子的提取方法:
有了复权因子,如何计算复权价格?请接着看第3节——数据接口编写。
提取了行情数据和复权因子数据,应当找个地方把它们存放起来。我分了两个文件夹来保存我的数据。
在你搜集了足够多只股票的分钟数据后,就能够来到这一步,编写一个数据接口方便调用数据。
数据接口的编写重难点在于股票价格复权的计算。这里同样以贵州茅台(股票代码 600519.XSHG)为例来演示如何进行复权的计算。复权的核心在于下面这个公式:
[公式]
先来看看我们如何提取贵州茅台在一段时间(这里为2015-01-01至2021-09-08)内的后复权分钟数据。(这里千万不能将交易量和交易额一起拿去复权了。只有价格数据需要复权。(我不太确定交易量要不要,要的话我就改一改嘿嘿))
看看代码运行的效果。
那么,等比前复权该如何实现呢?其实很简单,只需要在框定了复权因子的时间后,让复权因子全序列除以最后一个复权因子,即得到前复权因子。将这个前复权因子乘上不复权的价格,即可得到等比前复权的价格数据。
以下是数据接口的全部代码,里面有挺多细节(但挺简单的),我就不再赘述了。
要更新数据库的数据,则是将数据库中的所有数据文件逐个读取进来,取最后一天作为start_date,然后取今天作为end_date。将新数据合并到原有的DataFrame中并保存就完成了数据的更新。数据更新比较耗时,也需要一定的数据量。不过,不论如何,我们来看看数据更新的代码。
在编写完这些代码后,我把这些代码整合成了一个python文件【high_freq_db.py】放在了site-package中,方便以后数据的调用和更新。
亲爱的读者,感谢你读到这里。本文讲述了我搭建我的股票高频数据库的方法。毕竟我的专业是金融而非计算机,难免会有不足的地方,恳请大家在评论区指出。(华工封校了,我也快疯了,所以一天写了两篇东西。。。。)
另外,这个数据库完全搭建起来之后会非常大(行情数据占80GB左右,包含指数和个股ftr文件),维护起来也比较费时费力,就不对外公布了(我也不知道怎么公布【手动捂脸】)。如确有需要,可以和我私信。
再次感谢大家的阅读!
——————————————————
2022年5月27日更新:
有不少小伙伴想要这个数据,目前我已经整理好上传至网络网盘啦。数据和完整代码私聊获取。
获取数据请只用于学习,勿直接用于投资决策!
H. 在股票软件中怎么绘图写字
各软件操作会有区别,但基本都应该在绘图工具里。
比如通达信软件,打开绘图工具后,里面有个“A”图标,就是可以在软件界面的绘图区域内写字的。
I. 怎么在股票软件加入自己的指标.详解.谢谢.
很简单给你截几个图你可以参考下。(我的软件是 广发证券通达信版本)
1点击功能选择公式系统
4在公式编辑器的右边你可以自己新建 编写公式,也可以把已有的公式代入到系统中来。
如果你自己想自己编写公式可以点击 新建按钮。 如果你想代入一个公式可以点击 导入公式。按照操作步骤操作就可以了,挺简单的。