API/coincheck/全取引履歴(PHP)
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
#navi(../)
* coincheckの全取引履歴APIのサンプルコード(PHP) [#g91422c9]
&color(red){当サイトに記載されている会社名、製品名などは...
&color(red){2017/12/19に仕様変更がありましたので記事を修...
取引履歴取得APIの仕様変更について~
https://coincheck.com/blog/4599
----
PHPを使って&htmlinsert(coincheck.html);の[[全取引履歴>htt...
#contents
#htmlinsert(cc-top.html)
* 関連記事 [#sab66530]
-[[API動作環境構築>API/環境構築]]
-[[ティッカー(PHP)>API/coincheck/ティッカー(PHP)]]
-[[全取引履歴(PHP)>API/coincheck/全取引履歴(PHP)]]
-[[板情報(PHP)>API/coincheck/板情報(PHP)]]
-[[レート取得(PHP)>API/coincheck/レート取得(PHP)]]
-[[販売レート取得(PHP)>API/coincheck/販売レート取得(PHP)]]
-[[CoincheckのAPIキー生成手順>API/coincheck/APIキー生成手...
-[[アカウントの残高確認(PHP)>API/coincheck/残高確認(PHP)]]
-[[新規注文・現物売買(PHP)>API/coincheck/新規注文・現物売...
-[[レバレッジアカウントの残高サンプル(PHP)>API/coincheck/...
-[[レバレッジ取引注文サンプルコード(PHP)>API/coincheck/レ...
-[[レバレッジ取引のポジション一覧を取得する・positions(PH...
-[[最近の取引履歴を取得する(PHP)>API/coincheck/最近の取引...
* ブラウザで全取引履歴APIを呼び出してみる [#b1cb6001]
public APIなので&htmlinsert(coincheck.html);に取引口座を...
全取引履歴のAPI仕様(Coincheck APIページから抜粋) ~
https://coincheck.com/ja/documents/exchange/api#public-tr...
全取引履歴
最新の取引履歴を取得できます。
HTTP REQUEST
GET /api/trades
PARAMETERS
*pair 取引ペア。現在は "btc_jpy" のみです。
//全取引履歴APIをいろいろ試してみた結果、100件の情報をも...
//パラメータのoffsetのスキップ数ですが、0〜99まで指定でき...
//99を指定すると、1件のみ取得。offsetを指定しない、または...
//したがって、offsetを指定すると最新から指定した数値分、...
//ただし、残りの取引情報が50件以上の場合は50件まで取得で...
またページネーションパラメータを指定して件数や並び順を指...
ページネーション
coincheckの一部APIではページネーションにてデータを分割し...
PARAMETERS
limit 1ページあたりの取得件数を指定できます。
order "desc", "asc" を指定できます。
starting_after IDを指定すると絞り込みの開始位置を設定で...
ending_before IDを指定すると絞り込みの終了位置を設定でき...
* ブラウザで全取引履歴を取得する [#hf5c60f3]
GETなのでブラウザで全取引履歴を取得することができます。~
以下のようなURLになります。~
https://coincheck.com/api/trades?pair=btc_jpy
50件取得(limit=50)~
https://coincheck.com/api/trades?pair=btc_jpy&limt=50
* ブラウザで全取引履歴APIにアクセスした結果 [#b033ca9d]
以下ブラウザから上記URLにアクセスしたときの出力です。
-Firefox ver56.0~
JSONが整形され表示されています。~
見やすいですね。~
(生データをクリックすると上記同様にJSON形式の返却された文...
#ref(01.png)
-Vivaldi
#ref(02.png)
* PHPで全取引履歴APIを呼び出してみる(サンプルソース) [#e8...
PHPのサンプルソースは以下のようになります。
#ref(trades.php.zip)
<?php
// API doc : https://coincheck.com/ja/documents/exchange...
// API url : https://coincheck.com/api/trades
$coincheck_url = "https://coincheck.com";
$trades_api = "/api/trades";
$url = $coincheck_url . $trades_api;
// arguments -> http query
$options = getopt("l:");
if (!check_arguments($options)) {
usage();
die(1);
}
$http_query = array(
"pair"=>"btc_jpy"
);
foreach ($options as $key => $value) {
if ($key == "l") { $http_query["limit"] = $value...
}
if (count($http_query) > 0) {
$url = $url . "?" . http_build_query($http_query);
}
// proxy settings
$proxy = "";
$proxy_port = "";
$curl = curl_init();
if ($curl == FALSE) {
fputs(STDERR, "[ERR] curl_init(): " . curl_error($cu...
die(1);
}
// curl set options
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
// set proxy server settings
if (!empty($proxy) && !empty($proxy_port)) {
curl_setopt($curl, CURLOPT_HTTPPROXYTUNNEL, 1);
curl_setopt($curl, CURLOPT_PROXY, $proxy . ":" . $pr...
curl_setopt($curl, CURLOPT_PROXYPORT, $proxy_port);
}
// call trades api
$response = curl_exec($curl);
if ($response == FALSE) {
fputs(STDERR, "[ERR] curl_exec(): " . curl_error($cu...
die(1);
}
curl_close($curl);
// json decode
$json_decode = json_decode($response, true);
if ($json_decode == NULL) {
fputs(STDERR, "[ERR] json_decode(): " . json_last_er...
die(1);
}
// output json_decode
print_r($json_decode);
exit(0);
//------------------------------------------------------...
// functions
//------------------------------------------------------...
function check_arguments($options) {
if (array_key_exists("l", $options)) {
if (!ctype_digit($options["l"])) {
return FALSE;
}
}
return TRUE;
}
function usage() {
$usage =
"Uasge: php trades.php [-l limit]" . PHP_EOL .
"Options:" . PHP_EOL .
" -l : limit " . PHP_EOL .
PHP_EOL;
fputs(STDERR, $usage);
}
* 実行例 [#o4aba1fe]
上記のPHPサンプルソースを実行してみます。~
オプション-lにより指定された数分表示します。~
数の範囲は0〜99のようです。
$ php trades.php | head -30
Array
(
[success] => 1
[pagination] => Array
(
[limit] => 10
[order] => desc
[starting_after] =>
[ending_before] =>
)
[data] => Array
(
[0] => Array
(
[id] => 63673299
[amount] => 0.009
[rate] => 2110080
[pair] => btc_jpy
[order_type] => sell
[created_at] => 2017-12-19T15:20:01.0...
)
[1] => Array
(
[id] => 63673298
[amount] => 0.03
[rate] => 2110080
[pair] => btc_jpy
[order_type] => sell
$ php trades.php -l 1
Array
(
[success] => 1
[pagination] => Array
(
[limit] => 1
[order] => desc
[starting_after] =>
[ending_before] =>
)
[data] => Array
(
[0] => Array
(
[id] => 63673728
[amount] => 0.007
[rate] => 2109969
[pair] => btc_jpy
[order_type] => sell
[created_at] => 2017-12-19T15:21:24.0...
)
)
)
BTC/JPYの取引履歴が返却されます。
以上、&htmlinsert(coincheck.html);のpublic APIである全取...
#htmlinsert(cc-btm.html)
終了行:
#navi(../)
* coincheckの全取引履歴APIのサンプルコード(PHP) [#g91422c9]
&color(red){当サイトに記載されている会社名、製品名などは...
&color(red){2017/12/19に仕様変更がありましたので記事を修...
取引履歴取得APIの仕様変更について~
https://coincheck.com/blog/4599
----
PHPを使って&htmlinsert(coincheck.html);の[[全取引履歴>htt...
#contents
#htmlinsert(cc-top.html)
* 関連記事 [#sab66530]
-[[API動作環境構築>API/環境構築]]
-[[ティッカー(PHP)>API/coincheck/ティッカー(PHP)]]
-[[全取引履歴(PHP)>API/coincheck/全取引履歴(PHP)]]
-[[板情報(PHP)>API/coincheck/板情報(PHP)]]
-[[レート取得(PHP)>API/coincheck/レート取得(PHP)]]
-[[販売レート取得(PHP)>API/coincheck/販売レート取得(PHP)]]
-[[CoincheckのAPIキー生成手順>API/coincheck/APIキー生成手...
-[[アカウントの残高確認(PHP)>API/coincheck/残高確認(PHP)]]
-[[新規注文・現物売買(PHP)>API/coincheck/新規注文・現物売...
-[[レバレッジアカウントの残高サンプル(PHP)>API/coincheck/...
-[[レバレッジ取引注文サンプルコード(PHP)>API/coincheck/レ...
-[[レバレッジ取引のポジション一覧を取得する・positions(PH...
-[[最近の取引履歴を取得する(PHP)>API/coincheck/最近の取引...
* ブラウザで全取引履歴APIを呼び出してみる [#b1cb6001]
public APIなので&htmlinsert(coincheck.html);に取引口座を...
全取引履歴のAPI仕様(Coincheck APIページから抜粋) ~
https://coincheck.com/ja/documents/exchange/api#public-tr...
全取引履歴
最新の取引履歴を取得できます。
HTTP REQUEST
GET /api/trades
PARAMETERS
*pair 取引ペア。現在は "btc_jpy" のみです。
//全取引履歴APIをいろいろ試してみた結果、100件の情報をも...
//パラメータのoffsetのスキップ数ですが、0〜99まで指定でき...
//99を指定すると、1件のみ取得。offsetを指定しない、または...
//したがって、offsetを指定すると最新から指定した数値分、...
//ただし、残りの取引情報が50件以上の場合は50件まで取得で...
またページネーションパラメータを指定して件数や並び順を指...
ページネーション
coincheckの一部APIではページネーションにてデータを分割し...
PARAMETERS
limit 1ページあたりの取得件数を指定できます。
order "desc", "asc" を指定できます。
starting_after IDを指定すると絞り込みの開始位置を設定で...
ending_before IDを指定すると絞り込みの終了位置を設定でき...
* ブラウザで全取引履歴を取得する [#hf5c60f3]
GETなのでブラウザで全取引履歴を取得することができます。~
以下のようなURLになります。~
https://coincheck.com/api/trades?pair=btc_jpy
50件取得(limit=50)~
https://coincheck.com/api/trades?pair=btc_jpy&limt=50
* ブラウザで全取引履歴APIにアクセスした結果 [#b033ca9d]
以下ブラウザから上記URLにアクセスしたときの出力です。
-Firefox ver56.0~
JSONが整形され表示されています。~
見やすいですね。~
(生データをクリックすると上記同様にJSON形式の返却された文...
#ref(01.png)
-Vivaldi
#ref(02.png)
* PHPで全取引履歴APIを呼び出してみる(サンプルソース) [#e8...
PHPのサンプルソースは以下のようになります。
#ref(trades.php.zip)
<?php
// API doc : https://coincheck.com/ja/documents/exchange...
// API url : https://coincheck.com/api/trades
$coincheck_url = "https://coincheck.com";
$trades_api = "/api/trades";
$url = $coincheck_url . $trades_api;
// arguments -> http query
$options = getopt("l:");
if (!check_arguments($options)) {
usage();
die(1);
}
$http_query = array(
"pair"=>"btc_jpy"
);
foreach ($options as $key => $value) {
if ($key == "l") { $http_query["limit"] = $value...
}
if (count($http_query) > 0) {
$url = $url . "?" . http_build_query($http_query);
}
// proxy settings
$proxy = "";
$proxy_port = "";
$curl = curl_init();
if ($curl == FALSE) {
fputs(STDERR, "[ERR] curl_init(): " . curl_error($cu...
die(1);
}
// curl set options
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
// set proxy server settings
if (!empty($proxy) && !empty($proxy_port)) {
curl_setopt($curl, CURLOPT_HTTPPROXYTUNNEL, 1);
curl_setopt($curl, CURLOPT_PROXY, $proxy . ":" . $pr...
curl_setopt($curl, CURLOPT_PROXYPORT, $proxy_port);
}
// call trades api
$response = curl_exec($curl);
if ($response == FALSE) {
fputs(STDERR, "[ERR] curl_exec(): " . curl_error($cu...
die(1);
}
curl_close($curl);
// json decode
$json_decode = json_decode($response, true);
if ($json_decode == NULL) {
fputs(STDERR, "[ERR] json_decode(): " . json_last_er...
die(1);
}
// output json_decode
print_r($json_decode);
exit(0);
//------------------------------------------------------...
// functions
//------------------------------------------------------...
function check_arguments($options) {
if (array_key_exists("l", $options)) {
if (!ctype_digit($options["l"])) {
return FALSE;
}
}
return TRUE;
}
function usage() {
$usage =
"Uasge: php trades.php [-l limit]" . PHP_EOL .
"Options:" . PHP_EOL .
" -l : limit " . PHP_EOL .
PHP_EOL;
fputs(STDERR, $usage);
}
* 実行例 [#o4aba1fe]
上記のPHPサンプルソースを実行してみます。~
オプション-lにより指定された数分表示します。~
数の範囲は0〜99のようです。
$ php trades.php | head -30
Array
(
[success] => 1
[pagination] => Array
(
[limit] => 10
[order] => desc
[starting_after] =>
[ending_before] =>
)
[data] => Array
(
[0] => Array
(
[id] => 63673299
[amount] => 0.009
[rate] => 2110080
[pair] => btc_jpy
[order_type] => sell
[created_at] => 2017-12-19T15:20:01.0...
)
[1] => Array
(
[id] => 63673298
[amount] => 0.03
[rate] => 2110080
[pair] => btc_jpy
[order_type] => sell
$ php trades.php -l 1
Array
(
[success] => 1
[pagination] => Array
(
[limit] => 1
[order] => desc
[starting_after] =>
[ending_before] =>
)
[data] => Array
(
[0] => Array
(
[id] => 63673728
[amount] => 0.007
[rate] => 2109969
[pair] => btc_jpy
[order_type] => sell
[created_at] => 2017-12-19T15:21:24.0...
)
)
)
BTC/JPYの取引履歴が返却されます。
以上、&htmlinsert(coincheck.html);のpublic APIである全取...
#htmlinsert(cc-btm.html)
ページ名: