API/CoinExchange.io/指定した通貨ペアの売買注文一覧の取得・getorderbook(PowerShell)
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
#navi(../)
* PowerShellで指定した通貨ペアの売買注文一覧を取得する・g...
getorderbook APIは、market_id(通貨ペア)を指定することによ...
MarketIDの一覧は getmarkets APIで取得できます。
以下、getorderbook APIのPowerShellによる操作例を記します。
----
&htmlinsert(coinexchange.io.html);へのリンク~
#htmlinsert(coinexchange.io.logo.html)
----
#contents
*追記 [#e1f5233b]
-2018/7/5~
''「サーバーによってプロトコル違反が発生しました. Section...
が出力されるようであれば、以下リンク記事を参考にしてくだ...
-[[Section=ResponseHeader Detail=CR の後には LF...の対処...
* 関連資料・記事 [#qba74c6c]
-[[CoinExchange.io API v1 Reference>http://coinexchangeio...
-[[マーケット一覧情報取得・getmarkets(PowerShell)>API/Coi...
-[[マーケットサマリ情報取得・getmarketsummaries(PowerShel...
-[[指定した通貨ペアのマーケットサマリ情報を取得・getmarke...
-[[MarketID一覧情報を取得する>API/CoinExchange.io/MarketI...
-[[仮想通貨一覧を取得・getcurrencies>API/CoinExchange.io/...
-[[指定した通貨の通貨情報を取得する・getcurrency>API/Coin...
-[[指定した通貨ペアの売買注文一覧を取得する・getorderbook...
* getorderbook APIをブラウザでアクセスしてみる [#naa2d6c5]
以下のURLは、XSH/DOGEペアのサマリが表示されます。(2018/7/...
- https://www.coinexchange.io/api/v1/getorderbook?market_...
#ref(01.png)
#br
- market_idを指定しないとエラーとなります。
#ref(02.png)
* getorderbookの仕様 [#ja596691]
以下、[[CoinExchange.io API v1 Reference>http://coinexcha...
Get Order Book
This endpoint retrieves the top 50 buy and sell order f...
HTTP Request
GET https://www.coinexchange.io/api/v1/getorderbook?mar...
Query Parameters
Parameter Type Description
market_id string Determines which market summary data...
'getorderbook’ JSON return:
{
"success": "1",
"request": "/api/v1/public/getorderbook",
"message": "",
"result":
{
"SellOrders": [
{
"Type": "sell",
"Price": "0.00928729",
"OrderTime": "2016-02-12 03:43:53",
"Quantity": "37.04860800"
},
{
"Type": "sell",
"Price": "0.00943025",
"OrderTime": "2016-02-12 03:20:20",
"Quantity": "37.98811700"
},
{
"Type": "sell",
"Price": "0.00946113",
"OrderTime": "2016-02-12 03:13:08",
"Quantity": "61.29427500"
}
],
"BuyOrders": [
{
"Type": "buy",
"Price": "0.00855383",
"OrderTime": "2016-02-12 03:35:51",
"Quantity": "907.10057100"
},
{
"Type": "buy",
"Price": "0.00853751",
"OrderTime": "2016-02-12 03:18:00",
"Quantity": "86921.80244318"
},
{
"Type": "buy",
"Price": "0.00853596",
"OrderTime": "2016-02-11 18:08:49",
"Quantity": "487.45194800"
}
]
}
* market_idを取得する。 [#u9821ecb]
getorderbook APIにはmarket_idにMarketIDを指定しないと動作...
このMarketIDの一覧は getmarkets APIで取得できます。~
以下、実際に取得する手順を記します。~
-getmarkets APIに関しては以下の記事を参考にしてください。~
[[マーケット一覧情報取得・getmarkets(PowerShell)>API/Coin...
-MarketID一覧をCSV形式で取得したい場合は、以下の記事を参...
[[MarketID一覧情報を取得する>API/CoinExchange.io/MarketID...
+ PowerSehllを起動します。~
+セキュリティプロトコルをTLS1.2に指定します。 ~
PS C:\> [Net.ServicePointManager]::SecurityProtocol = [N...
+market_id一覧を取得します。
PS C:\> $getmarkets_url = "https://www.coinexchange.io/a...
PS C:\> $markets = Invoke-RestMethod -UseBasicParsing $g...
+ 変数$marketsにgetmarkets APIが返却した内容が格納されて...
PS C:\> $markets
success request message result
------- ------- ------- ------
1 /api/v1/getmarkets {@{MarketID=18; Marke...
PS C:\> $markets.result.Count
846
849個の情報が格納されているのが確認できます。~
#br
一番最初の配列に格納されている情報を表示してみます。
PS C:\> $markets.result[0]
MarketID : 18
MarketAssetName : Litecoin
MarketAssetCode : LTC
MarketAssetID : 2
MarketAssetType : currency
BaseCurrency : Bitcoin
BaseCurrencyCode : BTC
BaseCurrencyID : 1
Active : True
#br
先頭から10行表示してみます。
PS C:\> $markets.result | Format-Table | Select-Object -...
MarketID MarketAssetName MarketAssetCode ...
-------- --------------- --------------- ...
18 Litecoin LTC ...
19 Unobtanium UNO ...
20 Syscoin SYS ...
21 Dogecoin DOGE ...
22 Kobocoin KOBO ...
23 Bitz BITZ ...
24 Digitalcoin DGC ...
25 Megacoin MEC ...
#br
一番左側にMarketIDが表示されています。~
実際に、XVG(Verge)通貨ペアのMarketIDを検索した例が以下で...
PS C:\> $markets.result | Format-Table | Out-String -Str...
791 Verge XVG 589 ...
792 Verge XVG 589 ...
793 Verge XVG 589 ...
794 Verge XVG 589 ...
以下、MarketID=791, XVG/BTCを対象にして記します。
MarketID一覧をCSV形式で取得したい場合は、以下の記事を参考...
[[MarketID一覧情報を取得する>API/CoinExchange.io/MarketID...
* getorderbook APIをPowerShellから操作する [#d034ca2e]
上記では、XVGのMarketID(market_id)を取得しました。~
以下、XVG/BTC(market_id = 791)を使用して売買取引一覧を取...
+セキュリティプロトコルをTLS1.2に指定します。 ~
[Net.ServicePointManager]::SecurityProtocol = [Net.Secur...
+orderbook APIのURLおよびmarket_idを設定します。
$orderbook_url = "https://www.coinexchange.io/api/v1/get...
$market_id = 791
+ getorderbook APIを呼び出します。
$orderbook = Invoke-RestMethod -UseBasicParsing "${order...
+ 上記の構文を実行してみます。
PS C:\> [Net.ServicePointManager]::SecurityProtocol = [N...
PS C:\> $orderbook_url = "https://www.coinexchange.io/ap...
PS C:\> $market_id = 791
PS C:\> $orderbook = Invoke-RestMethod -UseBasicParsing ...
PS C:\> $orderbook
success request message result
------- ------- ------- ------
1 /api/v1/public/getorderbook @{SellOrders...
+ sell, buyの上位10行を表示してみます。
PS C:\> $orderbook.result.SellOrders | Select-Object -Fi...
Type Price OrderTime Quantity
---- ----- --------- --------
sell 0.00000405 2018-07-05 00:21:46 2491.19484204
sell 0.00000408 2018-07-05 00:02:31 302.90000000
sell 0.00000410 2018-07-04 23:44:47 6000.00000000
sell 0.00000413 2018-07-04 21:54:40 16.96901446
sell 0.00000413 2018-07-05 00:01:58 5000.00000000
sell 0.00000414 2018-07-04 06:21:53 10000.00000000
sell 0.00000420 2018-07-03 23:44:11 896.08864378
sell 0.00000420 2018-07-04 22:33:22 2621.55388471
sell 0.00000422 2018-07-04 04:03:53 100.00000000
sell 0.00000422 2018-07-04 07:24:15 100.00000000
#br
PS C:\> $orderbook.result.BuyOrders | Select-Object -Fir...
Type Price OrderTime Quantity
---- ----- --------- --------
buy 0.00000395 2018-07-05 01:09:02 3687.49083418
buy 0.00000394 2018-07-05 00:09:24 380.25617005
buy 0.00000394 2018-07-05 00:18:18 3389.81976523
buy 0.00000394 2018-07-05 00:55:55 2533.72922970
buy 0.00000391 2018-07-05 00:47:41 1639.41443734
buy 0.00000389 2018-07-04 16:06:43 1135.11833548
buy 0.00000385 2018-07-05 00:43:20 2556.79145714
buy 0.00000384 2018-07-03 11:05:33 4389.48229167
buy 0.00000380 2018-07-04 04:54:14 1338.00000000
buy 0.00000380 2018-07-04 13:49:49 292.32401316
* HTTPステータスなどを一緒に取得したい場合はInvoke-WebReq...
上記では、Invoke-RestMethodにてJSONをPowerShellで扱いやす...
Webサーバから返却された値を変換せずに取得したい場合は、In...
また、取得後にJSONをPowerShellで扱いやすいオブジェクトに...
以下に実行例を記します。
+ Invoke-WebRequestコマンドレットでAPIを呼び出し、情報を...
PS C:\> [Net.ServicePointManager]::SecurityProtocol = [N...
PS C:\> $orderbook_url = "https://www.coinexchange.io/ap...
PS C:\> $market_id = 791
PS C:\> $response = Invoke-WebRequest -UseBasicParsing "...
PS C:\> $response
StatusCode : 200
StatusDescription : OK
Content : {"success":"1","request":"\/api\/v1\...
46","Quantity":"2491.19484204"},{"Ty...
RawContent : HTTP/1.1 200 OK
Transfer-Encoding: chunked
Connection: keep-alive
x-frame-options: SAMEORIGIN
Cache-Control: no-cache
Content-Type: application/json
Date: Thu, 05 Jul 2018 01:19:11 GMT
Set-Cook...
Forms :
Headers : {[Transfer-Encoding, chunked], [Conn...
Images : {}
InputFields : {}
Links : {}
ParsedHtml :
RawContentLength : 9794
+ 各種HTTPの情報が簡単に取得できます。
PS C:\> $response.StatusCode
200
PS C:\> $response.Headers.'Content-Type'
application/json
+ConvertFrom-Jsonを使うとContentの内容をInvoke-RestMethod...
PS C:\> $json = ConvertFrom-Json($response.Content)
PS C:\> $json
success request message result
------- ------- ------- ------
1 /api/v1/public/getorderbook @{SellOrders...
PS C:\> $json.result
SellOrders
----------
{@{Type=sell; Price=0.00000405; OrderTime=2018-07-05 00:...
* Webの応答を読み取っています。(Waiting for response)を非...
上記のコマンドレットを実行すると、APIサーバとのやり取りの...
#ref(03.png)
これを非表示にしたい場合は、以下のようにしてください。
非表示にするには、$ProgressPreferenceにSilentlyContinueを...
変更前は以下のように Continue が設定されています。
PS C:\> $ProgressPreference
Continue
非表示にするには、以下のように変更します。
PS C:\> $ProgressPreference = "SilentlyContinue"
以上、PowerShellを使って、&htmlinsert(coinexchange.io.htm...
売買一覧情報を取得する操作例でした。
----
&htmlinsert(coinexchange.io.html);へのリンク~
#htmlinsert(coinexchange.io.logo.html)
終了行:
#navi(../)
* PowerShellで指定した通貨ペアの売買注文一覧を取得する・g...
getorderbook APIは、market_id(通貨ペア)を指定することによ...
MarketIDの一覧は getmarkets APIで取得できます。
以下、getorderbook APIのPowerShellによる操作例を記します。
----
&htmlinsert(coinexchange.io.html);へのリンク~
#htmlinsert(coinexchange.io.logo.html)
----
#contents
*追記 [#e1f5233b]
-2018/7/5~
''「サーバーによってプロトコル違反が発生しました. Section...
が出力されるようであれば、以下リンク記事を参考にしてくだ...
-[[Section=ResponseHeader Detail=CR の後には LF...の対処...
* 関連資料・記事 [#qba74c6c]
-[[CoinExchange.io API v1 Reference>http://coinexchangeio...
-[[マーケット一覧情報取得・getmarkets(PowerShell)>API/Coi...
-[[マーケットサマリ情報取得・getmarketsummaries(PowerShel...
-[[指定した通貨ペアのマーケットサマリ情報を取得・getmarke...
-[[MarketID一覧情報を取得する>API/CoinExchange.io/MarketI...
-[[仮想通貨一覧を取得・getcurrencies>API/CoinExchange.io/...
-[[指定した通貨の通貨情報を取得する・getcurrency>API/Coin...
-[[指定した通貨ペアの売買注文一覧を取得する・getorderbook...
* getorderbook APIをブラウザでアクセスしてみる [#naa2d6c5]
以下のURLは、XSH/DOGEペアのサマリが表示されます。(2018/7/...
- https://www.coinexchange.io/api/v1/getorderbook?market_...
#ref(01.png)
#br
- market_idを指定しないとエラーとなります。
#ref(02.png)
* getorderbookの仕様 [#ja596691]
以下、[[CoinExchange.io API v1 Reference>http://coinexcha...
Get Order Book
This endpoint retrieves the top 50 buy and sell order f...
HTTP Request
GET https://www.coinexchange.io/api/v1/getorderbook?mar...
Query Parameters
Parameter Type Description
market_id string Determines which market summary data...
'getorderbook’ JSON return:
{
"success": "1",
"request": "/api/v1/public/getorderbook",
"message": "",
"result":
{
"SellOrders": [
{
"Type": "sell",
"Price": "0.00928729",
"OrderTime": "2016-02-12 03:43:53",
"Quantity": "37.04860800"
},
{
"Type": "sell",
"Price": "0.00943025",
"OrderTime": "2016-02-12 03:20:20",
"Quantity": "37.98811700"
},
{
"Type": "sell",
"Price": "0.00946113",
"OrderTime": "2016-02-12 03:13:08",
"Quantity": "61.29427500"
}
],
"BuyOrders": [
{
"Type": "buy",
"Price": "0.00855383",
"OrderTime": "2016-02-12 03:35:51",
"Quantity": "907.10057100"
},
{
"Type": "buy",
"Price": "0.00853751",
"OrderTime": "2016-02-12 03:18:00",
"Quantity": "86921.80244318"
},
{
"Type": "buy",
"Price": "0.00853596",
"OrderTime": "2016-02-11 18:08:49",
"Quantity": "487.45194800"
}
]
}
* market_idを取得する。 [#u9821ecb]
getorderbook APIにはmarket_idにMarketIDを指定しないと動作...
このMarketIDの一覧は getmarkets APIで取得できます。~
以下、実際に取得する手順を記します。~
-getmarkets APIに関しては以下の記事を参考にしてください。~
[[マーケット一覧情報取得・getmarkets(PowerShell)>API/Coin...
-MarketID一覧をCSV形式で取得したい場合は、以下の記事を参...
[[MarketID一覧情報を取得する>API/CoinExchange.io/MarketID...
+ PowerSehllを起動します。~
+セキュリティプロトコルをTLS1.2に指定します。 ~
PS C:\> [Net.ServicePointManager]::SecurityProtocol = [N...
+market_id一覧を取得します。
PS C:\> $getmarkets_url = "https://www.coinexchange.io/a...
PS C:\> $markets = Invoke-RestMethod -UseBasicParsing $g...
+ 変数$marketsにgetmarkets APIが返却した内容が格納されて...
PS C:\> $markets
success request message result
------- ------- ------- ------
1 /api/v1/getmarkets {@{MarketID=18; Marke...
PS C:\> $markets.result.Count
846
849個の情報が格納されているのが確認できます。~
#br
一番最初の配列に格納されている情報を表示してみます。
PS C:\> $markets.result[0]
MarketID : 18
MarketAssetName : Litecoin
MarketAssetCode : LTC
MarketAssetID : 2
MarketAssetType : currency
BaseCurrency : Bitcoin
BaseCurrencyCode : BTC
BaseCurrencyID : 1
Active : True
#br
先頭から10行表示してみます。
PS C:\> $markets.result | Format-Table | Select-Object -...
MarketID MarketAssetName MarketAssetCode ...
-------- --------------- --------------- ...
18 Litecoin LTC ...
19 Unobtanium UNO ...
20 Syscoin SYS ...
21 Dogecoin DOGE ...
22 Kobocoin KOBO ...
23 Bitz BITZ ...
24 Digitalcoin DGC ...
25 Megacoin MEC ...
#br
一番左側にMarketIDが表示されています。~
実際に、XVG(Verge)通貨ペアのMarketIDを検索した例が以下で...
PS C:\> $markets.result | Format-Table | Out-String -Str...
791 Verge XVG 589 ...
792 Verge XVG 589 ...
793 Verge XVG 589 ...
794 Verge XVG 589 ...
以下、MarketID=791, XVG/BTCを対象にして記します。
MarketID一覧をCSV形式で取得したい場合は、以下の記事を参考...
[[MarketID一覧情報を取得する>API/CoinExchange.io/MarketID...
* getorderbook APIをPowerShellから操作する [#d034ca2e]
上記では、XVGのMarketID(market_id)を取得しました。~
以下、XVG/BTC(market_id = 791)を使用して売買取引一覧を取...
+セキュリティプロトコルをTLS1.2に指定します。 ~
[Net.ServicePointManager]::SecurityProtocol = [Net.Secur...
+orderbook APIのURLおよびmarket_idを設定します。
$orderbook_url = "https://www.coinexchange.io/api/v1/get...
$market_id = 791
+ getorderbook APIを呼び出します。
$orderbook = Invoke-RestMethod -UseBasicParsing "${order...
+ 上記の構文を実行してみます。
PS C:\> [Net.ServicePointManager]::SecurityProtocol = [N...
PS C:\> $orderbook_url = "https://www.coinexchange.io/ap...
PS C:\> $market_id = 791
PS C:\> $orderbook = Invoke-RestMethod -UseBasicParsing ...
PS C:\> $orderbook
success request message result
------- ------- ------- ------
1 /api/v1/public/getorderbook @{SellOrders...
+ sell, buyの上位10行を表示してみます。
PS C:\> $orderbook.result.SellOrders | Select-Object -Fi...
Type Price OrderTime Quantity
---- ----- --------- --------
sell 0.00000405 2018-07-05 00:21:46 2491.19484204
sell 0.00000408 2018-07-05 00:02:31 302.90000000
sell 0.00000410 2018-07-04 23:44:47 6000.00000000
sell 0.00000413 2018-07-04 21:54:40 16.96901446
sell 0.00000413 2018-07-05 00:01:58 5000.00000000
sell 0.00000414 2018-07-04 06:21:53 10000.00000000
sell 0.00000420 2018-07-03 23:44:11 896.08864378
sell 0.00000420 2018-07-04 22:33:22 2621.55388471
sell 0.00000422 2018-07-04 04:03:53 100.00000000
sell 0.00000422 2018-07-04 07:24:15 100.00000000
#br
PS C:\> $orderbook.result.BuyOrders | Select-Object -Fir...
Type Price OrderTime Quantity
---- ----- --------- --------
buy 0.00000395 2018-07-05 01:09:02 3687.49083418
buy 0.00000394 2018-07-05 00:09:24 380.25617005
buy 0.00000394 2018-07-05 00:18:18 3389.81976523
buy 0.00000394 2018-07-05 00:55:55 2533.72922970
buy 0.00000391 2018-07-05 00:47:41 1639.41443734
buy 0.00000389 2018-07-04 16:06:43 1135.11833548
buy 0.00000385 2018-07-05 00:43:20 2556.79145714
buy 0.00000384 2018-07-03 11:05:33 4389.48229167
buy 0.00000380 2018-07-04 04:54:14 1338.00000000
buy 0.00000380 2018-07-04 13:49:49 292.32401316
* HTTPステータスなどを一緒に取得したい場合はInvoke-WebReq...
上記では、Invoke-RestMethodにてJSONをPowerShellで扱いやす...
Webサーバから返却された値を変換せずに取得したい場合は、In...
また、取得後にJSONをPowerShellで扱いやすいオブジェクトに...
以下に実行例を記します。
+ Invoke-WebRequestコマンドレットでAPIを呼び出し、情報を...
PS C:\> [Net.ServicePointManager]::SecurityProtocol = [N...
PS C:\> $orderbook_url = "https://www.coinexchange.io/ap...
PS C:\> $market_id = 791
PS C:\> $response = Invoke-WebRequest -UseBasicParsing "...
PS C:\> $response
StatusCode : 200
StatusDescription : OK
Content : {"success":"1","request":"\/api\/v1\...
46","Quantity":"2491.19484204"},{"Ty...
RawContent : HTTP/1.1 200 OK
Transfer-Encoding: chunked
Connection: keep-alive
x-frame-options: SAMEORIGIN
Cache-Control: no-cache
Content-Type: application/json
Date: Thu, 05 Jul 2018 01:19:11 GMT
Set-Cook...
Forms :
Headers : {[Transfer-Encoding, chunked], [Conn...
Images : {}
InputFields : {}
Links : {}
ParsedHtml :
RawContentLength : 9794
+ 各種HTTPの情報が簡単に取得できます。
PS C:\> $response.StatusCode
200
PS C:\> $response.Headers.'Content-Type'
application/json
+ConvertFrom-Jsonを使うとContentの内容をInvoke-RestMethod...
PS C:\> $json = ConvertFrom-Json($response.Content)
PS C:\> $json
success request message result
------- ------- ------- ------
1 /api/v1/public/getorderbook @{SellOrders...
PS C:\> $json.result
SellOrders
----------
{@{Type=sell; Price=0.00000405; OrderTime=2018-07-05 00:...
* Webの応答を読み取っています。(Waiting for response)を非...
上記のコマンドレットを実行すると、APIサーバとのやり取りの...
#ref(03.png)
これを非表示にしたい場合は、以下のようにしてください。
非表示にするには、$ProgressPreferenceにSilentlyContinueを...
変更前は以下のように Continue が設定されています。
PS C:\> $ProgressPreference
Continue
非表示にするには、以下のように変更します。
PS C:\> $ProgressPreference = "SilentlyContinue"
以上、PowerShellを使って、&htmlinsert(coinexchange.io.htm...
売買一覧情報を取得する操作例でした。
----
&htmlinsert(coinexchange.io.html);へのリンク~
#htmlinsert(coinexchange.io.logo.html)
ページ名: