python做股票软件开发
⑴ 股票池如何用python构建
股票池用python构建的方法是:使用第三方平台,目前可以使用的是聚宽,对比一下聚宽、优矿、大宽网(已经倒闭了),都大同小异,选哪个都一样。
虽然这些平台都大同小异,但是代码可不能简单复制粘贴,因为底层函数库是不一样的,有可能在别的平台根本用不了某个函数,并且简单复制到自己电脑中的python的话百分之百用不了。
代码的思路是,每个月底进行调仓,选出市值最小的股票交易,去掉ST/*ST/停牌/涨停的股票,然后选择最小市值的10只,基准是创业板综指,看看结果。
python构建数据获取方法是:
这里使用为了接下来的操作需要将一定历史范围的股票数据下载下来,这里下载起始时间为20160101,截至时间为运行代码的时间范围的历史日线数据。
这里以tushare为例, tushare获取历史数据有两种方式。
第一种是以迭代历史交易日的方式获取所有历史数据,假设获取三年的历史数据,一年一般220个交易日左右,那么3年需要请求660多次左右,如果以这种方式的话,就下载数据的时间只需要1分钟多点的样子。
第二种是以迭代所有股票代码的方式获取所有历史数据,股票数量有大概3800多个,需要请求3800多次,但是在积分有限的情况下一分钟最多请求500次,也就意味着仅下载数据的时间至少需要大概8分钟时间。
理论上,你获取的历史范围超过17.3年,那么使用第一种方式才比第二种方式快。
⑵ 怎样用 Python 写一个股票自动交易的程序
股票自动交易助手提供了一个 Python 自动下单接口,参考代码
#股票自动交易助手Python自动下单使用例子
#把此脚本和StockOrderApi.pyOrder.dll放到你自己编写的脚本同一目录
fromStockOrderApiimport*
#买入测试
#Buy(u"600000",100,0,1,0)
#卖出测试,是持仓股才会有动作
#Sell(u"000100",100,0,1,0)
#账户信息
print("股票自动交易接口测试")
print("账户信息")
print("--------------------------------")
arrAccountInfo=["总资产","可用资金","持仓总市值","总盈利金额","持仓数量"];
foriinrange(0,len(arrAccountInfo)):
value=GetAccountInfo(u"",i,0)
print("%s%f"%(arrAccountInfo[i],value))
print("--------------------------------")
print("")
print("股票持仓")
print("--------------------------------")
#取出所有的持仓股票代码,结果以','隔开的
allStockCode=GetAllPositionCode(0)
allStockCodeArray=allStockCode.split(',')
foriinrange(0,len(allStockCodeArray)):
vol=GetPosInfo(allStockCodeArray[i],0,0)
changeP=GetPosInfo(allStockCodeArray[i],4,0)
print("%s%d%.2f%%"%(allStockCodeArray[i],vol,changeP))
print("--------------------------------")
⑶ 怎样用Python写一个股票自动交易的程序
方法一前期的数据抓取和分析可能python都写好了庆察,所以差这交易指令接口最后一步。
对于股票的散户,正规的法子是华宝,国信,兴业这样愿意给接口的券商,但貌似开户费很高才给这权利,而且只有lts,ctp这样的c++接口,没python版就需要你自己封装。方法二是wind这样的软件也有直镇拦接的接口,支持部分券商,但也贵,几万一年是要的。方法三鼠标键盘模拟法,很复杂的,就是模拟键盘鼠标去操作一些软件,比如券商版交易软件和大智慧之类的。方法四就是找到这些软件的关于交易指令的底层代码并更改,不过T+1的规则下,预誉旅茄测准确率的重要性高于交易的及时性,花功夫做数据分析就好,交易就人工完成吧⑷ 怎么制作一款股票软件
自己如果会编写程序,同时自己有自己的选股模型其实也非常简单。我以前也用过证券公司的软件里面自带的公式,好些模型无法实现,而且还出现过数据缺失(同一个公式跑出来的数据完全不一样,当然也导致巨大损失)。去年开始自己开始弄了个小软件在不断完善,目前一个选股模型跑完沪深两市数据大概10-12分钟。软件还是存在缺陷,没有把机器学习算法融入,模,工地上的事情忙完了(本人非计算机专业,业余喜欢玩玩java,Python机器学习而已),把机器算法融入进去试试。上个自己的弄的股票软件的图片
⑸ 学python能做什么
一、常规软件开发
支持函数式编程和OOP面向对象编程,能够承担任何种类软件的开发工作,因此常规的软件开发、脚本编写、网络编程等都属于标配能力。
二、科学计算
随着NumPy, SciPy, Matplotlib, Enthought librarys等众多程序库的开发,Python越来越适合于做科学计算、绘制高质量的2D和3D图像。是一门通用的程序设计语言,比Matlab所采用的脚本语言的应用范围更广泛,有更多的程序库的支持。虽然Matlab中的许多高级功能和toolbox目前还是无法替代的,不过在日常的科研开发之中仍然有很多的工作是可以用Python代劳的。
三、人工智能
在人工智能大范畴领域内的机器学习、神经网络、深度学习等方面都是主流的编程语言,得到广泛的支持和应用。
四、WEB开发
基于Python的Web开发框架不要太多,比如耳熟能详的Django,还有Tornado,Flask。其中的Python+Django架构,应用范围非常广,开发速度非常快,学习门槛也很低,能够帮助你快速搭建起可用的WEB服务。
五、网络爬虫
也称网络蜘蛛,是大数据行业获取数据的核心工具。没有网络爬虫自动地、不分昼夜地、高智能地在互联网上爬取免费的数据,那些大数据相关的公司恐怕要少四分之三。能够编写网络爬虫的编程语言有不少,但Python绝对是其中的主流之一,其Scripy爬虫框架应用非常广泛。
六、数据分析
在大量数据的基础上,结合科学计算、机器学习等技术,对数据进行清洗、去重、规格化和针对性的分析是大数据行业的基石。Python是数据分析的主流语言之一。
⑹ 想编写股票自动交易软件,学什么语言好
Python 作为自动化交易的入门编程的计算机语言还不错。也可参考现有的云交易(或自动炒股交易)软件,毕竟已投入使用的产品相对来说会更成熟和稳定。
⑺ 用Python 进行股票分析 有什么好的入门书籍或者课程吗
单产品趋势交易系统,用c语言二次开发来搞,直接图形化输出买卖点,回测即可。通达信最新版可以开发dll了,不过接口不太爽,可以改用飞狐、金字塔及其他软件。
多产品组合投资,用SAS收集价格数据、财务数据等设计策略并回测。sas比python强大很多,不过入门要花1个月(指业余时间学习)。
并
不推荐先看书籍,关于程序的书应该作为工具书,不当程序员的话按部就班学是浪费时间,而关于股票的书没经验就看是空对空。关键是你自己怎么想的,然后就怎
么实践,重要的是想法,之后就是边编边查工具书或论坛。过拟合、滑点之类的问题,真实交易一下才有体会,然后继续调试即可。