仮想通貨XRP裁定取引システム(ver 1.0)

# 裁定取引とは
裁定取引（アービトラージ）とは、同一の価値を持つ商品の一時的な価格差（歪み）が生じた際に、割高なほうを売り、割安なほうを買い、その後、両者の価格差が縮小した時点でそれぞれの反対売買を行うことで利益を獲得しようとする取引のこと。この取引を行うには常に価格を監視し高い精度とスピードで判定から注文までを行わなければならず、個人のレベルでは困難とされており、機関投資家はこの取引を『プログラム売買』でおこなっています。
![arbitrage_sample2.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/6d07c66e-36e6-a5af-95db-36d0df5d21ef.jpeg)

# 仮想通貨XRPとは
XRPはリップル社の開発する国内外の送金を高スピード低コストで行うネットワークプロジェクト「リップル」の中で利用される仮想通貨です。
ネットワークの中でXRPという通貨を用いる事で従来の送金システムよりもスムーズに国内外での送金を可能にします。XRPでは約4秒で世界中のどこへでも送金が可能です。このXRPを利用するソリューションはxRapidと呼ばれています。
![XRP_introduction.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/86673750-0f55-9a51-7c39-21a65690244c.jpeg)

# システム仕様
## 対象利用者
Bitbankは日本国内の取引所のため、日本の居住資格を有している人のみが取引アカウントを申請できます。

## 原理
システムは両方の取引所のXRPの価格差を常に監視しています。
価格差が大きく乖離した時に、自動的に価格の低い取引所AからXRPを購入して、価格が高い取引所Bへ送金して、売却します（法定通貨と換金）。反対に、価格差が縮小した時に、XRPを取引所Bから購入して取引所Aへ送金して、売却します。

