Weighted Sentiment Metrics

Definition

The Sentiment Weighted is an improved version of the Sentiment Balance that also takes into account the Unique Social Volume.

Why Sentiment Balance needs improvement?

Sentiment Positive/Negative/Balance metrics' values are in the interval [-social_volume; +social_volume] where social_volume is the number of messages that mention a given coin.

This makes the values of different assets hard to compare, as the mentions of Bitcoin are magnitutes higher compared to the mentions of a small token.

Sentiment Weighted Intuitive Definition

Sentiment Weighted adjusts the values by considering the number of mentions, standardizing data to make diverse asset sentiments comparable.

This means that spikes/dips in the metric will be seen when there is:

  • a lot of mentions for a coin
  • most of the mentions are expressing the same sentiment -- most are positive or most are negative

If the sentiment is mixed, or the asset is not mentioned a lot, there will be no spikes/dips.

Sentiment Weighted Technical Definition

The metric is defined as a rolling Z-score of the term X, where:

X=UniqueSocialVolume×AverageSentimentX = \mathrm{Unique Social Volume} \times \mathrm{Average Sentiment}

More precisely we choose a duration dd which will be the length of our sliding window. Then for any timestamp tt we consider the population X(t,d)X(t,d) consisting of all values of X(t)X(t') for all timestamps tt' between tdt-d and tt. If we use μ\mu and σ\sigma to denote mean and standard deviation, then we define Sentiment Weighted as:

SentimentWeighted(t,d)=X(t)μ(X(t,d))σ(X(t,d))Sentiment Weighted(t,d) = \frac{X(t) - \mu(X(t,d))}{\sigma(X(t,d))}

This score can be explained as a social-volume-weighted sentiment balance - it spikes when the social volume is really high and the vast majority of the messages in it are very positive at the same time. Dips will occur when the social volume again is high, but the overall sentiment is negative. In case the volume is high but the sentiment is mixed, or the sentiment has a strong positive (negative) polarity but with a low volume, the Sentiment Weighted metric won't have significant changes and will stay around 0.

We have 5m, 1h, and 1d weighted sentiment metrics. The difference between them is in the metrics that we use to calculate them.

  • for sentiment_weighted (5m) we use sentiment_balance (5m) and unique_social_volume (5m)
  • for sentiment_weighted_1h we use sentiment_balance (1h) and unique_social_volume_1h
  • for sentiment_weighted_1d we use sentiment_balance (1d) and unique_social_volume_1d

The difference between base metrics lies in the interval on which we aggregate these metrics. In case of 5m aggregated metrics when we calculate standard deviation and average for a window dd we take dd 5m's datapoints.

In case of 1h aggregated metrics -- we take dd 1h's datapoints.

In case of 1d aggregated metrics -- we take dd 1d's datapoints.

Available Sources

List of available sources

Weighted Sentiment Bitcoin Chart

Access

Restricted Access


Measuring Unit

Sum of sentiment scores


Data Type

Timeseries Data


Frequency

Five-Minute Intervals


Latency

Social Data Latency


Change Metrics

Change Metrics:

  • sentiment_weighted_total_change_1d
  • sentiment_weighted_total_change_7d
  • sentiment_weighted_total_change_30d

Available Assets

All metrics have the same set of available assets


SanAPI

Fetch timeseries data for sentiment_weighted_total for a single asset:

1
2
3
4
5
6
7
8
9
10
11
12
13
{
  getMetric(metric: "sentiment_weighted_total") {
    timeseriesData(
      slug: "ethereum"
      from: "utc_now-90d"
      to: "utc_now-30d"
      interval: "7d"
    ) {
      datetime
      value
    }
  }
}

Run in explorer


Fetch timeseries data for sentiment_weighted_telegram for multiple assets at the same time:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
  getMetric(metric: "sentiment_weighted_telegram") {
    timeseriesDataPerSlug(
      from: "utc_now-60d"
      to: "utc_now-55d"
      interval: "1d"
      selector: { slugs: ["ethereum", "bitcoin"] }
    ) {
      data {
        slug
        value
      }
      datetime
    }
  }
}

Run in explorer


Fetch aggregated daily values for many assets:

1
2
3
4
5
6
7
8
9
10
{
  allProjects(page: 1, pageSize: 50) {
    slug
    sentimentWeighted: aggregatedTimeseriesData(
      metric: "sentiment_weighted_total"
      from: "utc_now-7d"
      to: "utc_now"
    )
  }
}

Run in Explorer


Full list of metrics

The full list of weighted sentiment metrics is:

Open Weighted Sentiment Metrics List

  • sentiment_weighted_4chan
  • sentiment_weighted_bitcointalk
  • sentiment_weighted_reddit
  • sentiment_weighted_telegram
  • sentiment_weighted_twitter
  • sentiment_weighted_youtube_videos
  • sentiment_weighted_farcaster
  • sentiment_weighted_total
  • sentiment_weighted_4chan_1h
  • sentiment_weighted_bitcointalk_1h
  • sentiment_weighted_reddit_1h
  • sentiment_weighted_telegram_1h
  • sentiment_weighted_twitter_1h
  • sentiment_weighted_youtube_videos_1h
  • sentiment_weighted_farcaster_1h
  • sentiment_weighted_total_1d
  • sentiment_weighted_4chan_1d
  • sentiment_weighted_bitcointalk_1d
  • sentiment_weighted_reddit_1d
  • sentiment_weighted_telegram_1d
  • sentiment_weighted_twitter_1d
  • sentiment_weighted_youtube_videos_1d
  • sentiment_weighted_farcaster_1d
  • sentiment_weighted_total_1d
  • sentiment_weighted_total_change_1d
  • sentiment_weighted_total_change_7d
  • sentiment_weighted_total_change_30d
Help & Feedback

We are using cookies to improve your experience!

By clicking “Allow all”, you agree to use of all cookies. Visit our Cookies Policy to learn more.