BitMEX API Client for Elixir
Add the ex_bitmex
package to your list of dependencies in mix.exs
:
def deps do
[{:ex_bitmex, "~> 0.6"}]
end
# Public
{:ok, instruments, rate_limit} = ExBitmex.Rest.Instrument.Index.get(start: 0, count: 20)
# Private
credentials = %ExBitmex.Credentials{
api_key: System.get_env("BITMEX_API_KEY"),
api_secret: System.get_env("BITMEX_API_SECRET")
}
{:ok, positions, rate_limit} = ExBitmex.Rest.Position.Index.get(credentials)
Create a WebSocket wrapper with a handler
defmodule BitMexWebSocketWrapper do
use ExBitmex.WebSocket
def handle_response(json, _state) do
Logger.warn("Received #{inspect(json)}")
end
end
-
GET /announcement
-
GET /announcement/urgent
-
GET /apiKey
-
GET /chat
-
POST /chat
-
GET /chat/channels
-
GET /chat/connected
-
GET /execution
-
GET /execution/tradeHistory
-
GET /funding
-
GET /globalNotification
-
GET /instrument
-
GET /instrument/active
-
GET /instrument/activeAndIndices
-
GET /instrument/activeIntervals
-
GET /instrument/compositeIndex
-
GET /instrument/indicies
-
GET /insurance
-
GET /leaderboard
-
GET /leaderboard/name
-
GET /liquidation
-
GET /order
-
PUT /order
-
POST /order
-
DELETE /order
-
DELETE /order/all
-
PUT /order/bulk
-
POST /order/bulk
-
POST /order/cancelAllAfter
-
POST /order/closePosition
-
GET /orderBook/L2
-
GET /position
-
POST /position/isolate
-
POST /position/leverage
-
POST /position/riskLimit
-
POST /position/transferMargin
-
GET /quote
-
GET /quote/bucketed
-
GET /schema
-
GET /schema/websocketHelp
-
GET /settlement
-
GET /stats
-
GET /stats/history
-
GET /stats/historyUSD
-
GET /trade
-
GET /trade/bucketed
-
GET /user
-
GET /user/affiliateStatus
-
POST /user/cancelWithdrawal
-
GET /user/checkReferralCode
-
GET /user/commmission
-
POST /user/communicationToken
-
POST /user/confirmEmail
-
POST /user/confirmWithdrawal
-
GET /user/depositAddress
-
GET /user/executionHistory
-
POST /user/logout
-
GET /user/margin
-
GET /user/minWithdrawalFee
-
POST /user/preferences
-
GET /user/quoteFillRatio
-
POST /user/requestWithdrawal
-
GET /user/wallet
-
GET /user/walletHistory
-
GET /user/walletSummary
-
GET /userEvent