利用AWS搭建基金净值通知服务

当前问题

本人通过手机app「天天基金网」购买了两只基金,每日收盘后都急于想知道当日涨幅和盈亏(只怪太穷,天天盯着这点小钱)。由于净值更新并没固定时间点,本人每日晚上8点开始便不停手动刷手机以求得到当日最新净值。对于手动刷这种纯体力活,有些疲倦了,遂决定用程序化来解决

解决思路

目前各大厂商都提供云计算,在云端运行抓取最新净值的函数,然后把结果通知给我。

解决方案

查询净值API

金融数据基本都是私有数据,要么自己从网页上爬,要么利用别人提供的WEB API。在网上搜寻一番,并未找到合适的API(如果有误请推荐给小弟),于是决定从天天基金网上自己爬数据。
通过分析http://fund.eastmoney.com/f10/jjjz_000831.html(工银医疗保健)页面,发现天天基金网有用自己的API:http://fund.eastmoney.com/f10/F10DataApi.aspx?type=lsjz&code=000831&page=1&per=1 自己用Python简单试了下,确实有效。

AWS

听说AWS有free tier计划,遂注册一个free account(详细注册教程请自行Google)。

AWS lambda

如果仅仅跑一小段代码,利用AWS lambda服务即可。将抓取净值的逻辑填写在lambda函数里。

lambda是Event-Based,需要Event来触发其运行。

Schedule event

我期望每日晚上8点开始运行我的函数,将触发器选成Schedule event, 设定cron表达式:cron(0/15 12-14 ? * MON-FRI *) 含义:每周1-5,从8点-10点(UTC+8),每15分钟触发lambda运行一次

AWS SNS

lambda运行结果可以通过email/SMS通知给用户.

最终流程

[Schedule Event] -> [lambda] -> [SNS] -> end-users 

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在前一部分我们提到使用Docker部署应用同时采用12factors原则时,服务器对于容器来讲,只依赖它的计算资源...
    iambowen阅读 11,278评论 0 12
  • 本文是GitChat《Serverless 风格微服务的持续交付(上):架构案例》部分内容已做修改。文章聊天实录请...
    顾宇阅读 8,454评论 1 13
  • Lambda Function Questions: what type of code can I run as...
    abrocod阅读 4,865评论 0 0
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,323评论 19 139
  • 欧莉尔团队的家人们大家晚上好,我是六班的学员霞姐,此刻的心情很开心,也很激动,在这次特种兵学习中让我明白了很多,也...
    霞霞姐姐阅读 890评论 0 0