Skip to main content

mexc crypto exchange api client

Project description

mexc-python

Python SDK (sync and async) for Mexc cryptocurrency exchange with Rest and WS capabilities.

Installation

pip install mexc-exchange-api

Usage

Sync

from mexc import MexcSync

def main():
    instance = MexcSync({})
    ob =  instance.fetch_order_book("BTC/USDC")
    print(ob)
    #
    # balance = instance.fetch_balance()
    # order = instance.create_order("BTC/USDC", "limit", "buy", 1, 100000)

main()

Async

import sys
import asyncio
from mexc import MexcAsync

### on Windows, uncomment below:
# if sys.platform == 'win32':
# 	asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())

async def main():
    instance = MexcAsync({})
    ob =  await instance.fetch_order_book("BTC/USDC")
    print(ob)
    #
    # balance = await instance.fetch_balance()
    # order = await instance.create_order("BTC/USDC", "limit", "buy", 1, 100000)

    # once you are done with the exchange
    await instance.close()

asyncio.run(main())

Websockets

import sys
from mexc import MexcWs

### on Windows, uncomment below:
# if sys.platform == 'win32':
# 	asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())

async def main():
    instance = MexcWs({})
    while True:
        ob = await instance.watch_order_book("BTC/USDC")
        print(ob)
        # orders = await instance.watch_orders("BTC/USDC")

    # once you are done with the exchange
    await instance.close()

asyncio.run(main())

Raw call

You can also construct custom requests to available "implicit" endpoints

        request = {
            'type': 'candleSnapshot',
            'req': {
                'coin': coin,
                'interval': tf,
                'startTime': since,
                'endTime': until,
            },
        }
        response = await instance.public_post_info(request)

Available methods

REST Unified

  • create_deposit_address(self, code: str, params={})
  • create_market_buy_order_with_cost(self, symbol: str, cost: float, params={})
  • create_market_sell_order_with_cost(self, symbol: str, cost: float, params={})
  • create_order(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: Num = None, params={})
  • create_orders(self, orders: List[OrderRequest], params={})
  • create_spot_order_request(self, market, type, side, amount, price=None, marginMode=None, params={})
  • create_spot_order(self, market, type, side, amount, price=None, marginMode=None, params={})
  • create_swap_order(self, market, type, side, amount, price=None, marginMode=None, params={})
  • fetch_account_helper(self, type, params)
  • fetch_accounts(self, params={})
  • fetch_balance(self, params={})
  • fetch_bids_asks(self, symbols: Strings = None, params={})
  • fetch_canceled_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={})
  • fetch_closed_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={})
  • fetch_currencies(self, params={})
  • fetch_deposit_address(self, code: str, params={})
  • fetch_deposit_addresses_by_network(self, code: str, params={})
  • fetch_deposit_withdraw_fees(self, codes: Strings = None, params={})
  • fetch_deposits(self, code: Str = None, since: Int = None, limit: Int = None, params={})
  • fetch_funding_history(self, symbol: Str = None, since: Int = None, limit: Int = None, params={})
  • fetch_funding_interval(self, symbol: str, params={})
  • fetch_funding_rate_history(self, symbol: Str = None, since: Int = None, limit: Int = None, params={})
  • fetch_funding_rate(self, symbol: str, params={})
  • fetch_leverage_tiers(self, symbols: Strings = None, params={})
  • fetch_leverage(self, symbol: str, params={})
  • fetch_markets(self, params={})
  • fetch_my_trades(self, symbol: Str = None, since: Int = None, limit: Int = None, params={})
  • fetch_ohlcv(self, symbol: str, timeframe: str = '1m', since: Int = None, limit: Int = None, params={})
  • fetch_open_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={})
  • fetch_order_book(self, symbol: str, limit: Int = None, params={})
  • fetch_order_trades(self, id: str, symbol: Str = None, since: Int = None, limit: Int = None, params={})
  • fetch_order(self, id: str, symbol: Str = None, params={})
  • fetch_orders_by_ids(self, ids, symbol: Str = None, params={})
  • fetch_orders_by_state(self, state, symbol: Str = None, since: Int = None, limit: Int = None, params={})
  • fetch_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={})
  • fetch_position_mode(self, symbol: Str = None, params={})
  • fetch_position(self, symbol: str, params={})
  • fetch_positions_history(self, symbols: Strings = None, since: Int = None, limit: Int = None, params={})
  • fetch_positions(self, symbols: Strings = None, params={})
  • fetch_spot_markets(self, params={})
  • fetch_status(self, params={})
  • fetch_swap_markets(self, params={})
  • fetch_ticker(self, symbol: str, params={})
  • fetch_tickers(self, symbols: Strings = None, params={})
  • fetch_time(self, params={})
  • fetch_trades(self, symbol: str, since: Int = None, limit: Int = None, params={})
  • fetch_trading_fee(self, symbol: str, params={})
  • fetch_transaction_fees(self, codes: Strings = None, params={})
  • fetch_transfer(self, id: str, code: Str = None, params={})
  • fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={})
  • fetch_withdrawals(self, code: Str = None, since: Int = None, limit: Int = None, params={})
  • add_margin(self, symbol: str, amount: float, params={})
  • cancel_all_orders(self, symbol: Str = None, params={})
  • cancel_order(self, id: str, symbol: Str = None, params={})
  • cancel_orders(self, ids: List[str], symbol: Str = None, params={})
  • custom_parse_balance(self, response, marketType)
  • describe(self)
  • get_tif_from_raw_order_type(self, orderType: Str = None)
  • modify_margin_helper(self, symbol: str, amount, addOrReduce, params={})
  • nonce(self)
  • reduce_margin(self, symbol: str, amount: float, params={})
  • set_leverage(self, leverage: int, symbol: Str = None, params={})
  • set_margin_mode(self, marginMode: str, symbol: Str = None, params={})
  • set_position_mode(self, hedged: bool, symbol: Str = None, params={})
  • transfer(self, code: str, amount: float, fromAccount: str, toAccount: str, params={})
  • withdraw(self, code: str, amount: float, address: str, tag: Str = None, params={})

