1.2.0 • Published 4 years ago

@yongyi520/bit_mex_api v1.2.0

Weekly downloads
1
License
Unlicense
Repository
github
Last release
4 years ago

bit_mex_api

BitMexApi - JavaScript client for bit_mex_api

REST API for the BitMEX Trading Platform View Changelog - #### Getting Started Base URI: https://www.bitmex.com/api/v1 ##### Fetching Data All REST endpoints are documented below. You can try out any query right from this interface. Most table queries accept count, start, and reverse params. Set reverse=true to get rows newest-first. Additional documentation regarding filters, timestamps, and authentication is available in the main API documentation. All table data is available via the Websocket. We highly recommend using the socket if you want to have the quickest possible data without being subject to ratelimits. ##### Return Types By default, all data is returned as JSON. Send ?_format=csv to get CSV data or ?_format=xml to get XML data. ##### Trade Data Queries This is only a small subset of what is available, to get you started. Fill in the parameters and click the Try it out! button to try any of these queries. - Pricing Data - Trade Data - OrderBook Data - Settlement Data - Exchange Statistics Every function of the BitMEX.com platform is exposed here and documented. Many more functions are available. ##### Swagger Specification ⇩ Download Swagger JSON - ## All API Endpoints Click to expand a section.

This SDK is automatically generated by the Swagger Codegen project:

  • API version: 1.2.0
  • Package version: 1.2.0
  • Build package: io.swagger.codegen.languages.JavascriptClientCodegen

Installation

For Node.js

npm

To publish the library as a npm, please follow the procedure in "Publishing npm packages".

Then install it via:

npm install bit_mex_api --save
Local development

To use the library locally without publishing to a remote npm registry, first install the dependencies by changing into the directory containing package.json (and this README). Let's call this JAVASCRIPT_CLIENT_DIR. Then run:

npm install

Next, link it globally in npm with the following, also from JAVASCRIPT_CLIENT_DIR:

npm link

Finally, switch to the directory you want to use your bit_mex_api from, and run:

npm link /path/to/<JAVASCRIPT_CLIENT_DIR>

You should now be able to require('bit_mex_api') in javascript files from the directory you ran the last command above from.

git

If the library is hosted at a git repository, e.g. https://github.com/GIT_USER_ID/GIT_REPO_ID then install it via:

    npm install GIT_USER_ID/GIT_REPO_ID --save

For browser

