Equeum Forecast API
API keys are available in Settings/API Tokens. One token is available by default, but more can be added as needed.
Access the Equeum forecast for a single coin via the “tickers” parameter:
Sample Request Endpoint
https://graphql-apis.equeum.com/resources/signals?r=ETH&timeFormat=human&resFormat=fields_rows&token=<token>
r | Cryptocurrency coins that are currently supported by Equeum. |
token | User's API token |
timeFormat | human - Shows time and date in human readable format.
without this value, the date and time will be shown as unix time. |
resFormat | We currently support three formats:
- fields_rows
- json
- csv |
{
"fields": [
"time",
"ticker",
"forecast",
"trendline",
"strength",
"duration",
"lastUpdate",
"isNewSignal"
],
"rows": [
[
"2022-12-04T09:58:00",
"ETH",
5.75,
"up",
"weak",
"23 h, 58 m",
"2022-12-05T09:56:00",
"false"
]
]
}
time | Time of response |
ticker | Name of the coin that was requested |
forecast | ternary value of the forecast |
trendline | direction in which the forecast is going. When it is equal to, or greater than 0, then it shows the value of "up". Then it is lower than 0, then it shows the value of "down" |
strength | trend strength indicator |
duration | duration of the trend direction. Answers the question of how long does the forecast is in up/down position |
lastUpdate | time in which the forecast crossed the 0 line. |
isNewSignal | returns True if a new signal has been detected in the last minute. |
To request multiple coins in a single request, enter each one, separated by comma, in the tickers field
https://graphql-apis.equeum.com/resources/signals?r=ETH,BTC&timeFormat=human&resFormat=fields_rows&token=<token>
Description | Sample Response |
---|---|
Invalid request or coin not supported | {"errors":[{"message":"Invalid ticker","extensions":{"code":"INTERNAL_SERVER_ERROR"}}]} |
Invalid or revoked API token | {"status":"error","error":"Invalid token"} |
To retrieve the list of coins supported, use “keys=engineSymbols”
const io = require('socket.io-client'),
socket = io.connect('https://dev-graphql-apis.equeum.com/notifications', {
port: 80,
path: '/socket.io',
reconnect: true,
query: {
apiToken: '<token>',
},
transports: ['websocket'],
user: 'user 1',
});
socket.on('connect', () => { console.log("socket connected"); });
socket.on('error', () => { console.log("socket error"); });
socket.on('message', (name, data) => {
if (name === 'trendline-signal') {
console.log('New signal', data);
}
else console.log('message', name, data);
});
To access historical data back to February 1, 2022.
Sample Request:
https://graphql-apis.equeum.com/resources/signals?r=ETH&from=1654045247&to=1654822847&timeFormat=human&token=<token>
time | Time of response |
ticker | Name of the coin that was requested |
forecast | ternary value of the forecast |
trendline | direction in which the forecast is going. When it is equal to, or greater than 0, then it shows the value of "up". Then it is lower than 0, then it shows the value of "down" |
strength | trend strength indicator |
duration | duration of the trend direction. Answers the question of how long does the forecast is in up/down position |
lastUpdate | time in which the forecast crossed the 0 line. |
isNewSignal | returns True if a new signal has been detected in the last minute. |
Sample Response:
{
"fields": [
"time",
"ticker",
"forecast",
"trendline",
"strength",
"duration",
"lastUpdate",
"isNewSignal"
],
"rows": [
[
"2022-06-01T01:01:00",
"ETH",
-0.01,
"down",
"weak",
"1 day, 11 h, 12 m",
"2022-06-02T12:13:00",
"false"
],
[
"2022-06-02T12:14:00",
"ETH",
0.5,
"up",
"weak",
"1 day, 3 h, 31 m",
"2022-06-03T15:45:00",
"false"
],
[
"2022-06-03T15:46:00",
"ETH",
-0.5,
"down",
"weak",
"1 day, 3 h, 29 m",
"2022-06-04T19:15:00",
"false"
],
[
"2022-06-04T19:16:00",
"ETH",
0.5,
"up",
"weak",
"1 day, 23 h, 2 m",
"2022-06-06T18:18:00",
"false"
],
[
"2022-06-06T18:19:00",
"ETH",
-0.5,
"down",
"weak",
"3 day, 6 h, 41 m",
"2022-06-10T01:00:00",
"false"
]
]
}
We can also access historical data for datasets and other published resources using the same API.
For example, we can use this resource called: equeum:ray_sentiment_magnitude_per_min.

All we need to do is to use the format of
<author:resourcename>
as the parameter for r
: r=equeum:ray_sentiment_magnitude_per_min
This will return a response of :
{
"internalUrl": "usr:dataset:3e08aa03-8c6d-4800-8b20-3be32477fe07",
"fields": [
"time",
"value"
],
"rows": [
[
1667312040,
0.03111111190583971
],
[
1667312940,
0.03666666646798452
],
[
1667313840,
0.046666665871938066
],
[
1667314800,
0.09333333174387613
],
[
1667315700,
0.013333333532015483
],
[
1667316600,
0.013333333780368169
],
[
1667317560,
0.036666666716337205
],
[
1667318460,
0.010000000149011612
],
[
1667319420,
0.0066666667660077415
],
[
1667321220,
0.023333333929379783
],
[
1667323980,
0.07333333492279052
],
[
1667324880,
0.013333333532015483
]
]
}
Alternatively, you can click on the API link that is located on the resouce modal details. This modal will appear if you click on the resource name.