REST Raw

  • spot_public_get_ping(request)
  • spot_public_get_time(request)
  • spot_public_get_defaultsymbols(request)
  • spot_public_get_exchangeinfo(request)
  • spot_public_get_depth(request)
  • spot_public_get_trades(request)
  • spot_public_get_historicaltrades(request)
  • spot_public_get_aggtrades(request)
  • spot_public_get_klines(request)
  • spot_public_get_avgprice(request)
  • spot_public_get_ticker_24hr(request)
  • spot_public_get_ticker_price(request)
  • spot_public_get_ticker_bookticker(request)
  • spot_public_get_etf_info(request)
  • spot_private_get_kyc_status(request)
  • spot_private_get_uid(request)
  • spot_private_get_order(request)
  • spot_private_get_openorders(request)
  • spot_private_get_allorders(request)
  • spot_private_get_account(request)
  • spot_private_get_mytrades(request)
  • spot_private_get_strategy_group(request)
  • spot_private_get_strategy_group_uid(request)
  • spot_private_get_tradefee(request)
  • spot_private_get_sub_account_list(request)
  • spot_private_get_sub_account_apikey(request)
  • spot_private_get_sub_account_asset(request)
  • spot_private_get_capital_config_getall(request)
  • spot_private_get_capital_deposit_hisrec(request)
  • spot_private_get_capital_withdraw_history(request)
  • spot_private_get_capital_withdraw_address(request)
  • spot_private_get_capital_deposit_address(request)
  • spot_private_get_capital_transfer(request)
  • spot_private_get_capital_transfer_tranid(request)
  • spot_private_get_capital_transfer_internal(request)
  • spot_private_get_capital_sub_account_universaltransfer(request)
  • spot_private_get_capital_convert(request)
  • spot_private_get_capital_convert_list(request)
  • spot_private_get_margin_loan(request)
  • spot_private_get_margin_allorders(request)
  • spot_private_get_margin_mytrades(request)
  • spot_private_get_margin_openorders(request)
  • spot_private_get_margin_maxtransferable(request)
  • spot_private_get_margin_priceindex(request)
  • spot_private_get_margin_order(request)
  • spot_private_get_margin_isolated_account(request)
  • spot_private_get_margin_maxborrowable(request)
  • spot_private_get_margin_repay(request)
  • spot_private_get_margin_isolated_pair(request)
  • spot_private_get_margin_forceliquidationrec(request)
  • spot_private_get_margin_isolatedmargindata(request)
  • spot_private_get_margin_isolatedmargintier(request)
  • spot_private_get_rebate_taxquery(request)
  • spot_private_get_rebate_detail(request)
  • spot_private_get_rebate_detail_kickback(request)
  • spot_private_get_rebate_refercode(request)
  • spot_private_get_rebate_affiliate_commission(request)
  • spot_private_get_rebate_affiliate_withdraw(request)
  • spot_private_get_rebate_affiliate_commission_detail(request)
  • spot_private_get_mxdeduct_enable(request)
  • spot_private_get_userdatastream(request)
  • spot_private_get_selfsymbols(request)
  • spot_private_get_asset_internal_transfer_record(request)
  • spot_private_post_order(request)
  • spot_private_post_order_test(request)
  • spot_private_post_sub_account_virtualsubaccount(request)
  • spot_private_post_sub_account_apikey(request)
  • spot_private_post_sub_account_futures(request)
  • spot_private_post_sub_account_margin(request)
  • spot_private_post_batchorders(request)
  • spot_private_post_strategy_group(request)
  • spot_private_post_capital_withdraw_apply(request)
  • spot_private_post_capital_withdraw(request)
  • spot_private_post_capital_transfer(request)
  • spot_private_post_capital_transfer_internal(request)
  • spot_private_post_capital_deposit_address(request)
  • spot_private_post_capital_sub_account_universaltransfer(request)
  • spot_private_post_capital_convert(request)
  • spot_private_post_mxdeduct_enable(request)
  • spot_private_post_userdatastream(request)
  • spot_private_put_userdatastream(request)
  • spot_private_delete_order(request)
  • spot_private_delete_openorders(request)
  • spot_private_delete_sub_account_apikey(request)
  • spot_private_delete_margin_order(request)
  • spot_private_delete_margin_openorders(request)
  • spot_private_delete_userdatastream(request)
  • spot_private_delete_capital_withdraw(request)
  • contract_public_get_ping(request)
  • contract_public_get_detail(request)
  • contract_public_get_support_currencies(request)
  • contract_public_get_depth_symbol(request)
  • contract_public_get_depth_commits_symbol_limit(request)
  • contract_public_get_index_price_symbol(request)
  • contract_public_get_fair_price_symbol(request)
  • contract_public_get_funding_rate_symbol(request)
  • contract_public_get_kline_symbol(request)
  • contract_public_get_kline_index_price_symbol(request)
  • contract_public_get_kline_fair_price_symbol(request)
  • contract_public_get_deals_symbol(request)
  • contract_public_get_ticker(request)
  • contract_public_get_risk_reverse(request)
  • contract_public_get_risk_reverse_history(request)
  • contract_public_get_funding_rate_history(request)
  • contract_private_get_account_assets(request)
  • contract_private_get_account_asset_currency(request)
  • contract_private_get_account_transfer_record(request)
  • contract_private_get_position_list_history_positions(request)
  • contract_private_get_position_open_positions(request)
  • contract_private_get_position_funding_records(request)
  • contract_private_get_position_position_mode(request)
  • contract_private_get_order_list_open_orders_symbol(request)
  • contract_private_get_order_list_history_orders(request)
  • contract_private_get_order_external_symbol_external_oid(request)
  • contract_private_get_order_get_order_id(request)
  • contract_private_get_order_batch_query(request)
  • contract_private_get_order_deal_details_order_id(request)
  • contract_private_get_order_list_order_deals(request)
  • contract_private_get_planorder_list_orders(request)
  • contract_private_get_stoporder_list_orders(request)
  • contract_private_get_stoporder_order_details_stop_order_id(request)
  • contract_private_get_account_risk_limit(request)
  • contract_private_get_account_tiered_fee_rate(request)
  • contract_private_get_position_leverage(request)
  • contract_private_post_position_change_margin(request)
  • contract_private_post_position_change_leverage(request)
  • contract_private_post_position_change_position_mode(request)
  • contract_private_post_order_submit(request)
  • contract_private_post_order_submit_batch(request)
  • contract_private_post_order_cancel(request)
  • contract_private_post_order_cancel_with_external(request)
  • contract_private_post_order_cancel_all(request)
  • contract_private_post_account_change_risk_level(request)
  • contract_private_post_planorder_place(request)
  • contract_private_post_planorder_cancel(request)
  • contract_private_post_planorder_cancel_all(request)
  • contract_private_post_stoporder_cancel(request)
  • contract_private_post_stoporder_cancel_all(request)
  • contract_private_post_stoporder_change_price(request)
  • contract_private_post_stoporder_change_plan_price(request)
  • spot2_public_get_market_symbols(request)
  • spot2_public_get_market_coin_list(request)
  • spot2_public_get_common_timestamp(request)
  • spot2_public_get_common_ping(request)
  • spot2_public_get_market_ticker(request)
  • spot2_public_get_market_depth(request)
  • spot2_public_get_market_deals(request)
  • spot2_public_get_market_kline(request)
  • spot2_public_get_market_api_default_symbols(request)
  • spot2_private_get_account_info(request)
  • spot2_private_get_order_open_orders(request)
  • spot2_private_get_order_list(request)
  • spot2_private_get_order_query(request)
  • spot2_private_get_order_deals(request)
  • spot2_private_get_order_deal_detail(request)
  • spot2_private_get_asset_deposit_address_list(request)
  • spot2_private_get_asset_deposit_list(request)
  • spot2_private_get_asset_address_list(request)
  • spot2_private_get_asset_withdraw_list(request)
  • spot2_private_get_asset_internal_transfer_record(request)
  • spot2_private_get_account_balance(request)
  • spot2_private_get_asset_internal_transfer_info(request)
  • spot2_private_get_market_api_symbols(request)
  • spot2_private_post_order_place(request)
  • spot2_private_post_order_place_batch(request)
  • spot2_private_post_order_advanced_place_batch(request)
  • spot2_private_post_asset_withdraw(request)
  • spot2_private_post_asset_internal_transfer(request)
  • spot2_private_delete_order_cancel(request)
  • spot2_private_delete_order_cancel_by_symbol(request)
  • spot2_private_delete_asset_withdraw(request)
  • broker_private_get_sub_account_universaltransfer(request)
  • broker_private_get_sub_account_list(request)
  • broker_private_get_sub_account_apikey(request)
  • broker_private_get_capital_deposit_subaddress(request)
  • broker_private_get_capital_deposit_subhisrec(request)
  • broker_private_get_capital_deposit_subhisrec_getall(request)
  • broker_private_post_sub_account_virtualsubaccount(request)
  • broker_private_post_sub_account_apikey(request)
  • broker_private_post_capital_deposit_subaddress(request)
  • broker_private_post_capital_withdraw_apply(request)
  • broker_private_post_sub_account_universaltransfer(request)
  • broker_private_post_sub_account_futures(request)
  • broker_private_delete_sub_account_apikey(request)

