Duyarlılık tahmini

GET /forecasts/sentiment
GetSentimentForecast

Bir varlığın duyarlılığının önümüzdeki 72 saat içinde nereye gitmesinin muhtemel olduğu, olasılıklarıyla birlikte bir sonuç aralığı olarak. series, her 4 saatte bir o adımda beklenen boğa, ayı, nötr ve toplam gönderi sayısını ve adımın sonundaki sentiment_signal değerini /sentiment ölçeğinde verir. chance_higher_24h ve chance_higher_72h, sinyalin current_sentiment_signal üzerinde bitme olasılığını verir; bunların _confident işaretleri bu olasılığın net biçimde bir yöne meylettiği zamanları belirtir.

Tahminler, varlıkla ilgili yeni gönderilerden sonra bir dakika içinde ve en az 15 dakikada bir güncellenir. refresh=true, en güncel veriler üzerinde yaklaşık 5 saniyede yeniden hesaplar; bu 20 saniyeyi aşarsa, refreshed: false ile en güncel tahmini alırsınız ve 5 kredi ücretlendirilir. Tahmini olmayan varlıklar reason ile birlikte status: not_forecastable döndürür; /forecasts/assets tahmini olan varlıkları listeler.

5 kredi, refresh=true ile 10 kredi tutar. not_forecastable yanıtları ücretsizdir, hesap başına saatte 30'a kadar; bunun ötesinde bu uç nokta saat sıfırlanana kadar 429 döndürür.

Bu işlem için cüzdan ödemesi kullanılamaz; hesap kimlik doğrulamasını kullanın. x402 ödeme kılavuzu.

Parametreler

asset_id string QUERY zorunlu

/assets veya /search'ten alınan varlık ID'si; örneğin NVDA, GLD, SPX veya bitcoin. Yanında döndürülen asset_class ile birlikte gönderin.

Example:NVDA

asset_class string QUERY zorunlu

