Back to Ccxt

Hyperliquid

wiki/exchanges/prediction/hyperliquid.md

4.5.6615.2 KB
Original Source

<a name="hyperliquid" id="hyperliquid"></a>

hyperliquid{docsify-ignore}

Kind: global class
Extends: <code>Exchange</code>

<a name="fetchMarkets" id="fetchmarkets"></a>

fetchMarkets{docsify-ignore}

Retrieves all Hyperliquid outcome markets from outcomeMeta. Each binary outcome becomes one CCXT prediction market with two outcomes: YES and NO.

Kind: instance method of <code>hyperliquid</code>
Returns: <code>Array<Market></code> - array of market structures

See: https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/asset-ids#outcomes

ParamTypeRequiredDescription
params<code>object</code>Noextra parameters
javascript
hyperliquid.fetchMarkets (params?)

<a name="fetchTicker" id="fetchticker"></a>

fetchTicker{docsify-ignore}

fetches a ticker for a single outcome market using the L2 order book snapshot

Kind: instance method of <code>hyperliquid</code>
Returns: <code>object</code> - a prediction ticker structure

See: https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#l2-book-snapshot

ParamTypeRequiredDescription
outcome<code>string</code>Yesunified outcome (e.g. 'BTC_ABOVE_78213_20260503:YES')
params<code>object</code>Noextra parameters specific to the exchange API endpoint
javascript
hyperliquid.fetchTicker (outcome, params?)

<a name="fetchTickers" id="fetchtickers"></a>

fetchTickers{docsify-ignore}

fetches all outcome market tickers using allMids then optionally enriches with l2Book

Kind: instance method of <code>hyperliquid</code>
Returns: <code>object</code> - a dictionary of prediction ticker structures

See: https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-all-mids-for-all-actively-traded-coins

ParamTypeRequiredDescription
outcomes<code>Array<string></code>Nofilter by outcome ids or outcomes
params<code>object</code>Noextra parameters specific to the exchange API endpoint
javascript
hyperliquid.fetchTickers (outcomes?, params?)

<a name="fetchOrderBook" id="fetchorderbook"></a>

fetchOrderBook{docsify-ignore}

fetches the L2 order book for an outcome market

Kind: instance method of <code>hyperliquid</code>
Returns: <code>object</code> - a prediction order book structure

See: https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#l2-book-snapshot

ParamTypeRequiredDescription
outcome<code>string</code>Yesunified outcome
limit<code>int</code>Nomax depth levels (not used by hyperliquid but accepted)
params<code>object</code>Noextra parameters specific to the exchange API endpoint
javascript
hyperliquid.fetchOrderBook (outcome, limit?, params?)

<a name="fetchOHLCV" id="fetchohlcv"></a>

fetchOHLCV{docsify-ignore}

fetches candlestick OHLCV data for an outcome market

Kind: instance method of <code>hyperliquid</code>
Returns: <code>Array<Array<int>></code> - a list of candles ordered as timestamp, open, high, low, close, volume

See: https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#candle-snapshot

ParamTypeRequiredDescription
outcome<code>string</code>Yesunified outcome
timeframe<code>string</code>Yes'1m', '5m', '15m', '1h', '4h', '1d', etc.
since<code>int</code>Notimestamp in ms of earliest candle
limit<code>int</code>Nomax number of candles
params<code>object</code>Noextra parameters specific to the exchange API endpoint
params.until<code>int</code>Noend timestamp in ms
javascript
hyperliquid.fetchOHLCV (outcome, timeframe, since?, limit?, params?)

<a name="fetchBalance" id="fetchbalance"></a>

fetchBalance{docsify-ignore}

Fetches spot balance (outcomes use spot-like balance).

Kind: instance method of <code>hyperliquid</code>
Returns: <code>Balances</code> - balance structure

See: https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/spot#retrieve-a-users-token-balances

ParamTypeRequiredDescription
params<code>object</code>Noextra parameters
params.user<code>string</code>Nowallet address (defaults to this.walletAddress)
javascript
hyperliquid.fetchBalance (params?)

<a name="fetchPositions" id="fetchpositions"></a>

fetchPositions{docsify-ignore}

fetches the user's outcome positions; outcome positions are spot token balances under the "+<encoding>" coin form (size and entry notional), the value/entry/mark price/pnl are computed from the current mid prices

Kind: instance method of <code>hyperliquid</code>
Returns: <code>Array<object></code> - a list of prediction position structures

See: https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/spot#retrieve-a-users-token-balances

ParamTypeRequiredDescription
outcomes<code>Array<string></code>Nofilter by outcome ids or outcomes
params<code>object</code>Noextra parameters specific to the exchange API endpoint
params.user<code>string</code>Nowallet address
javascript
hyperliquid.fetchPositions (outcomes?, params?)

<a name="createOrder" id="createorder"></a>

createOrder{docsify-ignore}

creates a limit or market order for an outcome market

Kind: instance method of <code>hyperliquid</code>
Returns: <code>object</code> - a prediction order structure

See: https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/exchange-endpoint#place-an-order

ParamTypeRequiredDescription
outcome<code>string</code>Yesunified outcome
type<code>string</code>Yes'limit' or 'market'
side<code>string</code>Yes'buy' or 'sell'
amount<code>float</code>Yesquantity of outcome tokens
price<code>float</code>Nolimit price (0–1 range for prediction markets)
params<code>object</code>Noextra parameters specific to the exchange API endpoint
params.timeInForce<code>string</code>No'Gtc'
params.postOnly<code>boolean</code>Noif true sets timeInForce to 'Alo'
params.reduceOnly<code>boolean</code>Noif true, marks the order as reduce only so it can only decrease an existing position
params.slippage<code>string</code>Noslippage for market orders (default 5%)
params.clientOrderId<code>string</code>Nohex cloid
params.vaultAddress<code>string</code>Nooptional subaccount/vault address to trade on behalf of (master signer must be authorized)
javascript
hyperliquid.createOrder (outcome, type, side, amount, price?, params?)