WS Unified

  • describe(self)
  • watch_ticker(self, symbol: str, params={})
  • watch_tickers(self, symbols: Strings = None, params={})
  • watch_bids_asks(self, symbols: Strings = None, params={})
  • watch_spot_public(self, channel, messageHash, params={})
  • watch_spot_private(self, channel, messageHash, params={})
  • watch_swap_public(self, channel, messageHash, requestParams, params={})
  • watch_swap_private(self, messageHash, params={})
  • watch_ohlcv(self, symbol: str, timeframe: str = '1m', since: Int = None, limit: Int = None, params={})
  • watch_order_book(self, symbol: str, limit: Int = None, params={})
  • get_cache_index(self, orderbook, cache)
  • watch_trades(self, symbol: str, since: Int = None, limit: Int = None, params={})
  • watch_my_trades(self, symbol: Str = None, since: Int = None, limit: Int = None, params={})
  • watch_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={})
  • watch_balance(self, params={})
  • watch_funding_rate(self, symbol: str, params={})
  • un_watch_funding_rate(self, symbol: str, params={})
  • un_watch_ticker(self, symbol: str, params={})
  • un_watch_tickers(self, symbols: Strings = None, params={})
  • un_watch_bids_asks(self, symbols: Strings = None, params={})
  • un_watch_ohlcv(self, symbol: str, timeframe: str = '1m', params={})
  • un_watch_order_book(self, symbol: str, params={})
  • un_watch_trades(self, symbol: str, params={})
  • authenticate(self, subscriptionHash, params={})
  • keep_alive_listen_key(self, listenKey, params={})

