dalvin1991/binance_client_api

此包最新版本(dev-master)没有提供许可信息。

dev-master 2017-10-22 15:35 UTC

This package is not auto-updated.

Last update: 2024-09-29 02:14:48 UTC


README

此PHP插件可以帮助您更容易地与币安交易所API集成。币安API:https://www.binance.com/restapipub.html *示例在demo文件夹中,您可以取消注释代码并将indexphp复制到项目根目录中以尝试API。

安装

*Note Require to install composer which can found in https://composer.php.ac.cn/

composer require dalvin1991/binance_client_api dev-master

入门

require 'vendor/autoload.php'; //the directory of the autoload.php in vendor folder 
$api = new BinanceClientAPI\API("<api key>","<secret>"); //the initialize of the API instance

获取每种加密货币的最新价格

echo "<h3>getPrices()</h3>";
$ticker = $api->getPrices();
echo "<pre>".print_r($ticker,true)."</pre>";

获取所有加密货币的余额

echo "<h3>getBalances()</h3>";
$balances = $api->getBalances($ticker);
echo "<pre>".print_r($balances,true)."</pre>";

获取所有加密货币的买价/卖价

echo "<h3>getBookPrices()</h3>";
$bookPrices = $api->getBookPrices();
echo "<pre>".print_r($bookPrices,true)."</pre>";

放置一个买LIMIT订单

$quantity = 1;
$price = 0.0005;
$pair = "BNBBTC";
$order = $api->buyOrder($pair, $quantity, $price);

放置一个卖LIMIT订单

$quantity = 1;
$price = 0.0005;
$pair = "BNBBTC";
$order = $api->sellOrder($pair, $quantity, $price);

放置一个买MARKET订单

$quantity = 1;
$pair = "BNBBTC";
$order = $api->buyOrder($pair, $quantity, 0, "MARKET");

放置一个卖MARKET订单

$quantity = 1;
$pair = "BNBBTC";
$order = $api->buyOrder($pair, $quantity, 0, "MARKET");

放置一个止损订单

$quantity = 1;
$price = 0.5; // Target btc sell value
$stopPrice = 0.4; // Sell immediately if price goes below 0.4 btc with market order
$pair = "BNBBTC";
$order = $api->sellOrder($pair, $quantity, $price, "LIMIT", ["stopPrice"=>$stopPrice]);
echo "<pre>".print_r($order,true)."</pre>";

放置一个冰山订单

$quantity = 1;
$price = 0.5;
$icebergQty = 10;
$pair = "BNBBTC";
$order = $api->sellOrder($pair, $quantity, $price, "LIMIT", ["icebergQty"=>$icebergQty]);
echo "<pre>".print_r($order,true)."</pre>";

完整历史完整交易

echo "<h3>getHistoryOrders()</h3>";
$pair="ETHBTC";
$history = $api->getHistoryOrders($pair);
echo "<pre>".print_r($history,true)."</pre>";

获取市场深度

echo "<h3>getDepth()</h3>";
$pair="ETHBTC";
$depth = $api->getDepth($pair);
echo "<pre>".print_r($depth,true)."</pre>";

获取未成交订单

echo "<h3>getOpenOrders()</h3>";
$pair="BTCUSDT";
$openorders = $api->getOpenOrders($pair);
echo "<pre>".print_r($openorders,true)."</pre>";

获取订单状态

echo "<h3>getOrderStatus()</h3>";
$orderid = <orderid>; //orderid can get from getOpenOrders() method
$pair="BTCUSDT";
$orderstatus = $api->getOrderStatus($pair, $orderid);
echo "<pre>".print_r($orderstatus,true)."</pre>";

取消一个订单

echo "<h3>cancelOrder()</h3>";
$pair="BTCUSDT";
$orderid = <orderid>; //orderid can get from getOpenOrders() method
$response = $api->cancelOrder($pair, $orderid);
echo "<pre>".print_r($response,true)."</pre>";

聚合交易列表

echo "<h3>getAggTrades()</h3>";
$pair="ETHBTC";
$trades = $api->getAggTrades($pair);
echo "<pre>".print_r($trades,true)."</pre>";

获取请求对的全部订单(活跃、已取消、已成交)

$pair="BTCUSDT";
$orders = $api->getOrders($pair);
echo "<pre>".print_r($orders,true)."</pre>";

获取请求对的蜡烛图数据。

//Interval: 1m,3m,5m,15m,30m,1h,2h,4h,6h,8h,12h,1d,3d,1w,1M
echo "<h3>getCandleSticks()</h3>";
$interval="15m";
$pair="ETHBTC";
$ticks = $api->getCandleSticks($pair, $interval);
echo "<pre>".print_r($ticks,true)."</pre>";

WebSocket API

通过WebSockets实时图表缓存

$api->getChart(["BNBBTC"], "15m", function($api, $symbol, $chart) {
    echo "{$symbol} chart update\n";
    echo "<pre>".print_r($chart,true)."</pre>";
//});

通过WebSocket获取交易更新

$api->trades(["BNBBTC"], function($api, $symbol, $trades) {
    echo "{$symbol} trades update".PHP_EOL;
    print_r($trades);
});

通过WebSockets实时更新深度缓存

$api->depthCache(["BNBBTC"], function($api, $symbol, $depth) {
	//the depth value is inside the $depth
    echo "{$symbol} depth cache update\n";
    $limit = 10; // Show how many depth level for asks/bids
    $sorted = $api->sortDepth($symbol, $limit);
    $bid = $api->first($sorted['bids']);
    $ask = $api->first($sorted['asks']);
    echo $api->displayDepth($sorted);
    echo "ask: {$ask}</br>";
    echo "bid: {$bid}</br><hr>";
});

通过WebSockets获取实时更新深度缓存

$api->depthCache(["BNBBTC"], function($api, $symbol, $depth) {
	//the depth value is inside the $depth
    echo "{$symbol} depth cache update\n";
    $limit = 10; // Show how many depth level for asks/bids
    $sorted = $api->sortDepth($symbol, $limit);
    $bid = $api->first($sorted['bids']);
    $ask = $api->first($sorted['asks']);
    echo $api->displayDepth($sorted);
    echo "ask: {$ask}</br>";
    echo "bid: {$bid}</br><hr>";
});

通过WebSockets获取实时图表数据

//Interval: 1m,3m,5m,15m,30m,1h,2h,4h,6h,8h,12h,1d,3d,1w,1M
$api->getChart(["BNBBTC"], "15m", function($api, $symbol, $chart) {
    echo "{$symbol} chart update\n";
    echo "<pre>".print_r($chart,true)."</pre>";
});

通过WebSockets获取实时更新完成交易数据

$api->getTradesA(["BTCUSDT"], function($api, $symbol, $trades) {
    echo "{$symbol} trades update".PHP_EOL;
    echo "<pre>".print_r($trades,true)."</pre></br><hr>";
});