zoukankan      html  css  js  c++  java
  • 【零基础】极星量化入门十:将重要事件推送到微信

    一、前言

      经常有童鞋担心量化要是运行着挂了怎么办,程序崩溃了怎么办,策略错误疯狂开仓怎么办,有没有什么办法让策略给我发消息呢?

      办法自然是有的,python无所不能嘛。其实很简单,一段代码就搞定了。

    二、原理

      微信公众号(服务号)有一个功能就是向用户主动推送消息,一般来说要实现这个功能你得有一个公众号,还得认证企业、认证服务号,还得有个服务器、域名XXXX,反正就是很麻烦还得花钱。

      不过互联网时代只要你多百度总能找到更好的解决方案,所以今天隆重介绍ServerChan这个服务,作者完成了前面所述的全部困难工作,我们剩下的工作就只是调用一行代码即可(而且不要钱):

    requests.get('https://sc.ftqq.com/'+SCKEY+'.send?text='+text+'&desp='+desp)

      这是利用了python的一个叫requests的模块,模拟了一次GET访问,访问的就是https://sc.ftqq.com/XXX这个URL。其中SCKEY是你在ServerChan上申请的KEY,text和desp是你向微信推送的消息内容。

    三、准备工作

      1、绑定微信

      http://sc.ftqq.com/3.version

      首先你得在ServerChan(上面的链接)注册一个账户,然后将你的微信和ServerChan的公众号绑定,接着你会得到一个SCKEY,大概长这样:

      你可以直接在这个页面体验一下微信推送(当然这也是一个web版的消息推送渠道)。

      2、推送限制

      推送自然是不可能让你无限制狂发的(服务器受不了、微信也不会让你发太多),限制如下:

    四、功能实现

      如果只是简单的调用一行代码做个范例那不是我的性格,所以我还是使用了BOLL指标做了个范例,并且根据发送规则封装了一个sendWX函数,可以帮助你自动处理发送间隔、日发送限制的问题。

      1、初始化

      初始化这里增加了关于时间的保存,一个是当前“时间”用以留作后面做时间比较,另一个是记录下当前“日期”,后面也是做比较,当日期变化时我们好知道隔日了,又可以多发500条消息了。

      我在最前面定义了一些参数对消息发送做了限制,都注释好了。

       2、消息发送函数

      使用时,text是消息的标题,建议将具体内容就写到这里。desp是消息的正文,你可以写一些详细的描述,最好像我那要将这是第几条消息表述在这里(避免短时间内发送重复内容)。

       3、调用消息推送

      消息推送只需要简单的调用sendWX即可,你可以将它放在需要提醒的地方,或者也可以每隔几分钟调用一次,提醒自己程序还没崩溃。

    五、回顾

      这节我们实现了从量化系统中向微信推送消息,那么有没有可能在微信或web中向量化系统推送消息呢?比如远程关闭、暂停或启动策略?肯定是可以的,不过我现在还没百度,这些内容留到以后再说吧。

      示例代码:

    https://share.weiyun.com/5ljg1xJ

  • 相关阅读:
    python基础五——初识函数
    python基础三——基础数据类型
    Python基础二
    python基础一
    2.配置jenkins
    1.jenkins 安装
    Java8 新特性
    Java8 新特性
    1.什么是 Docker
    idea快捷键
  • 原文地址:https://www.cnblogs.com/cation/p/12577458.html
Copyright © 2011-2022 走看看