Price Feeds for US.Equity are not been updated periodically

I have bunch of equities for which I want to fetch prices as recent as past 1 hour. But I get StalePrice() error, this is the reference :

I’m looking to fetch prices for following equities:
Equity.US.GOOG/USD : 0xe65ff435be42630439c96396653a342829e877e2aafaeaf1a10d0ee5fd2cf3f2

Equity.US.AMZN/USD : 0xb5d0e0fa58a1f8b81498ae670ce93c872d14434b72c364885d4fa1b257cbb07a

Equity.US.AAPL/USD : 0x49f6b65cb1de6b10eaf75e7c03ca029c306d0357e91b5311b175084a5ad55688

Equity.US.MSFT/USD : 0xd0ca23c1cc005e004ccf1db5bf76aeb6a49218f43dac3d4b275e92de12ded4d1

Equity.US.TSLA/USD : 0x16dad506d7db8da01c87581c87ca897a012a153557d4d578c3b9c9e1bc0632f1

Equity.US.NVDA/USD : 0xb1073854ed24cbc755dc527418f52b7d271f6cc967bbf8d8129112b18860a593

Equity.US.META/USD : 0x78a3e3b8e676a8f73c439f5d749737034b139bbbe899ba5775216fba596607fe

Equity.US.GME/USD : 0x6f9cd89ef1b7fd39f667101a91ad578b6c6ace4579d5f7f285a4b06aa4504be6

and even more.
I’ve been given to understand that one can run bots which update the price feeds, where can I find them ?
Thank you.

Hey @Siddharth

Can you tell at what time exactly where you trying to call these feeds?
I assume the market was closed and Pyth feeds follow traditional market hours for now: https://docs.pyth.network/price-feeds/market-hours

Also Pyth works as an on-demand model, so unless you (or someone else) has updated a price, you might indeed read a too old onchain price.

You can trigger periodic price updates with the Scheduler bot here: https://docs.pyth.network/price-feeds/schedule-price-updates/using-scheduler
You pick the feeds, and the parameters (time and price deviation) and the bot will do it for you

Hey @Siddharth

Adding to the Marc’s answer above, the scheduler will not be able to update the prices during off market hours.
Scheduler uses updatePriceFeedsIfNecessary, which only updates if there is a fresh update available.

Hey @KemarTiti yeah initially I was querying the price before market opened, but if I query now, after the market has opened i still get the stale price error.


Also I forgot to mention, I am running it for base network.

ok thank you will look into it, one question, doesn’t pyth protocol run schedulers for these equities, and if so can they update the above mentioned equities periodically.

You have to update the prices/ pull the prices.

You can call updatePriceFeeds with it’s updateData.

You can fetch the updateData by following this guide.

Yes, we do run many schedulers/price-pushers.

You can check the list here.

If you would like to see additional feeds on this list, please fill in this form to signal your interest., or contact @KemarTiti

If you’d like to talk in more details, indeed please reach out to me on Telegram: Telegram: Contact @MarcTillement or @mariobern Telegram: Contact @mariopyth

Thank you so very much

Will do, thank you so very much.

Ok I am running the price pusher scheduler here :

  • I want to run it for , `Equity.US.GME/USDwhich has a stable id of :0x6f9cd89ef1b7fd39f667101a91ad578b6c6ace4579d5f7f285a4b06aa4504be6

This is my price-config.yaml :

This is the command I’m using to run the price pusher :
``
pnpm run start evm --endpoint wss://base-mainnet.g.alchemy.com/v2/ --pyth-contract-address 0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a --price-service-endpoint https://hermes.pyth.network --price-config-file ./price-config.stable.sample.yaml --mnemonic-file ./mnemonic.txt --pushing-frequency 30 --polling-frequency 5 --override-gas-price-multiplier 1.1
`

But in the logs I see no price update being pushed
``
{“level”:30,“time”:1758874244083,“pid”:11109,“hostname”:“Mac.lan”,“module”:“EvmPriceListener”,“msg”:“Watching target network pyth contract events…”}
{“level”:30,“time”:1758874274396,“pid”:11109,“hostname”:“Mac.lan”,“module”:“Controller”,“msg”:“GME/USD (6f9cd89ef1b7fd39f667101a91ad578b6c6ace4579d5f7f285a4b06aa4504be6) is not available on the source network. Ignoring it.”}
{“level”:30,“time”:1758874274396,“pid”:11109,“hostname”:“Mac.lan”,“module”:“Controller”,“msg”:“None of the checks were triggered. No push needed.”}
{“level”:30,“time”:1758874304397,“pid”:11109,“hostname”:“Mac.lan”,“module”:“Controller”,“msg”:“GME/USD (6f9cd89ef1b7fd39f667101a91ad578b6c6ace4579d5f7f285a4b06aa4504be6) is not available on the source network. Ignoring it.”}
{“level”:30,“time”:1758874304398,“pid”:11109,“hostname”:“Mac.lan”,“module”:“Controller”,“msg”:“None of the checks were triggered. No push needed.”}
{“level”:30,“time”:1758874334400,“pid”:11109,“hostname”:“Mac.lan”,“module”:“Controller”,“msg”:“GME/USD (6f9cd89ef1b7fd39f667101a91ad578b6c6ace4579d5f7f285a4b06aa4504be6) is not available on the source network. Ignoring it.”}
{“level”:30,“time”:1758874334400,“pid”:11109,“hostname”:“Mac.lan”,“module”:“Controller”,“msg”:“None of the checks were triggered. No push needed.”}
{“level”:30,“time”:1758874364401,“pid”:11109,“hostname”:“Mac.lan”,“module”:“Controller”,“msg”:“GME/USD (6f9cd89ef1b7fd39f667101a91ad578b6c6ace4579d5f7f285a4b06aa4504be6) is not available on the source network. Ignoring it.”}
{“level”:30,“time”:1758874364402,“pid”:11109,“hostname”:“Mac.lan”,“module”:“Controller”,“msg”:“None of the checks were triggered. No push needed.”}
``

How can I fix this ?

Can you give us more logs?
Moreover, I can see you are running during off-market hours. Can you try running it during the market hours?

I was able to sort the issue, I was trying to running the price pusher for some equities, like TSLA, GME etc. But the pusher wasnt updating it, because it was looking for a price not older than 60seconds, I did some changes and was able to sort it thanks.

1 Like