Contribution

  • Give us a star :star:
  • Fork and Clone! Awesome
  • Select existing issues or create a new issue.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mexc_exchange_api-0.0.126.tar.gz (771.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mexc_exchange_api-0.0.126-py3-none-any.whl (1.0 MB view details)

Uploaded Python 3

File details

Details for the file mexc_exchange_api-0.0.126.tar.gz.

File metadata

  • Download URL: mexc_exchange_api-0.0.126.tar.gz
  • Upload date:
  • Size: 771.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for mexc_exchange_api-0.0.126.tar.gz
Algorithm Hash digest
SHA256 ca8c645aa0d94e95c3b0c6cded2d5007287291bd39bee49a47759dcde2fd563b
MD5 b3a063da44b23245b82facf6e423e3c7
BLAKE2b-256 05f2eb8b5a65f28d8e07045a44e88d951bec93d8de010161fb681d58a4e2b321

See more details on using hashes here.

File details

Details for the file mexc_exchange_api-0.0.126-py3-none-any.whl.

File metadata

File hashes

Hashes for mexc_exchange_api-0.0.126-py3-none-any.whl
Algorithm Hash digest
SHA256 ed98886fb0cee7a4b1df390c93e1e09c4a64acc5c7a3bf368c55b7d1dde006e6
MD5 9cc6e98666d639ab73934e4e94317cf6
BLAKE2b-256 ecb6f22e188aacddf9c2bfd4615fe34bea1715f0d2b5862979406630fd62faff

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page