このエントリーをはてなブックマークに追加


Coincheck最近の取引履歴を取得するサンプルコード(PHP)

PHPを使って Coincheck 最近の取引履歴を取得するPHPサンプルコードおよび実行結果を以下に記します。


当サイトに記載されている会社名、製品名などは一般に各社または団体の商標または登録商標です。
当サイトの資料により直接的および間接的障害が生じても一切責任を負いません。
あらかじめご了承ください。



スポンサーリンク

関連記事

取引履歴APIの仕様

取引履歴APIはPrivate APIのため、 Coincheck の口座開設が必要となります。

取引履歴APIの仕様(Coincheck APIページから抜粋)
https://coincheck.com/ja/documents/exchange/api#order-transactions

取引履歴
自分の最近の取引履歴を参照できます。

HTTP REQUEST
GET /api/exchange/orders/transactions
<省略>
RESPONSE ITEMS
id ID
order_id 注文のID
created_at 取引が行われた時間
funds 各残高の増減分
pair 取引ペア
rate 約定価格
fee_currency 手数料の通貨
fee 発生した手数料
liquidity "T" ( Taker ) or "M" ( Maker )
side "sell" or "buy"

取引履歴APIサンプルソースを使用する前の準備

本サンプルソースには、$ACCESS_KEY, $SECRET_ACCESS_KEY にAPIキーを設定していません。
APIキーを準備してください。

// Please set ACCESS_KEY and SECRET_ACCESS_KEY
$ACCESS_KEY = "";
$SECRET_ACCESS_KEY = "";

APIキーの作成に関しては以下の記事を参考にしてください。

本サンプルコードを実行するには、APIキーのパーミッションとして「取引履歴」にチェックが必要です。

01.png
 

APIキーを作成すると、以下のスクリーンショットのように「アクセスキー」「アクセスシークレットキー」が作成されるので、
サンプルソースの $ACCESS_KEY, $SECRET_ACCESS_KEY に設定してください。

02.png
 

取引履歴を取得するPHPサンプルコード

以下に取引履歴を取得するPHPサンプルコードを記します。

<?php
// API doc : https://coincheck.com/ja/documents/exchange/api#order-transactions
// API url : https://coincheck.com/api/exchange/orders/transactions

// Please set ACCESS_KEY and SECRET_ACCESS_KEY
$ACCESS_KEY = "";
$SECRET_ACCESS_KEY = "";

// coincheck transactions api url
$url =  "https://coincheck.com/api/exchange/orders/transactions";

// proxy settings
$proxy      = ""; 
$proxy_port = ""; 

// create signature
$nonce = time();
$message = $nonce . $url;
$signature = hash_hmac("sha256", $message, $SECRET_ACCESS_KEY);

// header
$headers = array(
    "ACCESS-KEY: {$ACCESS_KEY}",
    "ACCESS-SIGNATURE: {$signature}",
    "ACCESS-NONCE: {$nonce}",
    );

$curl = curl_init();
if ($curl == FALSE) {
    fputs(STDERR, "[ERR] curl_init(): " . curl_error($curl) . PHP_EOL);
    die(1);
}
// set proxy server settings
if (!empty($proxy) && !empty($proxy_port)) {
    curl_setopt($curl, CURLOPT_HTTPPROXYTUNNEL, 1); 
    curl_setopt($curl, CURLOPT_PROXY, $proxy . ":" . $proxy_port);
    curl_setopt($curl, CURLOPT_PROXYPORT, $proxy_port);
}
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);

$response = curl_exec($curl);
if ($response == FALSE) {
    fputs(STDERR, "[ERR] curl_exec(): " . curl_error($curl) . PHP_EOL);
    die(1);
}
curl_close($curl);

// json decode
$json_decode = json_decode($response, true);
if ($json_decode == NULL) {
    fputs(STDERR, "[ERR] json_decode(): " . json_last_error_msg() . PHP_EOL);
    die(1);
}

// output json_decode
print_r($json_decode);

exit(0);

サンプルコードの使い方

以下のように実行します。オプションはありません。

php transactions.php

サンプルコード実行例

直近の50件の取引履歴が出力されるようです。

$ php transactions.php
Array
(
   [success] => 1
   [transactions] => Array
       (
           [0] => Array
               (
                   [id] => 123456789
                   [order_id] => 123456789
                   [created_at] => 2018-01-12T01:11:22.000Z
                   [funds] => Array
                       (
                           [btc] => 0.006
                           [jpy] => -9750.0
                       )

                   [pair] => btc_jpy
                   [rate] => 1625000.0
                   [fee_currency] => 
                   [fee] => 0.0
                   [liquidity] => T
                   [side] => buy
               )

           [1] => Array
               (
                   [id] => 123456790
                   [order_id] => 123456790
                   [created_at] => 2018-01-12T01:11:04.000Z
                   [funds] => Array
                       (
                           [btc] => -0.006
                           [jpy] => 9727.824
                       )

                   [pair] => btc_jpy
                   [rate] => 1621304.0
                   [fee_currency] => 
                   [fee] => 0.0
                   [liquidity] => T
                   [side] => sell
               )
<省略>

以上、Coincheckのtransactions APIを使って取引履歴を取得するサンプルコードの紹介でした。


スポンサーリンク

添付ファイル: file02.png 350件 [詳細] filesrc.zip 331件 [詳細] file01.png 391件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-01-14 (日) 13:54:58