asset_id ile adlandırılan varlığın sınıfı: equity (hisseler ve ETF'ler), commodity, index veya crypto. /assets veya /search'ün asset_id ile birlikte döndürdüğü asset_class'ı gönderin.

İzin verilen değerler
equitycommodityindexcrypto

Example:equity

refresh boolean QUERY

true, tahmini en güncel veriler üzerinde yeniden hesaplar: 10 kredi, yaklaşık 5 saniye. Varsayılan olarak false.

Example:false

cURL Örneği

curl --get \
  --url 'https://nebula-api.hiddensystems.ai/api/v1/public/forecasts/sentiment' \
  --data-urlencode 'asset_id=NVDA' \
  --data-urlencode 'asset_class=equity' \
  --header 'X-API-Key: YOUR_API_KEY'

Yanıtlar

200 OK
400 Hatalı İstek
401 Yetkisiz
402 Krediler tükendi; yanıt, yenileme zamanlamasını ve satın alınan kredi bakiyesini içerir
403 Yasak
404 Bulunamadı
405 Yönteme izin verilmiyor; Allow başlığı desteklenen yöntemi listeler
429 Çok Fazla İstek
500 Sunucu İçi Hata
503 Hizmet Kullanılamıyor

Medya türü application/json

as_of
string (date-time) zorunlu

Tahminin UTC başlangıcı: hesaplandığı son tam 15 dakikalık dilimin bitişi. Varlık hiç puanlanmadıysa null.

chance_higher_24h
number (double) zorunlu

Duyarlılık sinyalinin 24 saat içinde current_sentiment_signal'den yüksek olma olasılığı, 0 ile 1 arasında.

chance_higher_24h_confident
boolean zorunlu

chance_higher_24h 0.3'ün altında veya 0.7'nin üzerinde olduğunda true: tahmin net biçimde bir yöne meyleder. 0.5'e daha yakın olduğunda bunu net bir yön yok şeklinde okuyun.

chance_higher_72h
number (double) zorunlu

Duyarlılık sinyalinin 72 saat içinde current_sentiment_signal'den yüksek olma olasılığı, 0 ile 1 arasında.

chance_higher_72h_confident
boolean zorunlu

chance_higher_72h 0.3'ün altında veya 0.7'nin üzerinde olduğunda true: tahmin net biçimde bir yöne meyleder. 0.5'e daha yakın olduğunda bunu net bir yön yok şeklinde okuyun.

current_sentiment_signal
number (double) zorunlu

as_of anındaki duyarlılık sinyali, /sentiment ölçeğinde: son 24 saatteki boğa eksi ayı gönderi sayısı, son gönderilere daha fazla ağırlık verilerek. Her yol buradan başlar ve olasılıklar buna göre ölçülür. Saatlik olan en son /sentiment noktasından biraz farklı olabilir.

horizon_hours
integer zorunlu

Tahminin ne kadar ileriye gittiği, saat cinsinden: her zaman 72.

reason
string zorunlu

Varlığın neden tahmin edilemediği: too_little_history, stale_data veya missing_price. status ok olduğunda null.

İzin verilen değerler
too_little_historystale_datamissing_pricenull
refreshed
boolean zorunlu

Bu istek tahmini yeniden çalıştırdığında true (refresh=true ve yeniden çalıştırma zamanında tamamlandığında); en son planlanmış tahmin olduğunda false.

sample_paths
array<array<number (double)>> zorunlu

Duyarlılık sinyali için 24 olası yol; her biri series ile hizalıdır. Sonuçların dağılımını göstermek için bunları çizin.

series
array<object> zorunlu

as_of anından itibaren her 4 saatte bir tahmin: 18 adım, en eskisi ilk.

series[].bearish_posts
object zorunlu

Yalnızca bu 4 saatlik adımda beklenen ayı gönderi sayısı, botlar hariç: /sentiment'in aralık gönderileri gibi, onun son 24 saatlik sayımları gibi değil.

series[].bearish_posts.mean
number (double) zorunlu

Adımdaki beklenen ayı gönderi sayısı.

series[].bearish_posts.p10
number (double) zorunlu

Adımdaki ayı gönderi sayısının 10. yüzdelik dilimi.

series[].bearish_posts.p25
number (double) zorunlu

Adımdaki ayı gönderi sayısının 25. yüzdelik dilimi.

series[].bearish_posts.p50
number (double) zorunlu

Adımdaki ayı gönderi sayısının 50. yüzdelik dilimi.

series[].bearish_posts.p75
number (double) zorunlu

Adımdaki ayı gönderi sayısının 75. yüzdelik dilimi.

series[].bearish_posts.p90
number (double) zorunlu

Adımdaki düşüş yönlü gönderilerin 90. yüzdelik dilimi.

series[].bullish_posts
object zorunlu

Yalnızca bu 4 saatlik adımda beklenen yükseliş yönlü gönderiler, botlar hariç: /sentiment'in aralık gönderileri gibi, onun geriye dönük 24 saatlik sayımları gibi değil.

series[].bullish_posts.mean
number (double) zorunlu

Adımdaki beklenen yükseliş yönlü gönderi sayısı.

series[].bullish_posts.p10
number (double) zorunlu

Adımdaki yükseliş yönlü gönderilerin 10. yüzdelik dilimi.

series[].bullish_posts.p25
number (double) zorunlu

Adımdaki yükseliş yönlü gönderilerin 25. yüzdelik dilimi.

series[].bullish_posts.p50
number (double) zorunlu

Adımdaki yükseliş yönlü gönderilerin 50. yüzdelik dilimi.

series[].bullish_posts.p75
number (double) zorunlu

Adımdaki yükseliş yönlü gönderilerin 75. yüzdelik dilimi.

series[].bullish_posts.p90
number (double) zorunlu

Adımdaki yükseliş yönlü gönderilerin 90. yüzdelik dilimi.

series[].neutral_posts
object zorunlu

Yalnızca bu 4 saatlik adımda beklenen nötr gönderiler, botlar hariç: /sentiment'in aralık gönderileri gibi, onun geriye dönük 24 saatlik sayımları gibi değil.

series[].neutral_posts.mean
number (double) zorunlu

Adımdaki beklenen nötr gönderi sayısı.

series[].neutral_posts.p10
number (double) zorunlu

Adımdaki nötr gönderilerin 10. yüzdelik dilimi.

series[].neutral_posts.p25
number (double) zorunlu

Adımdaki nötr gönderilerin 25. yüzdelik dilimi.

series[].neutral_posts.p50
number (double) zorunlu

Adımdaki nötr gönderilerin 50. yüzdelik dilimi.

series[].neutral_posts.p75
number (double) zorunlu

Adımdaki nötr gönderilerin 75. yüzdelik dilimi.

series[].neutral_posts.p90
number (double) zorunlu

Adımdaki nötr gönderilerin 90. yüzdelik dilimi.

series[].sentiment_signal
object zorunlu

Adımın sonundaki duyarlılık sinyali, /sentiment ölçeğinde: çizginin muhtemelen nerede olacağı.

series[].sentiment_signal.mean
number (double) zorunlu

Adımın sonunda beklenen duyarlılık sinyali.

series[].sentiment_signal.p10
number (double) zorunlu

Adımın sonundaki duyarlılık sinyalinin 10. yüzdelik dilimi.

series[].sentiment_signal.p50
number (double) zorunlu

Adımın sonundaki duyarlılık sinyalinin 50. yüzdelik dilimi.

series[].sentiment_signal.p90
number (double) zorunlu

Adımın sonundaki duyarlılık sinyalinin 90. yüzdelik dilimi.

series[].sentiment_signal.quantiles
array<number (double)> zorunlu

Adımın sonundaki duyarlılık sinyalinin 21 kantili: 0., 5., 10., ... 100. yüzdelik dilimler, en düşükten başlayarak. Herhangi bir aralığa düşme olasılığı için aralarında enterpolasyon yapın.

series[].timestamp
string (date-time) zorunlu

Adımın bittiği UTC zamanı: as_of artı 4, 8, ... 72 saat.

series[].total_posts
object zorunlu

Yalnızca bu 4 saatlik adımda beklenen gönderiler (yükseliş, düşüş ve nötr birlikte), botlar hariç: /sentiment'in aralık gönderileri gibi, onun geriye dönük 24 saatlik sayımları gibi değil. Yüzdelik dilimleri toplamın kendisine aittir, dolayısıyla üç türün yüzdelik dilimlerinin toplamı değildir.

series[].total_posts.mean
number (double) zorunlu

Adımdaki beklenen gönderi sayısı (yükseliş, düşüş ve nötr birlikte).

series[].total_posts.p10
number (double) zorunlu

Adımdaki gönderilerin (yükseliş, düşüş ve nötr birlikte) 10. yüzdelik dilimi.

series[].total_posts.p25
number (double) zorunlu

Adımdaki gönderilerin (yükseliş, düşüş ve nötr birlikte) 25. yüzdelik dilimi.

series[].total_posts.p50
number (double) zorunlu

Adımdaki gönderilerin (yükseliş, düşüş ve nötr birlikte) 50. yüzdelik dilimi.

series[].total_posts.p75
number (double) zorunlu

Adımdaki gönderilerin (yükseliş, düşüş ve nötr birlikte) 75. yüzdelik dilimi.

series[].total_posts.p90
number (double) zorunlu

Adımdaki gönderilerin (yükseliş, düşüş ve nötr birlikte) 90. yüzdelik dilimi.

status
string zorunlu

ok veya varlık tahmin edilemediğinde not_forecastable (bu durumda özet alanları null olur ve series boş kalır; reason nedeni söyler).

İzin verilen değerler
oknot_forecastable
turning
integer zorunlu

Duyarlılık yükselişe dönerken 1 (son birkaç saat, son bir güne kıyasla belirgin şekilde daha yükseliş yönlü), düşüşe dönerken -1, aksi halde 0.

İzin verilen değerler
-101null
{
  "as_of": "2026-09-14T09:15:00Z",
  "chance_higher_24h": 0.74,
  "chance_higher_24h_confident": true,
  "chance_higher_72h": 0.61,
  "chance_higher_72h_confident": false,
  "current_sentiment_signal": 128.6,
  "horizon_hours": 72,
  "reason": null,
  "refreshed": false,
  "sample_paths": [
    [
      133.2,
      141.7
    ],
    [
      126.4,
      118.9
    ]
  ],
  "series": [
    {
      "bearish_posts": {
        "mean": 18,
        "p10": 9.9,
        "p25": 13.5,
        "p50": 17.1,
        "p75": 21.6,
        "p90": 27.9
      },
      "bullish_posts": {
        "mean": 46,
        "p10": 25.3,
        "p25": 34.5,
        "p50": 43.7,
        "p75": 55.2,
        "p90": 71.3
      },
      "neutral_posts": {
        "mean": 29,
        "p10": 16,
        "p25": 21.8,
        "p50": 27.6,
        "p75": 34.8,
        "p90": 45
      },
      "sentiment_signal": {
        "mean": 131.4,
        "p10": 92.9,
        "p50": 129.6,
        "p90": 175.5,
        "quantiles": [
          21.6,
          70.2,
          92.9,
          104.8,
          113.1,
          119.4,
          124.2,
          127.6,
          130.5,
          132.7,
          134.5,
          136.4,
          138.7,
          141.3,
          144.9,
          149.2,
          155.1,
          163.8,
          179.4,
          202.6,
          287.3
        ]
      },
      "timestamp": "2026-09-14T13:15:00Z",
      "total_posts": {
        "mean": 93,
        "p10": 51.2,
        "p25": 69.8,
        "p50": 88.4,
        "p75": 111.6,
        "p90": 144.2
      }
    },
    {
      "bearish_posts": {
        "mean": 19,
        "p10": 10.5,
        "p25": 14.3,
        "p50": 18.1,
        "p75": 22.8,
        "p90": 29.5
      },
      "bullish_posts": {
        "mean": 50,
        "p10": 27.5,
        "p25": 37.5,
        "p50": 47.5,
        "p75": 60,
        "p90": 77.5
      },
      "neutral_posts": {
        "mean": 31,
        "p10": 17.1,
        "p25": 23.3,
        "p50": 29.5,
        "p75": 37.2,
        "p90": 48.1
      },
      "sentiment_signal": {
        "mean": 137.6,
        "p10": 99.1,
        "p50": 135.79999999999998,
        "p90": 181.7,
        "quantiles": [
          21.6,
          70.2,
          92.9,
          104.8,
          113.1,
          119.4,
          124.2,
          127.6,
          130.5,
          132.7,
          134.5,
          136.4,
          138.7,
          141.3,
          144.9,
          149.2,
          155.1,
          163.8,
          179.4,
          202.6,
          287.3
        ]
      },
      "timestamp": "2026-09-14T17:15:00Z",
      "total_posts": {
        "mean": 100,
        "p10": 55,
        "p25": 75,
        "p50": 95,
        "p75": 120,
        "p90": 155
      }
    }
  ],
  "status": "ok",
  "turning": 0
}