{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"pygments_lexer":"ipython3","nbconvert_exporter":"python","version":"3.6.4","file_extension":".py","codemirror_mode":{"name":"ipython","version":3},"name":"python","mimetype":"text/x-python"}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"markdown","source":"<div align=\"center\">\n  <img width=\"900\"  src=\"https://i.postimg.cc/d0MFPqjz/g-crypto-analysis.gif\">\n</div>","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","execution":{"iopub.status.busy":"2021-11-19T17:18:39.360987Z","iopub.execute_input":"2021-11-19T17:18:39.361524Z","iopub.status.idle":"2021-11-19T17:18:42.668197Z","shell.execute_reply.started":"2021-11-19T17:18:39.36149Z","shell.execute_reply":"2021-11-19T17:18:42.667325Z"}}},{"cell_type":"code","source":"#\n# Version by Andre\n# \n\nimport numpy as np \nimport pandas as pd \n\nimport plotly.graph_objects as go\nfrom plotly.subplots import make_subplots\n\nimport cufflinks as cf\ncf.go_offline()\n\nimport os\nfor dirname, _, filenames in os.walk('/kaggle/input'):\n    for filename in filenames:\n        print(os.path.join(dirname, filename))","metadata":{"execution":{"iopub.status.busy":"2021-11-20T01:53:57.098750Z","iopub.execute_input":"2021-11-20T01:53:57.099408Z","iopub.status.idle":"2021-11-20T01:54:00.252537Z","shell.execute_reply.started":"2021-11-20T01:53:57.099310Z","shell.execute_reply":"2021-11-20T01:54:00.251560Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"data = pd.read_csv('/kaggle/input/g-research-crypto-forecasting/train.csv')\ndata.head(10).style.applymap(lambda x : \"background-color: #174EA6\")","metadata":{"execution":{"iopub.status.busy":"2021-11-20T01:54:16.173105Z","iopub.execute_input":"2021-11-20T01:54:16.173398Z","iopub.status.idle":"2021-11-20T01:55:11.763295Z","shell.execute_reply.started":"2021-11-20T01:54:16.173369Z","shell.execute_reply":"2021-11-20T01:55:11.762191Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"<div align=\"center\">\n  <img width=\"900\"  src=\"https://i.postimg.cc/k51YWshq/image.png\">\n</div>","metadata":{}},{"cell_type":"markdown","source":"# EDA - Exploratory Data Analysis","metadata":{}},{"cell_type":"code","source":"def EDA(df):\n    \n    print('\\033[1m' +'EXPLORATORY DATA ANALYSIS :'+ '\\033[0m\\n')\n    print('\\033[1m' + 'Shape of the data :' + '\\033[0m')\n    print(df.shape, \n          '\\n------------------------------------------------------------------------------------\\n')\n    \n    print('\\033[1m' + 'All columns from the dataframe :' + '\\033[0m')\n    print(df.columns, \n          '\\n------------------------------------------------------------------------------------\\n')\n    \n    print('\\033[1m' + 'Datatpes and Missing values:' + '\\033[0m')\n    print(df.info(), \n          '\\n------------------------------------------------------------------------------------\\n')\n    \n    print('\\033[1m' + 'Summary statistics for the data :' + '\\033[0m')\n    print(df.describe(include='all'), \n          '\\n------------------------------------------------------------------------------------\\n')\n    \n        \n    print('\\033[1m' + 'Memory used by the data :' + '\\033[0m')\n    print(df.memory_usage(), \n          '\\n------------------------------------------------------------------------------------\\n')\n    \n    print('\\033[1m' + 'Number of duplicate values :' + '\\033[0m')\n    print(df.duplicated().sum())\n          \nEDA(data)","metadata":{"execution":{"iopub.status.busy":"2021-11-20T01:56:00.430134Z","iopub.execute_input":"2021-11-20T01:56:00.430402Z","iopub.status.idle":"2021-11-20T01:57:27.963879Z","shell.execute_reply.started":"2021-11-20T01:56:00.430376Z","shell.execute_reply":"2021-11-20T01:57:27.962338Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Data Preprocessing\n\n<div align=\"center\">\n  <img width=\"900\"  src=\"https://i.postimg.cc/VkmTjd4s/2.gif\">\n</div>","metadata":{}},{"cell_type":"code","source":"# Naming every asset\n\nasset_name = ['Binance Coin', 'Bitcoin', 'Bitcoin Cash', 'Cardano', 'Dogecoin', 'EOS.IO', 'Ethereum', \n              'Ethereum Classic', 'IOTA', 'Litecoin', 'Maker', 'Monero', 'Stellar', 'TRON']\n\nfor index in range(0,14):\n    data['Asset_ID'].replace({index : asset_name[index]}, inplace=True)\n    \nnames = data.Asset_ID.unique()\nnames","metadata":{"execution":{"iopub.status.busy":"2021-11-20T02:02:08.154079Z","iopub.execute_input":"2021-11-20T02:02:08.154510Z","iopub.status.idle":"2021-11-20T02:02:37.117797Z","shell.execute_reply.started":"2021-11-20T02:02:08.154464Z","shell.execute_reply":"2021-11-20T02:02:37.116579Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# Making timestamp column the index \n\ndata['timestamp'] = pd.to_datetime(data['timestamp'], unit='s')\ndata.set_index('timestamp', inplace = True)\ndata.index.dtype","metadata":{"execution":{"iopub.status.busy":"2021-11-20T02:03:12.612689Z","iopub.execute_input":"2021-11-20T02:03:12.613525Z","iopub.status.idle":"2021-11-20T02:03:14.403612Z","shell.execute_reply.started":"2021-11-20T02:03:12.613480Z","shell.execute_reply":"2021-11-20T02:03:14.402541Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# Reducing memory taken by the data\n\ndef reduce_memory(df):\n    \n    before = df.memory_usage().sum()  \n    \n    for col in df.columns:        \n        dtype = df[col].dtype\n        if dtype == 'float64':\n            c_min = df[col].min()\n            c_max = df[col].max()        \n            if c_min > np.finfo(np.float32).min and c_max < np.finfo(np.float32).max:\n                df[col] = df[col].astype(np.float32)\n            else:\n                df[col] = df[col].astype(np.float64)    \n                    \n    after = df.memory_usage().sum()\n    \n    print('Memory taken before transformation : ', before)\n    print('Memory taken after transformation : ', after)\n    print('Memory taken reduced by : ',( before - after) * 100/ before, '%')\n    \n    return df\n\ndata = reduce_memory(data)","metadata":{"execution":{"iopub.status.busy":"2021-11-20T02:03:41.742305Z","iopub.execute_input":"2021-11-20T02:03:41.743617Z","iopub.status.idle":"2021-11-20T02:03:45.972991Z","shell.execute_reply.started":"2021-11-20T02:03:41.743547Z","shell.execute_reply":"2021-11-20T02:03:45.971988Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# Making separate dataframes\n\nbitcoin_cash = data[data['Asset_ID'] == 'Bitcoin Cash']\nbinance_coin = data[data['Asset_ID'] == 'Binance Coin']\nbitcoin = data[data['Asset_ID'] == 'Bitcoin']\neos_io = data[data['Asset_ID'] == 'EOS.IO']\nethereum_classic = data[data['Asset_ID'] == 'Ethereum Classic']\nethereum = data[data['Asset_ID'] == 'Ethereum']\nlitecoin = data[data['Asset_ID'] == 'Litecoin']\nmonero = data[data['Asset_ID'] == 'Monero']\ntron = data[data['Asset_ID'] == 'TRON']\nstellar = data[data['Asset_ID'] == 'Stellar']\ncardano = data[data['Asset_ID'] == 'Cardano']\niota = data[data['Asset_ID'] == 'IOTA']\nmaker = data[data['Asset_ID'] == 'Maker']\ndogecoin = data[data['Asset_ID'] == 'Dogecoin']\n\n# Clearing memory\ndel data","metadata":{"_kg_hide-input":true,"execution":{"iopub.status.busy":"2021-11-20T02:04:27.241683Z","iopub.execute_input":"2021-11-20T02:04:27.242008Z","iopub.status.idle":"2021-11-20T02:04:51.106026Z","shell.execute_reply.started":"2021-11-20T02:04:27.241974Z","shell.execute_reply":"2021-11-20T02:04:51.104930Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# Resampling all datasets\n\nday = {\n    'Open': 'first',\n    'High': 'max',\n    'Low': 'min',\n    'Close': 'last',\n    'Volume': 'sum'\n}\n\nbitcoin_cash = bitcoin_cash.resample('D').apply(day)\nbinance_coin = binance_coin.resample('D').apply(day)\nbitcoin = bitcoin.resample('D').apply(day)\neos_io = eos_io.resample('D').apply(day)\nethereum_classic = ethereum_classic.resample('D').apply(day)\nethereum = ethereum.resample('D').apply(day)\nlitecoin = litecoin.resample('D').apply(day)\nmonero = monero.resample('D').apply(day)\ntron = tron.resample('D').apply(day)\nstellar = stellar.resample('D').apply(day)\ncardano = cardano.resample('D').apply(day)\niota = iota.resample('D').apply(day)\nmaker = maker.resample('D').apply(day)\ndogecoin = dogecoin.resample('D').apply(day)\n\ndf_list = [bitcoin_cash, binance_coin, bitcoin, eos_io, ethereum_classic, ethereum,\n           litecoin, monero, tron, stellar, cardano, iota, maker, dogecoin]","metadata":{"_kg_hide-input":true,"execution":{"iopub.status.busy":"2021-11-20T02:04:59.773528Z","iopub.execute_input":"2021-11-20T02:04:59.773976Z","iopub.status.idle":"2021-11-20T02:05:00.875672Z","shell.execute_reply.started":"2021-11-20T02:04:59.773938Z","shell.execute_reply":"2021-11-20T02:05:00.874745Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Crypto Dashboard\n\n<div align=\"center\">\n  <img width=\"900\"  src=\"https://i.postimg.cc/x8G5C3wv/3.png\">\n</div>","metadata":{}},{"cell_type":"code","source":"date_buttons = [\n{'count':  4, 'step': \"year\", 'stepmode': \"todate\", 'label': \"Year\"},\n{'count':  6, 'step': \"month\", 'stepmode': \"todate\", 'label': \"Month\"},\n{'count': 60, 'step': \"day\", 'stepmode': \"todate\", 'label': \"Week\"},\n{'count': 20, 'step': \"day\", 'stepmode': \"todate\", 'label': \"Day\"},\n               ]\n\n\nbuttons = []\ni = 0\nvis = [False] * 14\n\nfor df in df_list:\n    vis[i] = True\n    buttons.append({ 'label' : names[i],\n                     'method' : 'update',\n                     'args'   : [{'visible' : vis},\n                                 {'title'  : names[i] + ' Chart'}] })\n    i+=1\n    vis = [False] * 14\n\nfig = go.Figure()\n\nfor df in df_list:\n    fig.add_trace(go.Candlestick(x     = df.index,\n                                 open  = df['Open'],\n                                 high  = df['High'],\n                                 low   = df['Low'],\n                                 close = df['Close'],\n                                 increasing_line_color= '#42eff5',\n                                 decreasing_line_color= '#8f4040'))\n\nfig.update_xaxes(\n        tickfont = dict(size=15, family = 'monospace', color='#B8B8B8'),\n        tickmode = 'array',\n        ticklen = 6,\n        showline = False,\n        showgrid = True,\n        gridcolor = '#595959',\n        ticks = 'outside')\n\nfig.update_yaxes(\n        tickfont = dict(size=15, family = 'monospace', color='#B8B8B8'),\n        tickmode = 'array',\n        showline = False,\n        ticksuffix = '$',\n        showgrid = True,\n        gridcolor = '#595959',\n        ticks = 'outside')    \n    \n    \nfig.update_layout(height = 650,\n                  font_family   = 'monospace',\n                  xaxis         = dict(rangeselector = dict(buttons = date_buttons)),\n                  updatemenus   = [dict(type = 'dropdown',\n                                        x = 1,\n                                        y = 1.15,\n                                        showactive = True,\n                                        active = 2,\n                                        buttons = buttons)],\n                  title         = dict(text = 'Cryptocurrency Candlestick<br>Dashboard',\n                                       font = dict(color = '#FFFFFF'), \n                                       x = 0.525),\n                  plot_bgcolor  = '#1a253d',\n                  paper_bgcolor = '#1a253d',\n                  font          = dict(color='#858585'), \n                  annotations   = [\n                                  dict( text = \"<b>Choose<br>Crypto<b> : \",\n                                        font = dict(size = 12),\n                                        showarrow=False,\n                                        x = 0.96, y = 1.25,\n                                        xref = 'paper', yref = \"paper\",\n                                        align = \"left\")])\n    \n    \nfor i in range(0,14):\n    fig.data[i].visible = False\nfig.data[2].visible = True\n\nfig.show()","metadata":{"_kg_hide-input":true,"execution":{"iopub.status.busy":"2021-11-20T02:07:59.600096Z","iopub.execute_input":"2021-11-20T02:07:59.600828Z","iopub.status.idle":"2021-11-20T02:08:00.359494Z","shell.execute_reply.started":"2021-11-20T02:07:59.600737Z","shell.execute_reply":"2021-11-20T02:08:00.358525Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"date_buttons = [\n{'count':  4, 'step': \"year\", 'stepmode': \"backward\", 'label': \"Year\"},\n{'count':  6, 'step': \"month\", 'stepmode': \"todate\", 'label': \"Month\"},\n{'count': 60, 'step': \"day\", 'stepmode': \"todate\", 'label': \"Week\"},\n{'count': 20, 'step': \"day\", 'stepmode': \"todate\", 'label': \"Day\"},\n               ]\n\nfig = make_subplots(rows=2, cols=1, shared_xaxes=True, \n               vertical_spacing=0.3, subplot_titles=('', 'Volume'), row_width=[0.3, 0.8])\n\n\nbuttons = []\ni = 0\nvis = [False] * 14\n\nfor df in df_list:\n    vis[i] = True\n    buttons.append({ 'label' : names[i],\n                     'method' : 'update',\n                     'args'   : [{'visible' : vis},\n                                 {'title'  : names[i] + ' Linechart'}] })\n    i+=1\n    vis = [False] * 14\n\n\nfor df in df_list:\n    fig.add_trace(go.Scatter(x = df.index,\n                             y = df['Open'],\n                             mode = 'lines',\n                             marker =  dict(color = '#44eff2')), row=1, col=1)\n    \nfor df in df_list:\n    fig.add_trace(go.Bar(x = df.index,\n                         y = df['Volume'],\n                         marker =  dict(color = '#94afb0')), row=2, col=1)\n\nfig.update_xaxes(\n        tickfont = dict(size=15, family = 'monospace', color='#B8B8B8'),\n        tickmode = 'array',\n        ticklen = 6,\n        showline = False,\n        showgrid = True,\n        gridcolor = '#595959',\n        ticks = 'outside')\n\nfig.update_yaxes(\n        tickfont = dict(size=15, family = 'monospace', color='#B8B8B8'),\n        tickmode = 'array',\n        showline = False,\n        showgrid = True,\n        gridcolor = '#595959',\n        ticks = 'outside')    \n    \n    \nfig.update_layout(showlegend = False,\n                  height = 650,\n                  font_family   = 'monospace',\n                  xaxis         = dict(rangeselector = dict(buttons = date_buttons)),\n                  updatemenus   = [dict(type = 'dropdown',\n                                        x = 1,\n                                        y = 1.15,\n                                        showactive = True,\n                                        active = 0,\n                                        buttons = buttons)],\n                  title         = dict(text = 'Cryptocurrency Linechart Dashboard<br>with Volumes',\n                                       font = dict(color = '#FFFFFF'), \n                                       x = 0.5),\n                  plot_bgcolor  = '#1a253d',\n                  paper_bgcolor = '#1a253d',\n                  font          = dict(color='#858585'),\n                  annotations   = [dict(text = \"Choose Crypto :\",\n                                        font = dict(size = 10, color ='#44eff2'),\n                                        showarrow=False,\n                                        x = 1, y = 1.25,\n                                        xref = 'paper', yref = \"paper\",\n                                        align = \"left\"),                                \n                                   dict(text = \"<----DRAG HERE TO MOVE---->\",\n                                        font = dict(size = 10, color ='#44eff2'),\n                                        showarrow=False,\n                                        x = 0.5, y = 0.45,\n                                        xref = 'paper', yref = \"paper\",\n                                        align = \"left\")])\n\nfor i in range(1,14):\n    fig.data[i].visible = False\n\nfig.show()","metadata":{"_kg_hide-input":true,"execution":{"iopub.status.busy":"2021-11-20T02:13:42.143397Z","iopub.execute_input":"2021-11-20T02:13:42.144988Z","iopub.status.idle":"2021-11-20T02:13:43.102142Z","shell.execute_reply.started":"2021-11-20T02:13:42.144921Z","shell.execute_reply":"2021-11-20T02:13:43.101004Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Candlestick Charts with Indicators\n\n<div align=\"center\">\n  <img width=\"900\"  src=\"https://i.postimg.cc/cJYn0LyY/4.gif\">\n</div>","metadata":{}},{"cell_type":"code","source":"def indicators(df=None, title='Chart', symbol = 'Candlesticks'):\n    \n    layout1 = cf.Layout(height=1250,\n                  font_family   = 'monospace',\n                  xaxis         = dict( rangeselector = dict(buttons = date_buttons),\n                                        tickfont = dict(size=12, color='#d4d4d4'),\n                                        tickmode = 'array',\n                                        ticklen = 6,\n                                        showline = False,\n                                        showgrid = True,\n                                        gridcolor = '#595959',\n                                        ticks = 'outside'),\n\n                  yaxis         = dict(\n                                       tickfont = dict(size=15, color='#d4d4d4'),\n                                        tickmode = 'array',\n                                        showline = False,\n                                        ticksuffix = '$',\n                                        showgrid = True,\n                                        gridcolor = '#595959',\n                                        ticks = 'outside'),\n\n                  title         = dict(text = '{} chart<br>with Indicators'.format(title),\n                                       font = dict(color = '#FFFFFF'), \n                                       x = 0.5),\n                    \n                  legend        = dict(orientation=\"h\",\n                                       yanchor=\"bottom\", y=0.92,\n                                       xanchor=\"center\", x=0.5),\n                                       \n                  plot_bgcolor  = '#1a253d',\n                  paper_bgcolor = '#1a253d',\n                  font          = dict(color='#858585'),\n                  annotations   = [dict(text = \" \",\n                                        font = dict(size = 1, color ='white'),\n                                        showarrow=False,\n                                        x = 1, y = 1.25,\n                                        xref = 'paper', yref = \"paper\",\n                                        align = \"left\"),                                \n                                   dict(text = \"RSI\",\n                                        font = dict(size = 15, color ='white'),\n                                        showarrow=False,\n                                        x = 0.5, y = 0.62,\n                                        xref = 'paper', yref = \"paper\",\n                                        align = \"left\"),\n                                   dict(text = \"Volume\",\n                                        font = dict(size = 15, color ='white'),\n                                        showarrow=False,\n                                        x = 0.5, y = 0.38,\n                                        xref = 'paper', yref = \"paper\",\n                                        align = \"left\"),\n                                   dict(text = \"MACD\",\n                                        font = dict(size = 15, color ='white'),\n                                        showarrow=False,\n                                        x = 0.5, y = 0.14,\n                                        xref = 'paper', yref = \"paper\",\n                                        align = \"left\"),\n                                   dict(text = \"<-----SLIDER----->\",\n                                        font = dict(size = 15, color ='white'),\n                                        showarrow=False,\n                                        x = 0.5, y = -0.06,\n                                        xref = 'paper', yref = \"paper\",\n                                        align = \"left\")]\n                       )\n    \n    qf = cf.QuantFig(df, name = symbol, down_color='red')\n\n    qf.add_sma([100], width=2, color=['white'])\n\n    qf.add_rsi(periods=14, color='#b876b3')\n\n    qf.add_volume(color='#999999')\n\n    qf.add_macd(color = ['yellow', 'blue'])\n\n    qf.add_bollinger_bands(periods=20, boll_std=2 ,colors=['orange','grey'], fill=True)\n\n    qf.iplot(layout = layout1)","metadata":{"_kg_hide-input":true,"execution":{"iopub.status.busy":"2021-11-20T02:16:04.375548Z","iopub.execute_input":"2021-11-20T02:16:04.375875Z","iopub.status.idle":"2021-11-20T02:16:04.392025Z","shell.execute_reply.started":"2021-11-20T02:16:04.375842Z","shell.execute_reply":"2021-11-20T02:16:04.390649Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"indicators(bitcoin, title='Bitcoin', symbol='BTC')","metadata":{"execution":{"iopub.status.busy":"2021-11-20T02:25:00.139231Z","iopub.execute_input":"2021-11-20T02:25:00.139822Z","iopub.status.idle":"2021-11-20T02:25:02.214611Z","shell.execute_reply.started":"2021-11-20T02:25:00.139672Z","shell.execute_reply":"2021-11-20T02:25:02.213841Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"indicators(ethereum, title='Ethereum', symbol='ETH')","metadata":{"execution":{"iopub.status.busy":"2021-11-20T02:27:33.604057Z","iopub.execute_input":"2021-11-20T02:27:33.605111Z","iopub.status.idle":"2021-11-20T02:27:34.544166Z","shell.execute_reply.started":"2021-11-20T02:27:33.605056Z","shell.execute_reply":"2021-11-20T02:27:34.542794Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"indicators(litecoin, title='Litecoin', symbol='LTC')","metadata":{"execution":{"iopub.status.busy":"2021-11-20T02:28:59.995088Z","iopub.execute_input":"2021-11-20T02:28:59.995405Z","iopub.status.idle":"2021-11-20T02:29:00.936745Z","shell.execute_reply.started":"2021-11-20T02:28:59.995372Z","shell.execute_reply":"2021-11-20T02:29:00.936060Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"indicators(iota, title='IOTA', symbol='IOTA')","metadata":{"execution":{"iopub.status.busy":"2021-11-20T02:29:54.535834Z","iopub.execute_input":"2021-11-20T02:29:54.536328Z","iopub.status.idle":"2021-11-20T02:29:55.381019Z","shell.execute_reply.started":"2021-11-20T02:29:54.536293Z","shell.execute_reply":"2021-11-20T02:29:55.379805Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"indicators(bitcoin_cash, title='Bitcoin Cash', symbol='BCH')","metadata":{"execution":{"iopub.status.busy":"2021-11-20T02:30:45.902383Z","iopub.execute_input":"2021-11-20T02:30:45.902720Z","iopub.status.idle":"2021-11-20T02:30:46.872691Z","shell.execute_reply.started":"2021-11-20T02:30:45.902678Z","shell.execute_reply":"2021-11-20T02:30:46.871689Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"indicators(ethereum_classic, title='Ethereum Classic', symbol='Ξ')","metadata":{"execution":{"iopub.status.busy":"2021-11-20T02:31:38.917398Z","iopub.execute_input":"2021-11-20T02:31:38.917700Z","iopub.status.idle":"2021-11-20T02:31:39.888581Z","shell.execute_reply.started":"2021-11-20T02:31:38.917671Z","shell.execute_reply":"2021-11-20T02:31:39.887534Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"indicators(monero, title='Monero', symbol='XMR')","metadata":{"execution":{"iopub.status.busy":"2021-11-20T02:32:46.132944Z","iopub.execute_input":"2021-11-20T02:32:46.133264Z","iopub.status.idle":"2021-11-20T02:32:47.094844Z","shell.execute_reply.started":"2021-11-20T02:32:46.133236Z","shell.execute_reply":"2021-11-20T02:32:47.093644Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"indicators(dogecoin, title='Dogecoin', symbol='Ð')","metadata":{"execution":{"iopub.status.busy":"2021-11-20T02:34:04.194678Z","iopub.execute_input":"2021-11-20T02:34:04.194992Z","iopub.status.idle":"2021-11-20T02:34:04.923182Z","shell.execute_reply.started":"2021-11-20T02:34:04.194962Z","shell.execute_reply":"2021-11-20T02:34:04.922447Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"indicators(tron, title='TRON', symbol='TRON')","metadata":{"execution":{"iopub.status.busy":"2021-11-20T02:34:59.139088Z","iopub.execute_input":"2021-11-20T02:34:59.139925Z","iopub.status.idle":"2021-11-20T02:35:00.082491Z","shell.execute_reply.started":"2021-11-20T02:34:59.139868Z","shell.execute_reply":"2021-11-20T02:35:00.081349Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"indicators(eos_io, title='EOS.IO', symbol='EOS')","metadata":{"execution":{"iopub.status.busy":"2021-11-20T02:35:56.520858Z","iopub.execute_input":"2021-11-20T02:35:56.521169Z","iopub.status.idle":"2021-11-20T02:35:57.480136Z","shell.execute_reply.started":"2021-11-20T02:35:56.521129Z","shell.execute_reply":"2021-11-20T02:35:57.479183Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"indicators(binance_coin, title='Binance Coin', symbol='BNB ')","metadata":{"execution":{"iopub.status.busy":"2021-11-20T02:37:16.609455Z","iopub.execute_input":"2021-11-20T02:37:16.609837Z","iopub.status.idle":"2021-11-20T02:37:17.586751Z","shell.execute_reply.started":"2021-11-20T02:37:16.609798Z","shell.execute_reply":"2021-11-20T02:37:17.585728Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"indicators(stellar, title='Stellar', symbol='XLM')","metadata":{"execution":{"iopub.status.busy":"2021-11-20T02:38:23.602418Z","iopub.execute_input":"2021-11-20T02:38:23.602802Z","iopub.status.idle":"2021-11-20T02:38:24.534290Z","shell.execute_reply.started":"2021-11-20T02:38:23.602747Z","shell.execute_reply":"2021-11-20T02:38:24.533520Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"indicators(cardano, title='Cardano', symbol='ADA')","metadata":{"execution":{"iopub.status.busy":"2021-11-20T02:39:43.329779Z","iopub.execute_input":"2021-11-20T02:39:43.330328Z","iopub.status.idle":"2021-11-20T02:39:44.234925Z","shell.execute_reply.started":"2021-11-20T02:39:43.330290Z","shell.execute_reply":"2021-11-20T02:39:44.234041Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"indicators(maker, title='Maker', symbol='MAKE')","metadata":{"execution":{"iopub.status.busy":"2021-11-20T02:41:33.103148Z","iopub.execute_input":"2021-11-20T02:41:33.103526Z","iopub.status.idle":"2021-11-20T02:41:34.057957Z","shell.execute_reply.started":"2021-11-20T02:41:33.103481Z","shell.execute_reply":"2021-11-20T02:41:34.057067Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Thank you\n* Thanks for sitting through my notebook.\n* Hope you liked it.\n","metadata":{}}]}