GraphGists

FINRA 图

在每个交易日结束时,FINRA 会发布市场中在成交量、市值和价格方面领先的证券。他们也发布市值和价格下跌的证券。此信息可以从任何每日金融服务源获取。其中一个来源是 https://google.com/finance

由此产生的数据形成了一个图

riy240k

正如你所见,这张图变得有趣,不仅因为它展示了当天的提及,还因为它可以展示这些提及在几天内如何出现。如果一只股票在今天和昨天都被提及,这重要吗?这有趣吗?

是的,它很重要。可以针对这张图进行各种分析。一种分析是所有被提及股票出现次数的直方图

tY0qUL7

嗯。非常不平衡:AAPL 位于最右边,而几乎所有其他 top5s 都落在 0-10(不含)的范围内。那么,我们来看看那些被提及次数少于十次的股票。这是否有意义?

TpAGSpA

是的,这很有趣!大多数股票只出现一次(在过去九个月存档的这些数据中)。那么在 top 5s 榜单上出现多次的股票怎么样?那里有什么规律吗?嗯。我们必须进一步研究,但是这些有趣的规律之所以能显现出来,是因为图数据库允许我们筛选出有趣的股票,然后对其进行分析。

搭建图

这个数据库是一个托管在 https://grapheneDB.com 上的 Neo4j 图。它通过一个名为 'scrape' 的程序每天更新,该程序从 Google Finance 网站抓取前五名,将抓取的 HTML 转换为内部关系结构,然后将其翻译成发送到 Neo4j 的 JSON-Cypher 查询。

这个模块被称为 Analytics.Trading.Web.Upload.Cypher。通过 POST 发送的 Cypher 查询看起来类似于这样,用于建立将加入 top5s 证券的日期

然后,在日期建立之后,股票通过 Cypher 语句逐条添加,一次大的 POST 推送完成

提取当天的前五名进行观察和分析

match (d:Day { month: 7 }) where d.day > 10
return d

上面的直方图只是简单地按出现次数对股票符号进行计数。我目前使用我自己的一套分析工具来完成这项工作,既可以在图数据库内部使用 Cypher,也可以在外部使用我的 LoC:Haskell。每天结束时,我会从前五名中选择一只我感兴趣的股票,然后发布一份报告,其中包括 SMA(简单移动平均线)、EMA(指数移动平均线)和随机震荡指标等技术指标。最终产品是一个每日推文

结论

股市很大。太大了。但是通过关注交易量前五名的股票,我们可以聚焦于市场领导者,并在其中寻找有趣且可能有利可图的规律。通过将这些信息连接到图数据库中,这些规律变得清晰可见,使我们能够对其进行分析,也能够探索和发现简单的股票筛选方法会忽略的新规律。股市远非逐行逐笔交易的繁琐工作,这些交易中蕴含的关系和规律从图数据库提供的可视化中受益匪浅。

© . All rights reserved.