PHP code example of linwj / mxc
1. Go to this page and download the library: Download linwj/mxc library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
linwj / mxc example snippets
$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]
]);
$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());
}
//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());
}
try {
$result=$mexc->account()->getInfo();
print_r($result);
}catch (\Exception $e){
print_r($e->getMessage());
}
$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));
}
$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));
}
$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));
}