## 特徴
- 低リスク
 - 日本国内の取引所（[Bitbank.cc](https://bitbank.cc/)）とリップルのゲートウエー（[RippleChina](http://wg.iripplechina.com/)）の価格差を利用して、裁定取引を行うので、リスクが非常に低いです。 
- 低取引コスト
 - BitbankとRippleChinaの売買手数料が無料です。
 - ビットコイン裁定取引を行う場合、2取引所間の送金コスト（0.001 BTC）が非常に高いのに対して、XRPの送金コストは0.15XRPで実質かかりません。
- 高利益
 - 売買シグナルが発生した場合、1回取引の利益率は平均的に取引金額の1%～3%となっています。
 - 取引頻度（売買シグナルの頻度）について、数日1回～1日数回の頻度で取引を行っています。
- 完全自動化
 - 売買シグナルの監視、注文、送金、承認、着金確認、決済の一連の処理は自動的に行われるので、手動での運用は一切不要です。
- クラウド型
 - Amazon AWSクラウド上で稼働するので、ソフトウエアのインストールは一切不要です。
- 各種取引ルールのご用意
 - 1回裁定取引のXRP数量はユーザ毎に設定可能です。デフォルトは **1000** XRP。
 - 売買シグナルの発生条件（閾値）はユーザ毎に設定可能。*※この閾値は毎日変動しているので、現在は過去の閾値を参考に一定の頻度で手動設定を行っている。*
 - Bitbank、RippleChina取引アカウント内のXRP資産の保留数量はユーザ毎に設定可能。例えば、Bitbank取引アカウント内で1万のXRPは常に保留して、超過した分だけを自動取引の対象としたい。
- 売買シグナル通知
 - Slackアカウントを持っていれば、売買シグナル通知を受けることができます。今後ユーザの要望に応じて、Line、Wechat、メールなど多数媒介を対応することも可能です。 

# コスト
#### 初期コスト
RippleChinaのXRP取引を行うには最低31XRPを残す必要があります。

#### 取引コスト
1回の裁定取引は下記No.1～6の順番で行っています。
*※Bitbankの[売買手数料](https://bitbank.cc/blog/allpairs_zerofee_campaign_20171129/)は公式上2018/03/31まで無料ですが、現在でも無料となっている*

|No.   |処理                    |コスト               |備考|
|:----:|:-----------------------|:-------------------|----|
|1|XRP購入（Bitbank）            |0        ||
|2|XRP送金（Bitbank→RippleChina）|0.15 XRP|    |
|3|XRP売却（RippleChina）        |0|    |
|4|XRP購入（RippleChina）        |0|    |
|5|XRP送金（RippleChina→Bitbank）|0|    |
|6|XRP売却（Bitbank）|0|    |

# システム利用の流れ
## 1. Bitbank取引アカウント申請
https://bitbank.cc/app/register?f=ccblogheader
## 2. APIキー発行
システムは**APIキー**を利用して取引を行うので、予めAPIキーを発行する必要があります。
APIキーを発行するためには、**SMS認証**または**二段階認証**の設定が必要ですが、APIキー発行が済んだ場合、二段階認証を解除することができます。本システムは二段階認証を対応していないので、API発行が完了したら、**必ず二段階認証を解除してください**。
以下は手順です。
### 2.1 二段階認証の設定
- **セキュリティの設定**ボタンをクリック、セキュリティ設定画面に遷移する
![bitbank_api_menu_init.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/4105c2d4-3bdf-a410-48ba-a8483e9d7638.jpeg)
- **設定ボタン**をクリック
![bitbank_security_menu_init.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/92f5d1d4-5888-7c23-1416-4d6bd70f4f58.jpeg)
- スマホに認証用アプリ(Google Authenticator)をインストールした上で、生成された**6桁の認証コード**を入力し、**設定ボタン**をクリック
![bitbank_security_google_input.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/f0da8947-fb8d-91af-4291-1b319de66e48.jpeg)
- 二段階認証設定が完了
![bitbank_security_google.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/44a60f15-7759-0e24-6bbd-cdd52e4d4891.jpeg)

### 2.2 APIキーの発行
- API設定初期表示画面を開いて、**APIキーの発行**ボタンをクリック
![bitbank_api_menu_start.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/6782910d-f39b-8517-b899-ec2fecf8f9a8.jpeg)
- APIキーの発行画面で権限をフル選択（**参照** **取引** **出金**）した上で、**ラベル**と**二段階認証コード**を入力して、**確認**ボタンをクリック
![bitbank_api_menu_create_input.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/6c723642-45bb-792b-e751-38ecdad64469.jpeg)
- 確認画面に遷移したら、**発行する**ボタンをクリック
![bitbank_api_menu_create_confirm.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/a99c961c-89cc-d066-23be-5eac53e2e8c7.jpeg)
- APIキーの発行が完了
![bitbank_api_menu_create_complete.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/e118b0aa-7bfb-8e72-c656-bb9c7cc7ac78.jpeg)
- APIキーの確認
![bitbank_api_menu_end.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/025f280b-185c-2303-9166-a883e8699043.jpeg)
 - 取引システムは**APIキー**と**シークレット**を使用し、参照・取引・出金処理を行う
![bitbank_api_key_confirm.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/d333387a-f4b0-ceb2-8d3b-bb9e170ce254.jpeg)

### 2.3 二段階認証の解除
- セキュリティ画面の二段階認証の**解除**ボタンをクリック
![bitbank_api_menu_complete.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/cfbafee1-715f-f1b1-21a4-5e1fc8e17e43.jpeg)
- 二段階認証コードを入力し、**解除リクエスト**ボタンをクリック
![bitbank_security_2_step_auth_cancel.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/458ba8b4-f209-3b4c-d2e8-c58e8e78fd0f.jpeg)

## 3. Rippleウォレット申請
 - 設定手順
  - https://qiita.com/busijushen/items/79cf59ab765a76ce33f4
 - 中国語ガイド
  - http://wg.iripplechina.com/course/#zhuce
 - 注意点
  - XRP/CNYの取引を行うには、RippleChinaゲートウエイをTrustする必要がある
  - 本システムは取引を行うには**最低31XRP**をウォレットに残す必要がある。



## 4. メール転送設定
Bitbankで購入したXRPをRippleChinaへ送金する場合、出金申請承認メールがBitbank取引アカウントのメールアドレスに送付されます。ユーザは承認メール本文の中のリンクをクリックしたら、該当送金分が初めて外部のアドレスに送付できるようになります。こういった手動承認作業を省くように、本システムは自動承認を行っています。ユーザ側は予め届いた出金申請承認メールをシステムのメールアドレス（**ripple.sihuo@gmail.com**）に自動転送するように設定する必要があります。

出金申請承認メールの例
![approve_mail.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/e7a07373-0819-f87e-3225-be84b72b0d0b.jpeg)

以下はGmail側の転送設定の手順

 - 転送先アドレスの追加
![gmail_forward_setting.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/4f043e76-b55f-8a43-399e-f7fb947e0a6f.jpeg)
![gmail_forward_setting_address.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/85bb7122-12b1-8b75-012a-3586b84225f7.jpeg)
![gmail_forward_setting_address_confirm.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/eaafa640-bbaa-1007-c86a-f4972b6df5d6.jpeg)
![gmail_forward_setting_code.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/d64809d7-35fc-14d1-3691-1c230b94e4d2.jpeg)

 - Gmail 転送確認メール例(システム管理者側)
![gmail_confirm_mail_sample.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/7b8ad5e1-0f61-1011-fdf4-64960603ba1e.jpeg)
 - 確認コード入力
後日システム管理者より確認コードが通知されます。
![gmail_forward_setting_code_input.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/dd51060b-b9f7-e5ae-7285-d50c6b5f0a16.jpeg)

 - フィルタ作成
Bitbankから届いた出金申請承認メールのみを転送するには、フィルタを作成します。
![gmail_filter_menu.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/df350c99-581e-665f-1902-71cd184dd264.jpeg)
![gmail_filter_input.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/ba83f627-75ce-74e2-a2b4-360cf7f55b00.jpeg)
![gmail_filter_confirm.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/5ce35178-11c0-559c-43e3-1ecf333c161f.jpeg)
 - フィルタ適用
![gmail_forward_setting_with_filter.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/260972d1-1933-c0c2-6930-c15b0b43c013.jpeg)

# 興味がある方へ
興味がある方は下記SNSアカウントまで繋がり申請又はメールをお願いします。
**Wechat**
<img src="https://qiita-image-store.s3.amazonaws.com/0/245420/8914d642-a229-c71e-a0d2-0da5aa050184.jpeg" width=50% />

**メール**
ripple.info1@gmail.com

**ツィッター**
下記ツィッターに売買シグナルが公表されています。売買シグナルを見ながら手動取引を行いたい人に対して非常に役に立つかと思います。
https://twitter.com/teikeiho
![RippleArbitrage.JPG](https://qiita-image-store.s3.amazonaws.com/0/245420/e6c1df2f-d4b5-fb29-d1e5-b7de9a06f2c8.jpeg)