秋田预测市场 · Discord 审计

Hyperliquid REST API open_orders 订单数据延迟与状态不一致

2026-06-05 · Hyperliquid · 15 条相关讨论

Trophycase 2026-06-05 00:36:10

ok it happened again and when I encounter it I am calling open_orders again, roughly 0.8s later and the order is present

ok it happened again and when I encounter it I am calling open_orders again, roughly 0.8s later and the order is present

Trophycase 2026-06-05 02:00:09

So according to my log: 2026-06-04 08:17:32,799 The order has been created via bulk_orders and has received a "resting response" time.sleep(0.5) 2026-06-04 08:17:33,715 Calling open_orders, oid I'm looking for is not present 2026-06-04 08:17:33,829 Calling query_order_by_oid and confirm the order is there

So according to my log: 2026-06-04 08:17:32,799 The order has been created via bulk_orders and has received a "resting response" time.sleep(0.5) 2026-06-04 08:17:33,715 Calling open_orders, oid I'm looking for is not present 2026-06-04 08:17:33,829 Calling query_order_by_oid and confirm the order is there

Trophycase 2026-06-05 02:18:09

Am I the only sucker not using websockets 😭

Am I the only sucker not using websockets 😭

matsuokah 2026-06-05 03:32:38

check sizes and prices on successful vs unsuccessful orders. maybe unsuccessful ones had trailing zeroes (like price 67.80 or size 1000.0) and successful ones didn't

check sizes and prices on successful vs unsuccessful orders. maybe unsuccessful ones had trailing zeroes (like price 67.80 or size 1000.0) and successful ones didn't

derek_falconx 2026-06-05 05:34:48

Hi support, I sent the below order, size is 0.16: {"method":"post","id":1867093102628438020,"request":{"type":"action","payload":{"action":{"type":"order","orders" :[{"a":10156,"b":false,"p":"69","s":"0.16","r":false,"t":{"limit":{"tif":"Gtc"}},"c":"0x000005013334353519e93f48d8c00004"}],"grouping":"na"},"nonce":1780598738000,"signatu re":{"r":"0x67c3b5f36a88af2c96648484f6bf2015715ccd4706ef0568865b1586437e74d7","s":"0x3d72be9b823353c3e21efccd92d477df8c2c4c1149818badb2317e7b99392ff6","v":28}}}} It was filled right away (intended). From the orderUpdates WS channel, I got the below 2 order updates: {"channel":"orderUpdates","data":[{"order":{"coin":"@156","side":"A","limitPx":"69.0","sz":"0.16","oid":457750959641,"timestamp":1780598738693,"origSz":"0.16","cloid":"0x000005013334353519e93f48d8c00004"},"status":"open","statusTimestamp":1780598738693},{"order":{"coin":"@156","side":"A","limitPx":"69.0","sz":"0.011","oid":457750959641,"timestamp":1780598738693,"origSz":"0.16","cloid":"0x000005013334353519e93f48d8c00004"},"status":"filled","statusTimestamp":1780598738693}]} However, from the userFills WS channel, i only got the below trade: {"channel":"userFills","data":{"user":"0x8b1e1b4a08a8bc3ecdadc9e15bb3475f7735e13e","fills":[{"coin":"@156","px":"69.464","sz":"0.149","side":"A","time":1780598738693,"startPosition":"0.149895","dir":"Sell","closedPnl":"-0.55327038","hash":"0xb133e5cef55377acb2ad043cf7e95802023d00b49056967e54fc9121b4575197","oid":457750959641,"crossed":true,"fee":"0.00724509","tid":772642021556868,"cloid":"0x000005013334353519e93f48d8c00004","feeToken":"USDC","twapId":null}]}} The size of the trade is just 0.149. Why would the order status be changed to "filled"?

