読者です 読者をやめる 読者になる 読者になる

ビットコインとシステムトレード (Bitcoin & Automated Algorithmic Trading)

ビットコインの自動売買システム構築とトレード実践結果 (Automatic Bitcoin Trading System Implementation and Trading Result)

Quoine, BTCBOX, coincheck, そしてbitFlyer

中国の締め付け強化・春節などの影響もあってか、ここ最近はビットコインの値動き・取引高に翳りが見えていました(日本市場の出来高50億円前後)。ただ、少なくとも日本市場では一昨日あたりから取引が活発化し、元の水準に戻ってきており(出来高200億円前後)、botシステムトレーダーとしてはホッと胸を撫で下ろしているところです。今年は中国市場衰退、日本市場躍進、というシナリオもあり得るかと。

そして、ここに来て昨今の状況を受けてか、各取引所の姿勢に変化が出てきました。

  • Quoineの取引手数料の0%継続
  • BTCBOXの取引手数料が0%から0.2%に
  • coincheckの取引手数料が期間限定で0%に

手数料の影響は((市場の出来高の大半に寄与している)botプレイヤーにとっては特に)大きいため、2月・3月は出来高に関して下記のような構図が続くと思われます。

bitFlyer >>> Quoine > coincheck = zaif >>> BTCBOX >>> Kraken

bitFlyerは現状、資本力・信用・使い勝手・技術力、全ての点において敵無しな、モンスター取引所なので、当面は独占独走状態が続くはずです。ただし、それも「手数料0%が維持される限り」という話であり、そこが崩れれば、シェアの10〜20%以上の変動は十分あり得ます。

使い勝手などから総合的かつ主観的に考えるに、対抗できるのはcoincheckくらいかなー、と思っております。今回のcoincheckのキャンペーンが市場にどう影響を与えるか、楽しみに注視していきます。

Quoine

2017年1月中旬、中国当局による中国仮想通貨取引所事業者への査察が行われた結果大手中国仮想通貨取引所事業者が相次いで取引手数料の徴収を再開しました。 市場全体へその影響が波及しておりますが、当社はビットコイン現物取引における取引手数料の無料化を当面継続することを決定いたしましたので、お知らせいたします。

BTCBOX

BTCBOXでは、取引手数料無料にて運営を行ってまいりましたが国内外のビットコインビジネス環境の変化を鑑み、この度ビットコインの取引手数料を再開いたします。手数料再開は1/30(月)12:00から実行致します。ビットコインの取引手数料は 0.2% といたします。

1/23取引手数料再開に関するお知らせ--BtcBox|仮想通貨取引所

coincheck

今なら手数料無料!ビットコインはcoincheck
期間:2017年2月1日0時〜2017年3月31日
対象:全ユーザー
内容:coincheck利用による取引で発生する取引所手数料が
完全無料[maker: 0%, taker: 0%]となります

coincheck.com

bitFlyerビジネスクラスの取引量上限 - その2

bitcoin-system-trading.hatenablog.com

以前、上記のようなエントリを投稿いたしました。そこで、bitFlyerのユーザサポートに確認したところ、取引量制限は

  • 現物のみ
  • 売り買い時は相殺される(=上限は売りの上限・買いの上限)

ということでした。つまりあくまでも片側売買における上限であると。

これはおそらく、外部からのJPY入金・BTC入金をもとに片側売買を行うと、Withdrawの依頼があったときに、BTC出金・JPY出金に必要な資金プールが枯渇する可能性があるため、そのリスクを避けるための措置なのでしょうね。FXはあくまでも証拠金をベースとした取引であり、利益確定にはポジションをクローズする必要があるため、上限は設けていない、といったところでしょうね。

漢 a.k.a. GAMI ビットコイン自動売買Bot (Ver.2)の運用成績を公開

以前のエントリで自動売買Bot(Ver.1)の運用成績を公開していました。今回は別のアルゴリズムにて、昨年(2016年)のクリスマス連休に開発したVer.2の運用成績を公開します。

a.k.a. GAMI ビットコイン自動売買Bot (Ver.1)

日利平均:0.9%、週利:9.4〜17.6%、月利:19.6%

これまでの自動売買の週次成績
(2016/7/2取引開始。取引所A・取引所Bともに数百万円の元手から開始。レバレッジはかけず、現物取引のみ。)

