量化投资必备10分钟学会Windows下定期自动运行任务获取股票数据

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

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

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

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

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

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

使用python获取股票数据

首先我们需要想办法获取当前时刻股票的价格,这个在我们的课程中有提过。

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

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

“sz000002.txt” 文件内容截图

另外值得一提的是,这部分代码都是可以分享给大家的。

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

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

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

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

任务计划程序截图

1 如何打开任务计划程序

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

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

键盘上面的windows键

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

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

2 准备bat脚本

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

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

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

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

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

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

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

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

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

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

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

3 设置任务计划程序

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

新建任务

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

设置任务名称

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

设置任务运行频率

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

设置任务开始时间

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

设置执行任务类型

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

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

设置要执行的任务

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

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

自动运行程序截图

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

总结

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

未经允许不得转载:股市行情网 » 量化投资必备10分钟学会Windows下定期自动运行任务获取股票数据

相关文章

评论 (0)