<a name="cancelOrder" id="cancelorder"></a>

cancelOrder{docsify-ignore}

cancels a single open order

Kind: instance method of <code>hyperliquid</code>
Returns: <code>object</code> - a prediction order structure

See: https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/exchange-endpoint#cancel-order-s

ParamTypeRequiredDescription
id<code>string</code>Yesorder id
outcome<code>string</code>Nounified outcome
params<code>object</code>Noextra parameters specific to the exchange API endpoint
params.clientOrderId<code>string</code>Nocancel by client order id
params.vaultAddress<code>string</code>Nooptional subaccount/vault address to cancel on behalf of
javascript
hyperliquid.cancelOrder (id, outcome?, params?)

<a name="cancelOrders" id="cancelorders"></a>

cancelOrders{docsify-ignore}

cancels multiple open orders

Kind: instance method of <code>hyperliquid</code>
Returns: <code>Array<object></code> - a list of prediction order structures

See: https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/exchange-endpoint#cancel-order-s

ParamTypeRequiredDescription
ids<code>Array<string></code>Yesorder ids
outcome<code>string</code>Nounified outcome (required)
params<code>object</code>Noextra parameters specific to the exchange API endpoint
javascript
hyperliquid.cancelOrders (ids, outcome?, params?)

<a name="fetchOpenOrders" id="fetchopenorders"></a>

fetchOpenOrders{docsify-ignore}

fetches currently open orders for the user

Kind: instance method of <code>hyperliquid</code>
Returns: <code>Array<object></code> - a list of prediction order structures

See: https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-open-orders

ParamTypeRequiredDescription
outcome<code>string</code>Nofilter by outcome
since<code>int</code>Noonly return orders updated since this timestamp in ms
limit<code>int</code>Nomax number of orders to return
params<code>object</code>Noextra parameters specific to the exchange API endpoint
params.user<code>string</code>Nowallet address
params.method<code>string</code>No'openOrders'
javascript
hyperliquid.fetchOpenOrders (outcome?, since?, limit?, params?)

<a name="fetchOrders" id="fetchorders"></a>

fetchOrders{docsify-ignore}

fetches all historical orders for the user

Kind: instance method of <code>hyperliquid</code>
Returns: <code>Array<object></code> - a list of prediction order structures

See: https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-historical-orders

ParamTypeRequiredDescription
outcome<code>string</code>Nofilter by outcome
since<code>int</code>Noonly return orders updated since this timestamp in ms
limit<code>int</code>Nomax number of orders to return
params<code>object</code>Noextra parameters specific to the exchange API endpoint
params.user<code>string</code>Nowallet address
javascript
hyperliquid.fetchOrders (outcome?, since?, limit?, params?)

<a name="fetchOrder" id="fetchorder"></a>

fetchOrder{docsify-ignore}

fetches a single order by id

Kind: instance method of <code>hyperliquid</code>
Returns: <code>object</code> - a prediction order structure

See: https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-order-status-by-oid-or-cloid

ParamTypeRequiredDescription
id<code>string</code>Yesorder id
outcome<code>string</code>Nooutcome
params<code>object</code>Noextra parameters specific to the exchange API endpoint
params.user<code>string</code>Nowallet address
params.clientOrderId<code>string</code>Nofetch by client order id instead
javascript
hyperliquid.fetchOrder (id, outcome?, params?)

<a name="fetchTrades" id="fetchtrades"></a>

fetchTrades{docsify-ignore}

fetches the most recent public trades for an outcome

Kind: instance method of <code>hyperliquid</code>
Returns: <code>Array<object></code> - a list of prediction trade structures

See: https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-coins-recent-trades

ParamTypeRequiredDescription
outcome<code>string</code>Yesunified outcome
since<code>int</code>Noonly return trades at or after this timestamp in ms
limit<code>int</code>Nothe maximum number of trades to return
params<code>object</code>Noextra parameters specific to the exchange API endpoint
javascript
hyperliquid.fetchTrades (outcome, since?, limit?, params?)

<a name="fetchMyTrades" id="fetchmytrades"></a>

fetchMyTrades{docsify-ignore}

fetches the authenticated user's fill history

Kind: instance method of <code>hyperliquid</code>
Returns: <code>Array<object></code> - a list of prediction trade structures

See: https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-fills

ParamTypeRequiredDescription
outcome<code>string</code>Nofilter by outcome
since<code>int</code>Nostart timestamp in ms
limit<code>int</code>Nomax number of trades to return
params<code>object</code>Noextra parameters specific to the exchange API endpoint
params.user<code>string</code>Nowallet address
params.until<code>int</code>Noend timestamp in ms
javascript
hyperliquid.fetchMyTrades (outcome?, since?, limit?, params?)

<a name="fetchEvents" id="fetchevents"></a>

fetchEvents{docsify-ignore}

Groups outcome markets by their underlying (e.g. BTC_ABOVE_78213) into event structures. Each event contains both the YES and NO markets.

Kind: instance method of <code>hyperliquid</code>
Returns: <code>Array<PredictionEvent></code> - array of event structures

ParamTypeRequiredDescription
params<code>object</code>Noextra parameters
params.query<code>string</code>Noa single query string to filter by (matches description/outcome)
params.queries<code>Array<string></code>Nomultiple query strings (alternative to query)
javascript
hyperliquid.fetchEvents (params?)