The library also works in the browser environment via npm and browserify. After following the above steps with Node.js and installing browserify with npm install -g browserify, perform the following (assuming main.js is your entry file, that's to say your javascript file where you actually use this library):

browserify main.js > bundle.js

Then include bundle.js in the HTML pages.

Webpack Configuration

Using Webpack you may encounter the following error: "Module not found: Error: Cannot resolve module", most certainly you should disable AMD loader. Add/merge the following section to your webpack config:

module: {
  rules: [
    {
      parser: {
        amd: false
      }
    }
  ]
}

Getting Started

Please follow the installation instruction and execute the following JS code:

var BitMexApi = require('bit_mex_api');

var defaultClient = BitMexApi.ApiClient.instance;

// Configure API key authorization: apiExpires
var apiExpires = defaultClient.authentications['apiExpires'];
apiExpires.apiKey = "YOUR API KEY"
// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
//apiExpires.apiKeyPrefix['api-expires'] = "Token"

// Configure API key authorization: apiKey
var apiKey = defaultClient.authentications['apiKey'];
apiKey.apiKey = "YOUR API KEY"
// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
//apiKey.apiKeyPrefix['api-key'] = "Token"

// Configure API key authorization: apiSignature
var apiSignature = defaultClient.authentications['apiSignature'];
apiSignature.apiKey = "YOUR API KEY"
// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
//apiSignature.apiKeyPrefix['api-signature'] = "Token"

var api = new BitMexApi.APIKeyApi()

var opts = { 
  'reverse': false // {Boolean} If true, will sort results newest first.
};

var callback = function(error, data, response) {
  if (error) {
    console.error(error);
  } else {
    console.log('API called successfully. Returned data: ' + data);
  }
};
api.aPIKeyGet(opts, callback);

Documentation for API Endpoints

All URIs are relative to https://www.bitmex.com/api/v1

ClassMethodHTTP requestDescription
BitMexApi.APIKeyApiaPIKeyGetGET /apiKeyGet your API Keys.
BitMexApi.AnnouncementApiannouncementGetGET /announcementGet site announcements.
BitMexApi.AnnouncementApiannouncementGetUrgentGET /announcement/urgentGet urgent (banner) announcements.
BitMexApi.ChatApichatGetGET /chatGet chat messages.
BitMexApi.ChatApichatGetChannelsGET /chat/channelsGet available channels.
BitMexApi.ChatApichatGetConnectedGET /chat/connectedGet connected users.
BitMexApi.ChatApichatNewPOST /chatSend a chat message.
BitMexApi.ExecutionApiexecutionGetGET /executionGet all raw executions for your account.
BitMexApi.ExecutionApiexecutionGetTradeHistoryGET /execution/tradeHistoryGet all balance-affecting executions. This includes each trade, insurance charge, and settlement.
BitMexApi.FundingApifundingGetGET /fundingGet funding history.
BitMexApi.GlobalNotificationApiglobalNotificationGetGET /globalNotificationGet your current GlobalNotifications.
BitMexApi.InstrumentApiinstrumentGetGET /instrumentGet instruments.
BitMexApi.InstrumentApiinstrumentGetActiveGET /instrument/activeGet all active instruments and instruments that have expired in <24hrs.
BitMexApi.InstrumentApiinstrumentGetActiveAndIndicesGET /instrument/activeAndIndicesHelper method. Gets all active instruments and all indices. This is a join of the result of /indices and /active.
BitMexApi.InstrumentApiinstrumentGetActiveIntervalsGET /instrument/activeIntervalsReturn all active contract series and interval pairs.
BitMexApi.InstrumentApiinstrumentGetCompositeIndexGET /instrument/compositeIndexShow constituent parts of an index.
BitMexApi.InstrumentApiinstrumentGetIndicesGET /instrument/indicesGet all price indices.
BitMexApi.InsuranceApiinsuranceGetGET /insuranceGet insurance fund history.
BitMexApi.LeaderboardApileaderboardGetGET /leaderboardGet current leaderboard.
BitMexApi.LeaderboardApileaderboardGetNameGET /leaderboard/nameGet your alias on the leaderboard.
BitMexApi.LiquidationApiliquidationGetGET /liquidationGet liquidation orders.
BitMexApi.OrderApiorderAmendPUT /orderAmend the quantity or price of an open order.
BitMexApi.OrderApiorderAmendBulkPUT /order/bulkAmend multiple orders for the same symbol.
BitMexApi.OrderApiorderCancelDELETE /orderCancel order(s). Send multiple order IDs to cancel in bulk.
BitMexApi.OrderApiorderCancelAllDELETE /order/allCancels all of your orders.
BitMexApi.OrderApiorderCancelAllAfterPOST /order/cancelAllAfterAutomatically cancel all your orders after a specified timeout.
BitMexApi.OrderApiorderClosePositionPOST /order/closePositionClose a position. Deprecated, use POST /order with execInst: 'Close'
BitMexApi.OrderApiorderGetOrdersGET /orderGet your orders.
BitMexApi.OrderApiorderNewPOST /orderCreate a new order.
BitMexApi.OrderApiorderNewBulkPOST /order/bulkCreate multiple new orders for the same symbol.
BitMexApi.OrderBookApiorderBookGetL2GET /orderBook/L2Get current orderbook in vertical format.
BitMexApi.PositionApipositionGetGET /positionGet your positions.
BitMexApi.PositionApipositionIsolateMarginPOST /position/isolateEnable isolated margin or cross margin per-position.
BitMexApi.PositionApipositionTransferIsolatedMarginPOST /position/transferMarginTransfer equity in or out of a position.
BitMexApi.PositionApipositionUpdateLeveragePOST /position/leverageChoose leverage for a position.
BitMexApi.PositionApipositionUpdateRiskLimitPOST /position/riskLimitUpdate your risk limit.
BitMexApi.QuoteApiquoteGetGET /quoteGet Quotes.
BitMexApi.QuoteApiquoteGetBucketedGET /quote/bucketedGet previous quotes in time buckets.
BitMexApi.SchemaApischemaGetGET /schemaGet model schemata for data objects returned by this API.
BitMexApi.SchemaApischemaWebsocketHelpGET /schema/websocketHelpReturns help text & subject list for websocket usage.
BitMexApi.SettlementApisettlementGetGET /settlementGet settlement history.
BitMexApi.StatsApistatsGetGET /statsGet exchange-wide and per-series turnover and volume statistics.
BitMexApi.StatsApistatsHistoryGET /stats/historyGet historical exchange-wide and per-series turnover and volume statistics.
BitMexApi.StatsApistatsHistoryUSDGET /stats/historyUSDGet a summary of exchange statistics in USD.
BitMexApi.TradeApitradeGetGET /tradeGet Trades.
BitMexApi.TradeApitradeGetBucketedGET /trade/bucketedGet previous trades in time buckets.
BitMexApi.UserApiuserCancelWithdrawalPOST /user/cancelWithdrawalCancel a withdrawal.
BitMexApi.UserApiuserCheckReferralCodeGET /user/checkReferralCodeCheck if a referral code is valid.
BitMexApi.UserApiuserCommunicationTokenPOST /user/communicationTokenRegister your communication token for mobile clients
BitMexApi.UserApiuserConfirmPOST /user/confirmEmailConfirm your email address with a token.
BitMexApi.UserApiuserConfirmWithdrawalPOST /user/confirmWithdrawalConfirm a withdrawal.
BitMexApi.UserApiuserGetGET /userGet your user model.
BitMexApi.UserApiuserGetAffiliateStatusGET /user/affiliateStatusGet your current affiliate/referral status.
BitMexApi.UserApiuserGetCommissionGET /user/commissionGet your account's commission status.
BitMexApi.UserApiuserGetDepositAddressGET /user/depositAddressGet a deposit address.
BitMexApi.UserApiuserGetExecutionHistoryGET /user/executionHistoryGet the execution history by day.
BitMexApi.UserApiuserGetMarginGET /user/marginGet your account's margin status. Send a currency of \"all\" to receive an array of all supported currencies.
BitMexApi.UserApiuserGetQuoteFillRatioGET /user/quoteFillRatioGet 7 days worth of Quote Fill Ratio statistics.
BitMexApi.UserApiuserGetWalletGET /user/walletGet your current wallet information.
BitMexApi.UserApiuserGetWalletHistoryGET /user/walletHistoryGet a history of all of your wallet transactions (deposits, withdrawals, PNL).
BitMexApi.UserApiuserGetWalletSummaryGET /user/walletSummaryGet a summary of all of your wallet transactions (deposits, withdrawals, PNL).
BitMexApi.UserApiuserLogoutPOST /user/logoutLog out of BitMEX.
BitMexApi.UserApiuserMinWithdrawalFeeGET /user/minWithdrawalFeeGet the minimum withdrawal fee for a currency.
BitMexApi.UserApiuserRequestWithdrawalPOST /user/requestWithdrawalRequest a withdrawal to an external wallet.
BitMexApi.UserApiuserSavePreferencesPOST /user/preferencesSave user preferences.
BitMexApi.UserEventApiuserEventGetGET /userEventGet your user events

Documentation for Models

Documentation for Authorization

apiExpires

  • Type: API key
  • API key parameter name: api-expires
  • Location: HTTP header

apiKey

  • Type: API key
  • API key parameter name: api-key
  • Location: HTTP header

apiSignature

  • Type: API key
  • API key parameter name: api-signature
  • Location: HTTP header