u盘自动运行bat_量化投资必备!10分钟学会Windows下定期自动运行任务

d00a418e0b1dccdb095e0f8fa711085a.png

这是邢不行第 57 期量化小讲堂的分享

作者 | 贾真假、邢不行

在量化投资的过程中,我们经常会遇到定期执行某个任务的需求。

例如在每天股市收盘后,需要定期收集今天的个股数据。

例如币圈中BTC在场外交易的最新价格,我希望每隔1小时能监测并记录一次。

再例如我希望程序每隔5分钟能监测下某个资产的价格,若达到了我的止盈条件就自动卖出。

以上都是定期执行任务的需求场景,如果是每次都手动去运行程序,不仅繁琐,而且会经常忘记。

本篇文章演示在交易时间,每隔1小时自动获取万科这个股票的最新价格,并保存到指定文件中。希望通过这个案例,让大家学会如何在windows下自动定期运行任务。

使用python获取股票数据

首先我们需要想办法获取当前时刻股票的价格,这在邢不行的《Python股票量化投资》课程中有详细讲解。

现在简单的分享其中部分代码,具体见下方截图:

7ac0ddbce6b9bde262bc188f032cc6c3.png

抓取万科股票当前时间价格的代码截图

可以看到,只需要6行代码就可以实现这个功能。我们将上面的代码保存在“获取股票当前时刻数据.py”文件中。运行一下脚本,会发现在python脚本的文件夹中会出现一个“sz000002.txt”文件。输出结果为下面的截图。

554841dbbbf63d51d12fb50144cf417f.png

“sz000002.txt” 文件内容截图

如果需要这部分代码,或有问题,可以加邢不行的私人微信号讨论:xingbx007。

现在我们已经有办法获取最新的价格了,那么接下来要做的就是在每天股票交易时间里,每隔一小时自动运行一次该函数

自己每天定期手工运行程序肯定比较麻烦,接下来会介绍如何让程序每天定时自动运行

使用任务计划程序完成自动化

在Windows 10 系统中都有一个自带的应用程序叫做“任务计划程序” (Task Scheduler)。通过这个程序就可以实现每日定时运行特定程序的功能

e9ae9baae04255d6ef8370fe2c204290.png

任务计划程序截图

如何打开任务计划程序

1

首先我们来看看如何打开任务计划程序。

敲击键盘的windows键,然后输入“任务计划程序”。可以看到出现了下面第二张截图的样子。

acc6a85ac5af8b42c4c9f088b0fede82.png

键盘上面的windows键

输入“任务计划程序”之后的屏幕截图

这个时候我们再敲击回车键就可以打开这个程序。

c5960cb75825ea3ed8f68c6529d59598.png

准备bat脚本

2

由于任务计划程序是没有办法直接运行python脚本。所以我们还需要准备一个bat脚本来运行python脚本

不要被脚本这种名字给吓到。其实这个文件很简单。只需要一行代码就可以实现我们想要的功能。

首先我们在桌面空白位置右键新建一个文本文档。完成之后会发现文件夹中多出来一个“新建文本文档.txt”。

a6b6ecdca620ff855ae39f2fa6191dda.png

在文件夹中新建脚本文件的截图

将文本文件命名为“获取股票当前时刻数据.bat”。“.bat”之前的文字都可以根据要实现的功能来命名。

命名完成之后会跳出询问是否更改文件扩展名的警告。点击“是”就可以完成重命名。

153b1bb3f0611f5e3a8ccacdc9b7f626.png

修改文件名称时会遇到的警告

然后用记事本打开“获取股票当前时刻数据.bat”文件,并在里面输入下面这行代码:

143c7e0d6e77f05c249b67a81c2e416b.png

自动运行python脚本的代码截图

这行代码的格式是python(空格),后面加上要运行的python脚本的地址。即"python 文件地址\文件名"。

在截图的这个示例中文件地址为"C:\Users\xbx\Desktop\获取分钟k线数据"。文件名为"获取股票当前时刻数据.py"。要注意里面的分隔符号都是“\” 而不是 “/”。

设置任务计划程序

3

准备好了bat文件就可以开始设置第一步中打开的任务计划程序,来部署我们的bat文件。

bd37039e6176cfcd9335d8719aea5f14.png

新建任务

然后输入每日自动运行任务的名称。如果该任务比较复杂,也可以在描述中输入该任务的具体介绍。完成之后点击下一步。

464025b6b9af7fd2ab9fd05bfa8c7a66.png

设置任务名称

这里是设置该任务的运行频率。因为我们是每日都要更新当日的股票数据,所以这里设置为每天。然后点击下一步。

fd73995d7c399ea0baf3713fc81c82cd.png

设置任务运行频率

这里是设置第一次运行程序的时间及其任务之间的时间间隔,这里将其设置为上午10点30运行,并且每隔一天运行一次。完成之后点击下一步。

ee24171131cf532de38d869a075bbcc9.png

设置任务开始时间

这里是选择操作类型,我们这里选择默认的启动程序,选择好之后点击下一步

c2704889177fad6120c044fac83b1ca0.png

设置执行任务类型

在这里就要用到我们第二步准备的bat脚本。点击浏览,然后找到我们要运行的bat脚本文件,点击确定。设置完成之后点击下一步。然后再点击完成。

经过这几个步骤就完成了任务计划程序的设置。

4a443effa8220a97415ea360266f60d5.png

设置要执行的任务

我们会发现任务计划程序中有了我们设置的“每日10:30更新股票数据”的自动运行任务。如果想要测试一下有没有正确设置,可以点击右边的运行按钮来试运行一下。

90cedd969a6380a775dfc246446aba93.png

设置好自动运行任务的任务计划程序截图

可以看到点击了运行按钮之后会跳出命令行。命令行运行的就是我们的下载每日分钟级股票数据的python脚本。下面就是运行程序的截图:

0d5f716e0ff28fecf9bd7c13bf8be1b0.png

自动运行程序截图

到这里我们就设置好了一个每日自动运行的程序。为了获取每小时的万科价格,我们只需要在再设置另外三个自动运行程序,分别将其运行时间设置在每天的11:30,2:00,3:00。

总结

其实要获取股票每小时的数据并不需要这么麻烦,有其它更简单的方法。本文只是用这个作为案例,来讲解如何在windows10上自动运行脚本。大家可以根据具体的需求,来灵活的使用任务计划程序。

另外有的朋友使用的是Mac OS和Linux,在这两个上面自动运行程序其实更简单。如果有感兴趣可以在文末留言,之后可能会出一期Mac OS和Linux版本的文章。

END

联系邢不行

bbdc7e08d6c4686328ec2b213e0ffc08.png

推荐阅读

2018量化炒币7大玩法复盘 | 视频、PPT分享

收藏!量化小讲堂前50篇合集(含代码)

量化投资中经常使用Excel,可能会被同事打

警惕!数字货币交易所排名陷阱:到底哪家交易最活跃?(下)

历年排名前10的基金,在第2年表现如何?Python告诉你答案

在量化投资中,原来K线还能这么画(附画K线代码)

系列文章

点击图片即可阅读

eaed0b152285f3c8003cd11a29ab47d1.png f4a151cce97129959fded92b785220ed.png

如果你想入门量化,但是始终找不到方向,可以加入我的知识星球。我会在里面解答你的问题,分享我的感悟,不论是投资、技术,还是职业选择、思维方式。

7513e4eba3c4e828cbf540f855685e61.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值