Edited at

Zaif取引所(Bitcoin/Monacoin)のAPIをGolangから使う

More than 3 years have passed since last update.

この記事は、2015年のGo Advent Calendarの3日目の記事です。


はじめに


  • zaifが提供しているAPIを使用しています(一部APIにはAPI-Keyが必要となります)

  • ソースはgithub上(コチラ)でも公開しています

  • 特に悪いことはしていないので安心してご使用ください


事前準備

実際に取引をしたい場合はZaifアカウントを作成後、API-Keyを作成しましょう

# zaif-api本体のインストール

go get github.com/yanakend/zaif
# 依存パッケージのインストール
go get github.com/google/go-querystring/query


使用例

package main

import (
"github.com/yanakend/zaif"
"log"
)

func main() {

// PublicAPIはAPI-Key不要
price := zaif.PublicAPI.LastPrice("btc_jpy")
log.Println(price)

// PrivateAPI(取引API)を使用する場合API-Keyが必要
zaifPrivateAPI := zaif.NewPrivateAPI(
"Key",
"Secret-Key",
)
history := zaifPrivateAPI.DepositHistory(zaif_api.BodyDepositHistory{Currency: "jpy", Order: "ASC"})
log.Println(history)
}

※その他ドキュメントはgo docで確認できます(便利!)


TODO


  • websocket-API作成中

  • private-APIのテスト(Mock)

  • Bot作って一儲けする


免責事項


  • いかなる損害やトラブルの責任は一切負いかねますので予めご了承ください


まとめ


  • この程度ならエラーハンドリングにtry-catchなくて不便とか思えず、むしろ無いほうが読みやすい

  • go言語仕様自体はシンプルだが提供しているツール群はかなり強力(run, test, doc, fmt, get, install)

  • API作ったしBotも作りたいけど投資ノウハウないので困ってる。誰か教えてください

  • 今月-2万くらい負けてるので誰かBitcoin/Monacoinください(切実)