
Photo by
golchiki
【50日目】相場の解析を始めるための環境構築【Jupyternotebook】
今日はまた1から準備です。
早くFXか仮想通貨の相場の解析をしたいです。
0.Jupyternotebookの導入
Anacondaで入れた人はすでに入っているらしい。
Windowsボタンを押してJupyくらいまで打つと一番上にプログラムが表示される。
そこから新規フォルダを作って、その中に新しいnotebookを作ったよ。
1.ライブラリのインストール
pipコマンドを使って、Talibのインストールを試みた
!pip install Talib
うんともすんとも言わない。
ここから既に調べる必要がありそうです…
道のりは長い
2.notebookの内容
とりあえず以下の内容はエラーをはかずに移行できました。
import pandas as pd
import numpy as np
from plotly import figure_factory as ff
from plotly import graph_objs as g_o
from plotly.offline import plot
ついでに使えそうな定義も引っ張ってきておきます。
def convert2df(data,choice_timeframe):
timestamp = []
open_rate = []
high_rate = []
low_rate = []
close_rate = []
for i in data:
timestamp.append(i["timestamp"])
open_rate.append(i["open_rate"])
high_rate.append(i["high_rate"])
low_rate.append(i["low_rate"])
close_rate.append(i["close_rate"])
data_jisyo = {'open_rate':open_rate,"high_rate":high_rate,"low_rate":low_rate,"close_rate":close_rate}
agg_jisyo = {'open_rate':'first','high_rate':'max','low_rate':'min','close_rate':'last'}
df_row = pd.DataFrame(data_jisyo,index = timestamp).resample(choice_timeframe).agg(agg_jisyo)
df = df_row.dropna()
return df
def check_ohlc(df_row):
df_li = []
df_max = df_row.max(axis=1)
df_min = df_row.min(axis=1)
for i in range(len(df_row)):
if df_max[i] == df_row.iat[i,1]:
if df_min[i] == df_row.iat[i,2]:
df_li.append(df_row.iloc[i,:])
df_df = pd.DataFrame(df_li)
return df_df
def calc_num_candlestick(choice_period,choice_timeframe):
num_candlestick_jisyo = {"1T":1,"5T":5,"10T":10,"15T":15,"30T":30,"1H":60,"4H":240,"1D":24*60,"1W":24*60*7}
num_candlestick = choice_period*num_candlestick_jisyo[choice_timeframe]
return num_candlestick
#def calc_bb(df,bb_period,bb_num):
# close = np.array(df['close_rate'])
# for arr in talib.BBANDS(close, bb_period=bb_period, nbdevup=bb_num, nbdevdn=bb_num, matype=0):
# output = np.c_[output, arr]
# cols += ['BBANDS_upperband', 'BBANDS_middleband', 'BBANDS_lowerband']
# return output
あとはパラメータを指定するためのセルを用意してみました。
ついでに説明書きも書きました。
パラメータの意味と指定可能な値は以下の通り
symbol:通貨の種類:"XBTUSD","XBTJPY"
timeframe:チャートの足の種類:"1T", "5T", "10T", "15T", "30T", "1H", "4H", "1D", "1W"
period:チャートに表示する足の数:任意の自然数
choice_symbol =
choice_timeframe =
choice_period =
今日はここまで。
いいなと思ったら応援しよう!
