DEVGRU

プログラミングと競馬予想について書きます

Zaif の XEM の最小取引量

Zaif でオルトコインとビットコインを用いた裁定取引を試しているんですが、 XEM/BTC と XEM/JPYで最小取引量が異なるようです。

curl https://api.zaif.jp/api/1/currency_pairs/all | jq . | less とかすると、各通貨ペアの最小取引量がでるのですが、 MONAとかBCHとかETHとかはJPY, BTCどちらも同じですが、 XEMだけ異なります。

currency_pairs — Zaif api document v1.1.1 ドキュメント

  {
    "title": "XEM/BTC",
    "aux_japanese": "ビットコイン",
    "id": 5,
    "is_token": false,
    "currency_pair": "xem_btc",
    "aux_unit_step": 1e-08,
    "item_unit_step": 1,
    "item_unit_min": 1,
    "name": "XEM/BTC",
    "item_japanese": "XEM",
    "event_number": 0,
    "seq": 2,
    "aux_unit_min": 1e-08,
    "description": "XEM・ビットコインの取引を行うことができます",
    "aux_unit_point": 8
  },
    {
    "title": "XEM/JPY",
    "aux_japanese": "日本円",
    "id": 4,
    "is_token": false,
    "currency_pair": "xem_jpy",
    "aux_unit_step": 0.0001,
    "item_unit_step": 0.1,
    "item_unit_min": 0.1,
    "name": "XEM/JPY",
    "item_japanese": "XEM",
    "event_number": 0,
    "seq": 1,
    "aux_unit_min": 0.0001,
    "description": "XEM・日本円の取引を行うことができます",
    "aux_unit_point": 4
  },

item_unit_min が、XEM/BTC では1, XEM/JPYでは0.1となっています。

なので、前者では1未満切り捨て、後者では0.1未満切り捨てしないとAPIがエラーを返します。

プログラム組むときは嵌らないようにお気をつけ下さい。