CryptoCurrencies
CryptoCrurrency in italiano criptomoneta è una rappresentazione digitale di un valore basata sulla crittografia. In questo contesto vediamo l'andamento nel corso di un anno delle princiapali crypto in un grafico dove i valori delle quotazioni sono normalizzate.
La normalizzazione in matematica è il procedimento che consiste nel dividere tutti i termini per uno stesso valore, in questo caso il primo della sequenza, in modo che tutti i valori successivi rappresentino il rapporto di questi rispetto ad 1.
Applicando la normalizzazione a tutte le criptovalute riusciamo a vedere chairamente quale è stato l'andamento delle singole criptovalute e la differenza tra di esse.

Nelle immagini sottostanti ci sono prima un resoconto dei dati elaborati per per alcune criptomonete poi il grafico riepilogativo di tutte le cryptocurrencies analizzate poi 2 grafici individuali.







def normalizzazione(df):
x = df.copy()

for i in x.columns:
x[i] = x[i]/x[i][0]
return x
def graficoInterattivo(df, title):
fig = px.line(title = title ,template="simple_white" ,color = df.columns)
for col in df.columns:
fig.add_scatter(x = df.index, y = df[col], name = col )
fig.show()
%%sh
pip install -q dash
pip install -q dash_core_components
pip install -q dash_html_components
pip install -q dash_table
%%sh
# get ngrok
curl -O https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip
unzip ngrok-stable-linux-amd64.zip
# launch ngrok
get_ipython().system_raw('./ngrok http 8050 &')
%%sh
# get url with ngrok ### click sul link sottostante
curl -s http://localhost:4040/api/tunnels | python3 -c "import sys, json; print(json.load(sys.stdin)['tunnels'][0]['public_url'])"
import dash
from dash.dependencies import Input, Output
import dash_core_components as dcc
import dash_html_components as html

from pandas_datareader import data as web
from datetime import datetime as dt

app = dash.Dash('Analisi Crypto')

lista = []

for i in range(len(crypto.columns)-1):
i+=1
lista.append({ 'label' : crypto.columns[i] , 'value' : crypto.columns[i] })
app.layout = html.Div([
html.H3(children='Grafico interattivo Cripto by MecBar.com',
style={
'textAlign': 'center',
'color': 'white' ,
'background-color' : 'black' ,
'font-family' : 'Trebuchet MS',
} ),
html.Div(children=' Seleziona titolo: ' ,
style={
'color': '#f96b00' ,
'background-color' : '#004775' ,
'font-family' : 'Franklin Gothic Medium',
'font-size': '22px',
}
) ,
dcc.Dropdown(
id='Mec_dropdown',
options = lista,
value='BTC-USD'
),
dcc.Graph(id='Mec-graph')
], style={'width': '800',
'height' : '700px',
'background-color': 'white'})


@app.callback(Output('Mec-graph', 'figure'), [Input('Mec_dropdown', 'value')])

def update_graph(dropdown_scelto):
a = dropdown_scelto
selezione = crypto[a]
x = selezione.index
y = selezione
ll = {
'data': [{
'x': x,
'y': y
}],
'layout': {'margin': {'l': 20, 'r': 20, 't': 30, 'b': 30}}
}
return ll


app.run_server()