皆さま、こんにちは。クリプトトレーダーです。本日のテーマは「仮想通貨のストラテジー構築と相関分析」です。仮想通貨のストラテジー構築については、やはりマーケットメーキング戦略と大量保有リストを使ったものが軸になり得るのではないかなという気がしています。

この二つのストラテジーについては今後、時間をたっぷり割いて質の良いものに仕上げますので乞うご期待ください。伝統的な定量分析手法である相関分析も大事・・だと思いますので今回は相関分析を中心に展開いたします。

専業システムトレーダーKKさんのツイッターによると、ビットコインbot運用18日目で950円が54万円になったというリターン500倍の話がありました。人気のある話はこんな話ですよね。これはマーケットメーキング戦略の話ですが、残念ながら私自身はどのようなストラテジーなのか見当もつきません。こちらも何か気付けば展開いたしますのでよろしくお願いします。

BTCJPYのデータを取得

BTCJPYの相関分析を取り上げます。まずはBTCJPYのデータ取得を目指します。CryptoCompareでBTCBOX 、QUOINE、bitFlyer、Coincheck、Zaifのデータを取得してみます。日足ベースに整理して、期間は50本分のローソク足です。

import requests
import datetime
import pandas as pd

def daily_price_historical(symbol, comparison_symbol, limit=50, aggregate=1, exchange='', allData='true'):
    url = 'https://min-api.cryptocompare.com/data/histoday?fsym={}&tsym={}&limit={}&aggregate={}&allData=false'\
            .format(symbol.upper(), comparison_symbol.upper(), limit, aggregate, allData)
    if exchange:
        url += '&e={}'.format(exchange)
    page = requests.get(url)
    data = page.json()['Data']
    
    df = pd.DataFrame(data)
    df['timestamp'] = [datetime.datetime.fromtimestamp(d) for d in df.time]
    return df

exch_name= ["zaif", "coincheck","bitflyer", "quoine","btcbox"]
col = ["timestamp", "close"]
df0 = daily_price_historical('BTC','JPY',exchange=exch_name[0])
df0=df0[col]
df0 = df0.rename(columns={'close': exch_name[0]})

for i in range(1,len(exch_name)) :
    df1 = daily_price_historical('BTC','JPY',exchange=exch_name[i])
    df1=df1[col]
    df1 = df1.rename(columns={'close': exch_name[i]})
    df0= pd.merge(df1, df0, on='timestamp')
    
print(df0)

BTCJPYのデータで相関分析

取得できたデータについて、相関分析をしてみます。Pythonには便利な関数が組み込まれています。各交換所の相関係数を出力し、ヒートマップで表現してみました。

import seaborn as sns
import matplotlib.pyplot as plt

df_corr = df0.corr()
print(df_corr)
colormap = plt.cm.RdBu
sns.heatmap(df_corr,linewidths=0.1,vmax=1.0, square=True, cmap=colormap, linecolor='white', annot=True)

BTCJPYの相関分析をしてもストラテジー構築にあまり役に立たないかもしれません。仮想通貨交換所間のアービトラージ戦略のアイデア構築材料にはなるかもしれませんが、それであるならば、価格乖離の分析をしたほうが直接的だと考えます。

次は、アルトコインの相関分析をするために同じようなステップを紹介したいと思います。

アルトコインのデータを取得

アルトコインのデータを取得します。交換所に依存しない総合的なアルトコイン指数の数字を使ってみました。CryptoCompareでBTC、ETH、BCH、LTC、XRP、LSK、DASH、IOT、XEMのデータを取得してみます。日足ベースに整理して、期間は50本分のローソク足です。

import requests
import datetime
import pandas as pd

def daily_price_historical(symbol, comparison_symbol, limit=50, aggregate=1, exchange='', allData='true'):
    url = 'https://min-api.cryptocompare.com/data/histoday?fsym={}&tsym={}&limit={}&aggregate={}&allData=false'\
            .format(symbol.upper(), comparison_symbol.upper(), limit, aggregate, allData)
    if exchange:
        url += '&e={}'.format(exchange)
    page = requests.get(url)
    data = page.json()['Data']
    
    df = pd.DataFrame(data)
    df['timestamp'] = [datetime.datetime.fromtimestamp(d) for d in df.time]
    return df

fsym= ["BTC","ETH","BCH","LTC","XRP","LSK","DASH","IOT","XEM"]
col = ["timestamp", "close"]
df0 = daily_price_historical(fsym[0],'USD',exchange='CCCAGG')
df0=df0[col]
df0 = df0.rename(columns={'close': fsym[0]})

for i in range(1,len(fsym)) :
    df1 = daily_price_historical(fsym[i],'USD',exchange='CCCAGG')
    df1=df1[col]
    df1 = df1.rename(columns={'close': fsym[i]})
    df0= pd.merge(df1, df0, on='timestamp')
    
print(df0)

アルトコインのデータで相関分析

取得できたデータについて、相関分析をしてみます。

import seaborn as sns
import matplotlib.pyplot as plt

df_corr = df0.corr()
print(df_corr)
colormap = plt.cm.RdBu
sns.heatmap(df_corr,linewidths=0.1,vmax=1.0, square=False, cmap=colormap, linecolor='white', annot=True)

BTCJPYとはひと味違った結果が得られました。日足ベースなので、Buy&Hold戦略のボラティリティ減少にも役立たせることができると思います。短期売買戦略であれば、相関の小さい仮想通貨ペアの分析をしてみるのもよいかもしれません。BTCJPYの相関分析と違い、アルトコインの相関分析はアイデア構築の拡がりが期待できそうです。

XRPが飛びぬけて相関が低いですね。直近の急騰が関係しているのかもしれません。

まとめ

BTCJPYとアルトコインの相関分析を試みました。定量分析は、実際に売買を行ううえでのベースとなる作業です。

もちろん、本記事で紹介したアイデアを使って自動売買環境を作ってみるのもいいですが、やはり自分で分析して納得するというプロセスが売買を継続する上で大事だと思います。

この記事をヒントにぜひ自分なりの分析をしてみて下さい。それではよい一日を!

crypto トレーダー

Explore More

相場分析05

11月 17, 2017 0 Comments 0 tags

黄色の縦線に挟まれた期間が、先週の相場になります。前回の記事で私は、先週の終わりから4時間足6本目の足で、買いで入れると申し上げました。ところが相場は反転し、あえなく損切りとなりました。

もう取引所は古い!海外で話題のchangelly(チェンジリー)で仮想通貨の両替がお得すぎ!

チェンジリー
8月 5, 2017 0 Comments 4 tags

あまりまだ日本では知られていない彼等のオススメの仮想通貨通しの両替サービスのチェンジリー(changelly)ご紹介いたします。手数料はもちろんかかりますが、凄く手数料が他と比べてお得だし、簡単に両替できるのでとってもオススメです。

相場分析 35

6月 16, 2018 0 Comments 0 tags

先週申し上げたように大きく下落しました(下に窓が開きました)。右下隅の5本のローソク足が今週分です。