2016/7/2-7/8 取引所A: - 取引所B: +528,956円 合計: +528,956円

2016/7/9-7/15 取引所A: +232,685円 取引所B: +334,330円 合計: +567,015円

2016/7/16-7/22 取引所A: -72,720円 取引所B: +153,899円 合計: +81,179円

これまでの自動売買の月次成績

2016/7/2-7/22 取引所A: +159,965円 取引所B: +1,017,185円 合計: +1,177,150円

a.k.a. GAMI ビットコイン自動売買Bot (Ver.2)

日利平均:0.6%、週利:1.88.2%、月利:16.2%
PF:7.0、勝率(トレードごとではなく日次利益を元に計算):92%
【2017/01/25 追記】 日利平均:0.6%、週利:1.88.2%、月利:19.2%
PF:8.1、勝率(トレードごとではなく日次利益を元に計算):94%  

負けたのは2日のみで、それも2日で取り返しており、高い安定感には助かっています。

Ver.1はマーケットとの相性が悪くなったため、停止させ、一時撤退していました。しかし、マーケットを選ぶのですが、現在はVer.2を稼働させ、安定的にVer.1に迫る利益を得ています(まだ5日間あるため、月利は伸びる可能性があります。)。

さらに、Ver.1を改良したVer.3の作成が終わりつつあるため、今週末からはVer.2とVer.3の別アルゴリズム2本立てで回していきたいと思っています。

bitFlyerビジネスクラスの取引量上限

bitFlyerで取引を行っているかたは、大体「ビジネスクラス」にて取引をされているかと思うのですが、本日ついにその最大取引量制限に達してしまいました。これからさらに規模をガンガン拡大して取引を行い、取引所の出来高流動性にも寄与していこうと思っていた矢先、悲しいです (T -T)

  ビジネスクラス ファーストクラス
最大取引量/日 500 万円 制限なし
最大取引量/月 2,500 万円 制限なし 

アカウントクラス【bitFlyer】

 ファーストクラス招待状贈呈の要件が非公開でなんともわからないため、それまではいったん資金を引き揚げて、取引の中心をbitFlyer以外に移してガンガンやってまいります。

日利1%の世界(※ビットリージョン等のHYIPの話ではない)

BTCが10万円を超えた2016/12/22(木)あたりから、Quoineの割安感が強まっています。coincheckやbitFlyerと比較した際の乖離が2〜3%というのもザラです。それらのショート側取引所のレバレッジを3〜4倍かけることで、裁定取引で日利1%を取れる状況です(やり方は過去のエントリで紹介)。ビットリージョン等の怪しげなHYIPよりはよっぽど堅いと思います。正月3ヶ日明けの2017/1/4(水)からは資金の動きも活発になるはずで、乖離が解消に向かっていくのかどうか、要注視です。

日利1%といったハイリターンを目にすると、リスクも相応に高いんじゃないの?と感じるかと思います。それはまあその通りで、Quoine含むビットコイン取引所がMt.Goxのように破綻して、投下した資金が全額ロストする可能性がゼロだと言い切ることはできません。ただし、それは漠然とした不安・リスクとして感じたままにしておくのではなく、定量的に把握しておくと良いです。ある期間中の利益をg、全額を失う確率をpとすると、pとgは下記のような関係にあります。

g * (1-p) - 1 * p < 0

p > g /(1+ g)

ここで、日利1%の複利からgを計算すると

  • 30日後: g = 35%
  • 60日後: g = 82%
  • 90日後: g = 145%

となります。gから考えられるpは下記のとおりです。

  • 取引所破綻(30日後)確率 (g = 0.35): p > 0.35 / 1.35 = 26%
  • 取引所破綻(60日後)確率 (g = 0.82): p > 0.82 / 1.82 = 45%
  • 取引所破綻(90日後)確率 (g = 1.45.): p > 1.45 / 2.45 = 59%

つまり、当該取引所が30日後に26%の確率以上で破綻し得ると考えるのであれば、その取引機会には手を出さないほうがよいです。それよりも信頼に足るのであれば、試す価値はあると言えます。60日後であれば45%、90日後であれば59%です。取引所の信頼性については肌感覚も大事ですが、確率の数字を目安として把握しておくと、少しは取引に臨む姿勢・心づもりも変わるかもしれません。

LINE Messaging APIによるビットコイン価格・トレード損益・Bot監視

