Summary

  • Documentation for StockPulse’s new API version 4
  • Availability of all raw message volume statistics – also historically for the last 8 years
  • New endpoint for buzz and sentiment data before earnings dates – global coverage
  • Recent signal triggers based on buzz and sentiment data for major indices and equities
  • New and improved data structure

We have made a major update for our API and released version 4 in July 2019. Additionally, to new and very interesting data sets we made a comprehensive change of our data structure.

The new documentation can be found here: StockPulse’s API version 4

Please see menu item “NEW IN VERSION 4” which lists all new endpoints with a short description.

Major Updates

Availability of all Raw Message Reports

All messages and text documents that are collected with our crawlers are processed with
StockPulse‘ proprietary NLP and sentiment analysis methodologies. We aggregate all sentiment
labeled messages on different time scales. We use the term “report” or “reports” to refer to the
aggregation of multiple sentiment messages for a certain time frame. We create different report
models based on different time periods: 10 minutes, hours, and days. Reports can be classified
into three main categories that define their aggregation level and weighting.

  • Unweighted reports: Unweighted reports summarize the number of posted messages.
  • Exponentially weighted reports: Exponentially weighted reports use exponential smoothing to model the fact that a message has a certain “half-life” (messages are decayed for a certain time period)

The new values are based on the exisiting /titles/history endpoint (https://docs.stockpulse.de/
v4/#tag/Buzz/paths/~1titles~1{ident}~1info/get) that returns historic buzz and sentiment values.

Users who have the necessary subscription rights for the new API version 4, can use a new
parameter called “fields”. It accepts these values:

total, pos, neg, smooth_total, smooth_pos, smooth_neg, avg_smooth_total, avg_smooth_pos, avg_
smooth_neg

The values can be provided with a comma separated list. A sample call for „Bitcoin“ (StockPulse
id: 99985) looks like this:

https://api2.stockpulse.de/v4/titles/99985/history?partition=daily_5am&fields=total,pos,neg,sm
ooth_total,smooth_pos,smooth_neg

A sample API result looks like this:

{“n”:”Bitcoin”,”id”:99985,”startDate”:1561380007,”endDate”:1561984807,”partition”:”daily_5am”,”hi
story”:[
{
      “b”: 0.8577,
      “s”: -0.6395,
      “t”: 1561950000,
      “total”: 24795,
      “pos”: 5479,
      “neg”: 3496,
      “smooth_total”: 14359.8,
      “smooth_pos”: 3273.98,
      “smooth_neg”: 2019.19
}

New Earnings Releases Endpoint

This new endpoint returns stock market listed companies which have earnings releases during
the next 2 days or in any given time frame that can be specified via startDate- and endDateparameters.

The return for example shows the actual release date, the release period, the next earnings date
and current buzz and sentiment values. It is possible to specify the country to filter companies
and their release dates. A country is specified with the standardized three-letter country code.

https://api2.stockpulse.de/v4/titles/earnings?country=DEU

Sample output:
{
      “id”: 17128,
      “en”: “Rheinland Holding AG”,
      “release_date”: “2019-06-30T22:00:00.000Z”,
      “time”: “Unspecified”,
      “year”: 2018,
      “period”: “Y”,
      “prior”: “”,
      “consensus”: null,
      “actual”: “”,
      “country”: “DEU”,
      “b”: 0.1097,
      “s”: -0.0576,
      “next_earnings”: “2019-07-01”
},

Recent Signal Triggers for Single Companies

This new endpoint allows to retrieve current signal triggers based on pre-defined rules of
buzz and sentiment data for single titles. Titles can be single companies, indices, currencies, or
commodities. The return will show the latest signal triggers for this title.

A complex event processing (CEP) engine is running in the background in order to process the
large amounts of data that are necessary to monitor the trigger rules. We defined different rules
based on our buzz and sentiment data. For instance, a buzz warning indicates an increased buzz
value that exceeds a certain threshold (e.g. an average value for a company).
By the way, our signal rules engine which releases the triggers is also accessible via our API and
users can create and specify their own rules.

https://api2.stockpulse.de/v4/triggers/99999

For the currency pair EURUSD the endpoint returns the following result (a Buzz Warning in this
case):

[
{
      “id”: 99999,
      “t”: 1561958683,
      “b”: 1.5285,
      “s”: -1.5046,
      “s_id”: 2622,
      “s_n”: “Buzz Warning”,
      “t_id”: 141850474
}

It is also possible to retrieve historical triggers for a title by using the parameters startDate
and endDate. The format of the timestamp can be a unix timestamp or in format yyyy-mmddThh:
mm:ss.

https://api2.stockpulse.de/v4/triggers/99999?startDate=2019-05-01T00:00:00&endDate=2019-
06-27T00:00:00

[
{
      “id”: 99999,
      “t”: 1561426666,
      “b”: 1.5008,
      “s”: 1.0761,
      “s_id”: 2622,
      “s_n”: “Buzz Warning”,
      “t_id”: 141804109
},
{
      “id”: 99999,
      “t”: 1561334800,
      “b”: 1.5037,
      “s”: 0.2827,
      “s_id”: 2622,
      “s_n”: “Buzz Warning”,
      “t_id”: 141796840
},
{
      “id”: 99999,
      “t”: 1561089264,
      “b”: 1.5008,
      “s”: 2.3212,
      “s_id”: 2622,
      “s_n”: “Buzz Warning”,
      “t_id”: 141784705
},

New Data Structure

As the amount of different data sets and data characteristics in the StockPulse universe is
growing constantly, we have put extensive work in the reorganization of our data structure. The
main change is a new clustering of data sets in different meta categories. We now differ between
data, signals, and strategies.

Generally, all data sets that provide raw data (e.g. total, positive, or negative aggregation of
messages, buzz and sentiment values, topics, etc.) are assigned to the meta category “Data”.
All data sets that require more sophisticated calculations, for instance our trading signals Pulse
Picks, are assigned to the category “Signals”.Further, there are data sets that are more fundamental by nature. These are clustered under the
category “Fundamental & Technical”.

In “Add-Ons” we provide newsbots, a backtesting engine, or a web-based dashboard.
We have also adopted the new structure for the new API documentation (https://docs.
stockpulse.de/v4). There is a new menu on the left side of the page which reflects the new data
strcuture.

It is now fairly easy to locate all endpoints that refer to our general inventory. We have also
adjusted the same data structure for API version 3.

Documentation for StockPulse’s API version 3