Top movers endpoint behaves weird for crypto

Hello,

I’m running into an issue with the Top Movers endpoint that is currently in beta, specifically for crypto. The moving percentage does not seem to reset at midnight, as the documentation suggests. Instead, it seems to return the change percentage between now and the moment the crypto asset was first available. For instance, here is the data returned for Bitcoin:

{
    "change": 64017.66,
    "percent_change": 231.99,
    "price": 91612.2,
    "symbol": "BTC/USDC"
},
{
    "change": 63936.41,
    "percent_change": 231.37,
    "price": 91570.075,
    "symbol": "BTC/USD"
},
{
    "change": 63796.24,
    "percent_change": 230.88,
    "price": 91427.846,
    "symbol": "BTC/USDT"
}

It’s been showing this behaviour at least for a couple of days now. When I call the same endpoint for stocks, I get the data as expected. Am I missing a parameter here that is not documented? Worth mentioning: I’m experiencing this behaviour while using a paper account api key.

Kind regards,

ShankHenk

1 Like

Hi :wave:,

Thank you for reporting this issue in the crypto top movers endpoint. I’m going to investigate it and hopefully fix it as soon as possible.

Regards,
Gergely Novák

Hi @ShankHenk!

Thanks again for reporting this bug :bug:. It has been fixed, now the crypto endpoint returns the expected data:

$ curl -s -H "APCA-API-KEY-ID: ${APCA_API_KEY_ID}" -H "APCA-API-SECRET-KEY: ${APCA_API_SECRET_KEY}" "${APCA_API_DATA_URL}/v1beta1/screener/crypto/movers?top=1" | jq .
{
  "gainers": [
    {
      "change": 14.07,
      "percent_change": 0.64,
      "price": 2196.23,
      "symbol": "MKR/USD"
    }
  ],
  "last_updated": "2024-12-03T09:01:00.00149566Z",
  "losers": [
    {
      "change": -0.4235,
      "percent_change": -2.92,
      "price": 14.065,
      "symbol": "UNI/USD"
    }
  ],
  "market_type": "crypto"
}