Reddit Hyped Stocks — 是 GitHub 上开源的一个基于 Python 开发的查找 Reddit 以后被炒作的股票的 Web 应用程序。
通过它,你或者能找到下一支“游戏驿站”。
1. 怎么判断“炒作”?
\
\
作者应用“炒作得分”的概念对 Reddit 上所有被炒作的股票进行了排序,其中炒作得分的计算如下:
收集的原始数据蕴含所选子 Reddit 的前 n 个帖子,每次都会收集包含点赞在内的所有根本数据。
每个帖子都会被标记为某只股票的炒作贴(基于题目)。
而后建设一个矩阵,其中每一行代表一个工夫点,每一列代表一只股票。矩阵的值示意在某个工夫点,一只股票的所有帖子的炒作分数的总和。
而后计算每个工夫点的差值作为增量值,比方我想晓得过来 7 天的炒作分数排行,我会对各个股票将过来 7 天的增量值之和作为总和来计算炒作分数并进行排行。
无关确切的算法,请查看源代码中的 ticker_score_calulation.py。
2. 性能与阐明
炒作图 (顶部),即下图所示:
该图表显示了 Reddit 上以后炒作分数最高的一些股票,显示了排名前 15 位的股票的累计炒作得分。默认状况下,这个图表显示过来一星期内各个股票的分数变动。
炒作表(左侧),如下图所示:
这里会显示排名前 30 位的炒作股票及其各自的炒作得分,以下值:
- Score Abs:所有相干帖子的炒作分数总和
- Δ7d/Δ3d/Δ1d:周期别离为 7 /3/ 1 天的增量炒作得分
另外,每一行都批示一天的仓位增 / 减(两个上 / 下箭头示意 +/- 5 个排名,一个上 / 下箭头示意小于 +/- 5 个排名,= 示意不变)。
单击股票名字后,会关上详细信息视图:
这里会展现股票的根本信息,每股收益、所属行业、PE 值、关联的 Reddit 帖子等等。
3. 装置部署
在 Python 实用宝典后盾回复:Reddit 能够获取此开源代码库的代码和数据 (reddit-hyped-stocks 及 data.db)。
(选项 1)应用 Docker 运行应用程序:
- 克隆此仓库或将其下载到本地计算机
- 要应用没有你本人的数据的应用程序,你能够从:https://drive.google.com/file…\
获取示例数据库,下载并将文件复制到 backend/data.db - 运行./run-server-docker.sh 这将须要一些工夫来下载依赖项并构建应用程序
- 浏览器关上 http://localhost:5000 拜访页面
(选项 2)在没有 Docker 的状况下运行应用程序 / 设置开发环境
- 将存储库克隆到本地计算机
- 装置 Python 3 和 Node.js
- cd 到 backend 并运行 pip3 install -r requirements.txt 以装置后端依赖项。运行 backend/start.sh 以运行后端开发服务器
- cd 到 frontend 并运行 npm i 以装置前端依赖项。运行 npm run start 以运行前端开发服务器。
(非必须)收集原始数据
因为炒作得分取决于帖子,因而必须定期(例如每小时)爬取 Reddit 帖子数据。
必须条件:获取 Reddit API token:
- 返回 https://www.reddit.com/prefs/…
- 点击“创立利用”并填写信息,应用“script”类型
- 将密钥和应用程序 ID 复制到文件中: backend/praw.ini
默认状况下,子论坛 robinhoodpennystocks 和 pennystocks 会被爬取(可在中配置 backend/load_data.py)。
数据会被保留到 Sqlite 数据库中。要查问数据,请应用脚本 backend/load_data.py 或运行 ./run-load-data-docker.sh。
以上就是本次分享的所有内容,如果你感觉文章还不错,欢送关注公众号:Python 编程学习圈 ,每日干货分享,发送“J”还可支付大量学习材料。或是返回编程学习网,理解更多编程技术常识。