ビットコイン取引に限った話ではないですが、価格や自動売買状況のモニタリングにはLINE Botが非常に相性が良いです。1時間や30分おきくらいにLINEで通知するようにしておくと、隙間時間でのスマホからの確認も手軽になります。本記事ではGoogle Apps Script (GAS)を用いた、通知先LINEアカウントのuserId取得とその利用手順を紹介しておきます。

手順

1. 下記のコード(例1)をGoogle Apps Script上で記述する
2. Google Apps Scriptの 公開 > ウェブ アプリケーションとして導入 からURLを取得する(実行ユーザは自分、アクセス可能ユーザは全員に設定)
(例:https://script.google.com/macros/s/XXXX/exec)
3. LINE Developers > Basic Information > Webhook URLに上記URLを設定する
4. LINE Botアカウントを友達登録し、LINEでメッセージ(なんでも良い)を送る
5. LINE BotからuserIDが返信されてくるのでメモする
6. 取得したuserIDをLINE BotのPUSH_MESSAGEの宛先に用いる(例2)

例1:Google Apps Script (通知先LINEアカウントのuserId取得)

// LINE Developers > Basic Information > Channel Access Token から取得

var channel_access_token = "取得したAccess Token";

function doPost(e) {
var posted_json = JSON.parse(e.postData.contents);
var events = posted_json.events;
events.forEach(function(event) {
var postData = {
"replyToken" : event.replyToken,
"messages" : [
{
"type" : "text",
"text" : event.source.userId
}
]
};
Logger.log(event.replyToken);
var options = {
"method" : "post",
"headers" : {
"Content-Type" : "application/json",
"Authorization" : "Bearer " + channel_access_token
},
"payload" : JSON.stringify(postData)
};
var reply = UrlFetchApp.fetch("https://api.line.me/v2/bot/message/reply", options);
Logger.log(reply);
});
}; 

例2:Ruby (取得したuserIdを用いたPush通知)

 #!/usr/bin/ruby

require 'line/bot'

# LINE Developers > Basic Information > Channel Secret から取得

LINE_CHANNEL_SECRET = '取得したChannel Secret'

# LINE Developers > Basic Information > Channel Access Token から取得

LINE_CHANNEL_TOKEN = '取得したChannel Access Token'

message = {
type: 'text',
text: 'LINEに通知するメッセージ内容'
}
client = Line::Bot::Client.new { |config|
config.channel_secret = LINE_CHANNEL_SECRET
config.channel_token = LINE_CHANNEL_TOKEN
}
response = client.push_message('取得したuserId', message)

最近のビットコインの日本の取引所間の(Bidmax - Askmin)の動向

最近のBitcoinのバブりとVolatility上昇を受けてか、特に12月に入ってから、日本のExchange間の価格乖離が上昇しています。7月の半減期を超える水準です。Arbitrageを実践する人には良いChanceですね。特にQuoineがずっと安いです。(むしろ他の日本の取引所が高い、という話はありますが。。) Quoineはトレイダーズとの業務提携のプレスリリース発表日にシステムトラブル起こしたりと、何かと話題ではありますが、Arbitrage実践者にとっては昔も今も熱い取引所です。乖離が3%あったりするので、

  • (Quoine: coincheck or bitFlyer)で資金を(2〜4:1)くらいでで入れておく。QuoineでJPYを売り、BTCを現物で買う=>coincheck or bitFlyerにBTC転送
  • coincheck or bitFlyer: BTCを借りて信用買い(レバレッジ3倍くらいが安全)=>Quoineからの現物BTC転送により借入BTCの返済を行う

を実行すれば、例えば100万円の元手で (100 / (3 + 1) * 3 (レバレッジ3倍想定) ✕ 3% = 75万円 ✕ 3% = 2.25万円、つまりは、2.25/100 = 2.25%の乖離を狙えますね。もちろん入出金にかかる時間ラグは1営業日ほどあるので、1回転/2日=1.125%/日くらいの利益かと思います。それでも資金力のあるかたには十分に美味みのある機会ですね。

Monthly Simple Average of bidmax-askmin among 5 JP BTC Exchanges
based on Prices with 10min Interval

Jun. 695 JPY
Jul. 429 JPY
Aug. 184 JPY
Sep. 135 JPY
Oct. 183 JPY
Nov. 524 JPY
Dec. 1143 JPY (Blog記事作成時点)