Hi support, I sent the below order, size is 0.16: {"method":"post","id":1867093102628438020,"request":{"type":"action","payload":{"action":{"type":"order","orders" :[{"a":10156,"b":false,"p":"69","s":"0.16","r":false,"t":{"limit":{"tif":"Gtc"}},"c":"0x000005013334353519e93f48d8c00004"}],"grouping":"na"},"nonce":1780598738000,"signatu re":{"r":"0x67c3b5f36a88af2c96648484f6bf2015715ccd4706ef0568865b1586437e74d7","s":"0x3d72be9b823353c3e21efccd92d477df8c2c4c1149818badb2317e7b99392ff6","v":28}}}} It was filled right away (intended). From the orderUpdates WS channel, I got the below 2 order updates: {"channel":"orderUpdates","data":[{"order":{"coin":"@156","side":"A","limitPx":"69.0","sz":"0.16","oid":457750959641,"timestamp":1780598738693,"origSz":"0.16","cloid":"0x000005013334353519e93f48d8c00004"},"status":"open","statusTimestamp":1780598738693},{"order":{"coin":"@156","side":"A","limitPx":"69.0","sz":"0.011","oid":457750959641,"timestamp":1780598738693,"origSz":"0.16","cloid":"0x000005013334353519e93f48d8c00004"},"status":"filled","statusTimestamp":1780598738693}]} However, from the userFills WS channel, i only got the below trade: {"channel":"userFills","data":{"user":"0x8b1e1b4a08a8bc3ecdadc9e15bb3475f7735e13e","fills":[{"coin":"@156","px":"69.464","sz":"0.149","side":"A","time":1780598738693,"startPosition":"0.149895","dir":"Sell","closedPnl":"-0.55327038","hash":"0xb133e5cef55377acb2ad043cf7e95802023d00b49056967e54fc9121b4575197","oid":457750959641,"crossed":true,"fee":"0.00724509","tid":772642021556868,"cloid":"0x000005013334353519e93f48d8c00004","feeToken":"USDC","twapId":null}]}} The size of the trade is just 0.149. Why would the order status be changed to "filled"?

Prometheus 2026-06-05 06:03:32

did you actually have 0.16 to sell? "startPosition":"0.149895"

did you actually have 0.16 to sell? "startPosition":"0.149895"

derek_falconx 2026-06-05 06:36:17

Oh, but shouldn't the order be rejected if I don't have enough position?

Oh, but shouldn't the order be rejected if I don't have enough position?

Trophycase 2026-06-05 07:03:23

I will start the process of migrating to websockets but I've been troubleshooting this issue for a few days now and can't find any culprit besides HL returning stale data from open_orders every now and then

I will start the process of migrating to websockets but I've been troubleshooting this issue for a few days now and can't find any culprit besides HL returning stale data from open_orders every now and then

Prometheus 2026-06-05 07:05:25

how far from tokyo is the machine youre making these trades on? and yeah websockets are the way

how far from tokyo is the machine youre making these trades on? and yeah websockets are the way

Trophycase 2026-06-05 07:06:07

my digital ocean droplet is in singapore

my digital ocean droplet is in singapore

Trophycase 2026-06-05 07:07:20

are you guys located in tokyo? Maybe I can switch droplet location, but I am receiving a response when I place the orders that they are resting, and calling the open_orders method ~0.5-0.7s later

are you guys located in tokyo? Maybe I can switch droplet location, but I am receiving a response when I place the orders that they are resting, and calling the open_orders method ~0.5-0.7s later

Trophycase 2026-06-05 07:11:06

Do you have caches located anywhere? I'm wondering if maybe I'm just hitting a stale cache or something

Do you have caches located anywhere? I'm wondering if maybe I'm just hitting a stale cache or something

iliensinc 2026-06-05 14:57:31

Will update, thanks for flagging

Will update, thanks for flagging

Itay 2026-06-05 17:49:29

It’s better to subscribe to `openOrders` and `orderUpdates`, and use the `orderUpdates` feed (which is per-block) to keep a local open orders state updated by merging those updates with open orders.

It’s better to subscribe to `openOrders` and `orderUpdates`, and use the `orderUpdates` feed (which is per-block) to keep a local open orders state updated by merging those updates with open orders.

a7mad12345 2026-06-05 18:59:11

hi, i have been using my bot for the last 2 months, but suddenly i am getting this error when im trying to run my bot even though i haven't made any changes "Connection failed: list index out of range" can anyone help please

hi, i have been using my bot for the last 2 months, but suddenly i am getting this error when im trying to run my bot even though i haven't made any changes "Connection failed: list index out of range" can anyone help please