Mexc docs https://mxcdevelop.github.io/APIDoc/
All interface methods are initialized the same as those provided by Mxc. See details src/api
Most of the interface is now complete, and the user can continue to extend it based on my design, working with me to improve it.
Exchanges It includes all of the following exchanges and is highly recommended.
composer require linwj/mxc
Support for more request Settings
$mexc=new MxcSpot();
//or
$mexc=new MxcSpot($key,$secret);
//You can set special needs
$mexc->setOptions([
//Set the request timeout to 60 seconds by default
'timeout'=>10,
//https://github.com/guzzle/guzzle
'proxy'=>[],
//https://www.php.net/manual/en/book.curl.php
'curl'=>[],
//Set Demo Trading
'headers'=>['x-simulated-trading'=>1]
]);
Mxc Spot API,Support Spot V3
Order Book More
$mexc=new MxcSpot($key,$secret);
try {
$result=$mexc->market()->getDeals([
'symbol'=>'btc_usdt',
'limit'=>2,
]);
print_r($result);
}catch (\Exception $e){
print_r($e->getMessage());
}
try {
$result=$mexc->market()->getDepth([
'depth'=>2,
'symbol'=>'btc_usdt'
]);
print_r($result);
}catch (\Exception $e){
print_r($e->getMessage());
}
try {
$result=$mexc->market()->getTicker([
'symbol'=>'btc_usdt',
'limit'=>2
]);
print_r($result);
}catch (\Exception $e){
print_r($e->getMessage());
}
try {
$result=$mexc->market()->getKline([
'symbol'=>'btc_usdt',
'interval'=>'1h',
//'limit'=>10
]);
print_r($result);
}catch (\Exception $e){
print_r($e->getMessage());
}
try {
$result=$mexc->market()->getSymbols();
print_r($result['data'][0]);
}catch (\Exception $e){
print_r($e->getMessage());
}
Order related API More
//Place an Order
try {
$result=$mexc->order()->postPlace([
'symbol'=>'EOS_USDT',
'price'=>'6',
'quantity'=>1,
'trade_type'=>'ASK',//BID=buy,ASK=sell
'order_type'=>'LIMIT_ORDER',//LIMIT_ORDER,POST_ONLY,IMMEDIATE_OR_CANCEL
//'client_order_id'=>''
]);
print_r($result);
}catch (\Exception $e){
print_r($e->getMessage());
}
sleep(1);
//Get order details by order ID.
try {
$result=$mexc->order()->getQuery([
'symbol'=>'EOS_USDT',
'order_ids'=>$result['data'],
//'client_order_ids'=>'',
]);
print_r($result);
}catch (\Exception $e){
print_r($e->getMessage());
}
sleep(1);
//Cancelling an unfilled order.
try {
$result=$mexc->order()->deleteCancel([
'symbol'=>'EOS_USDT',
'order_ids'=>$result['data'][0]['id'],
//'client_order_ids'=>'',
]);
print_r($result);
}catch (\Exception $e){
print_r($e->getMessage());
}
Accounts related API More
try {
$result=$mexc->account()->getInfo();
print_r($result);
}catch (\Exception $e){
print_r($e->getMessage());
}
Market More
$mexc=new MxcContract();
try {
$result=$mexc->market()->getPing();
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
try {
$result=$mexc->market()->getDetail();
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
try {
$result=$mexc->market()->getSupportCurrencies();
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
try {
$result=$mexc->market()->getDepth([
'symbol'=>'BTC_USDT',
'limit'=>2
]);
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
try {
$result=$mexc->market()->getDepthCommits([
'symbol'=>'BTC_USDT',
'limit'=>2
]);
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
try {
$result=$mexc->market()->getIndexPrice([
'symbol'=>'BTC_USDT',
]);
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
try {
$result=$mexc->market()->getFairPrice([
'symbol'=>'BTC_USDT',
]);
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
try {
$result=$mexc->market()->getFundingRate([
'symbol'=>'BTC_USDT',
]);
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
try {
$result=$mexc->market()->getKline([
'symbol'=>'BTC_USDT',
'interval'=>'Min60',
'start'=>'1616168957',
'end'=>'1616468957',
]);
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
Order More
$mexc=new MxcContract($key,$secret);
//order
try {
$result=$mexc->order()->postSubmit([
'symbol'=>'BTC_USDT',
'price'=>'5000',
'vol'=>'1',
'side'=>'1',
'type'=>'1',
'openType'=>'2',
]);
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
try {
$result=$mexc->order()->postCancel([
'symbol'=>'BTC_USDT',
'orderId'=>'xxxxxxxxxxx',
]);
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
try {
$result=$mexc->order()->postCancelAll([
'symbol'=>'BTC_USDT',
]);
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
//PlanOrder
try {
$result=$mexc->planorder()->getOrders([
'page_num'=>1,
'page_size'=>10,
]);
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
try {
$result=$mexc->planorder()->postPlace([
'symbol'=>'BTC_USDT',
'price'=>'5000',
'vol'=>'1',
'side'=>'1',
'openType'=>'2',
'triggerPrice'=>'5500',
'triggerType'=>'2',
'executeCycle'=>'1',
'orderType'=>'1',
'trend'=>'1',
]);
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
try {
$result=$mexc->planorder()->postCancel([
'symbol'=>'BTC_USDT',
'orderId'=>'xxxxxxxxxxx',
]);
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
//StopOrder
try {
$result=$mexc->stoporder()->getOrders([
'page_num'=>1,
'page_size'=>10,
]);
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
try {
$result=$mexc->stoporder()->postCancel([
'symbol'=>'BTC_USDT',
'orderId'=>'xxxxxxxxxxx',
]);
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
try {
$result=$mexc->stoporder()->postChangePrice([
'orderId'=>'xxxxxxxx',
'stopLossPrice'=>'5000',
'takeProfitPrice'=>'0',
]);
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
Account and Position More
$mexc=new MxcContract($key,$secret);
try {
$result=$mexc->position()->getHistoryPositions([
//'symbol'=>'BTC_USDT',
//'type'=>1,
'page_num'=>1,
'page_size'=>10,
]);
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}
try {
$result=$mexc->account()->getAssets();
print_r($result);
}catch (\Exception $e){
print_r(json_decode($e->getMessage(),true));
}