生涯未熟

プログラミングをちょこちょこと。

仮想通貨マネージメントツールを作りたい人生だった

アイスタイルアドベントカレンダー19日目です。

皆さん、仮想通貨好きですか?
僕は大好きです。お金が勝手に増えるから

はい。

仮想通貨を買ってしまうと毎日チャートが気になってしまうことでしょう。
しかし大っぴらに見ていると怒られるかもしれません。
そこで作りました。

github.com

なにこれ?

仮想通貨マネージメントツールです。

イメージこんなんです。

f:id:syossan:20171218170839p:plain

何が出来るんです?

各取引所に存在する仮想通貨の値段が分かります。
あと所有している仮想通貨の枚数も分かります。

買い注文、売り注文も指値注文も逆指値注文も出来る予定でした。
これらは今のところ無です。

技術的に頼む

Goで作りました。
TUI部分はTermboxを使ってます。便利です。

仮想通貨に関する部分は取引所が提供しているAPIを叩きました。
今回は時間の関係上、coincheckのみ対応しています。

Termboxについて

Termboxは便利です。別のアドベントカレンダーの記事でも書いたのですが、有名なpecoとかはこれを使って書かれています。
普通の標準出力や対話形式のCUIツール作りに飽きた方は、手を出してみると良いでしょう。

はじめはとっつきにくいのですが、豊富にデモがあるので困ったときは覗いてみると参考になります。

ゲームとかコントローラブルな部分を非同期で作りたい方は、この辺が参考になると思います。

APIについて

今回はcoincheckのAPIを叩きました。
ただ、このcoincheckのAPI、まだまだ使えない感じです。

使えないポイント

  • 注文、購入・売却レートなどが使えるのがBTCのみ
  • APIアクセスキーの登録が何故かエラーで返ってくるが、リロードすると登録されている。
  • 何故かAPI Access Limitが設定されていない。(無尽蔵に叩かれたら鯖が虚無になると思うんですがそれは

はい。
特に今回は注文、購入・売却レートなど使えるのがBTCのみと知ったのが、実装途中のタイミングだったので完全に完全でした。
他の主要な取引所(bitflyer、zaifなど)はBTC以外も使えるので、coincheckの中の人は早く対応して下さい。お願いします。

また、不思議な挙動としてAPIアクセスキーを登録すると必ず「登録エラー」で返ってきます。
リロードすると登録されているが、Permissionが全てOFFの状態で登録されるのでつらい。

最後に、APIのLimitが無いのは大丈夫なんでしょうか?とても心配になります。

使いたい人へ

僕自身も使いたいツールなので、ちょっと他の取引所対応を進めていきます。
最終的に各々のサイトへ行って、注文等行うという面倒なことをこれ一つで賄えるとGoodですね。

応援したい方はPRを送るか、BTCを僕に送金して下さい。お願いします。
12MFcHSoWd7zZfFLVCiQihWsDVyo8mF2Np

また、AccessKeyとAccessSecretについてはコードから省いているので、各位はAPIキー登録してなんとかコードに埋め込んでやってください。

まとめ

仮想通貨は色々言われてますが、エンジニアリング的には堀り甲斐があるので、暇な方は論文とか漁ってみるといいでしょう。
マイニング関係の技術掘ってくと楽しいです。(採掘機とハッシュアルゴリズムのイタチごっことか

19日目の成果としては以上です。