Ce sera la troisième fois. Cette fois, je vais faire quelque chose qui semble être la moyenne Nikkei du sujet. Tout d'abord, lisez les données csv comme d'habitude.
import pandas as pd
%matplotlib inline
import matplotlib.pyplot as plt
import seaborn as sns
from sklearn import datasets
plt.style.use('ggplot') #la magie
font = {'family' : 'meiryo'}
nikkei = pd.read_csv("nikkei.csv", parse_dates=['Date de données']) #Lire les données csv
nikkei.head() #Jetez un œil à l'aperçu
Tout d'abord, calculons le taux de fluctuation des revenus de date et d'heure et montrons-le dans la figure.
nikkei['Day. Change P'] = (nikkei['le dernier prix'] - nikkei['Prix ouvert']) / nikkei['Prix ouvert'] #Calculer la date et l'heure du taux de fluctuation des revenus
plt.figure(figsize=(22, 8))
plt.hist(nikkei['Day. Change P'], bins = 100)
Je me sens comme cela. C'est une distribution presque normale. Il semble qu'il y ait de nombreux jours où la moyenne du Nikkei ne fluctue pas beaucoup. Veuillez utiliser votre propre jugement pour l'analyse. Je veux dire, j'ai pu le faire comme ça ...
Ensuite, comment rédiger un graphique en bougies. C'était étonnamment facile. Il y a quelque chose qui est juste.
import plotly.graph_objs as go
from plotly.offline import download_plotlyjs, init_notebook_mode, plot, iplot
#Create OHLC (open-high-low-close) charts
trace = go.Ohlc(x = nikkei['Date de données'],
open = nikkei['Prix ouvert'],
high = nikkei['Prix élevé'],
low = nikkei['Bas prix'],
close = nikkei['le dernier prix'])
data = [trace]
iplot(data)
Enfin, calculons et traçons la moyenne mobile.
nikkei['5dayma'] = nikkei['le dernier prix'].rolling(window = 5).mean()
nikkei['25dayma'] = nikkei['le dernier prix'].rolling(window = 25).mean()
nikkei['50dayma'] = nikkei['le dernier prix'].rolling(window = 50).mean()
nikkei.tail()
Calculons comme ci-dessus et ajoutons-le à la trame de données. Ici, avec .head (), il est difficile de confirmer que '5dayma' est calculé uniquement le 5ème jour en affichant NaN du 1er au 4ème jour, il est donc difficile de confirmer s'il peut être calculé correctement, donc .tail () J'utilise.
trace_close = go.Scatter(x = nikkei['Date de données'][-200:],
y = nikkei['le dernier prix'][-200:],
name = "close",
line = dict(color = '#000000'), #Faites-en une ligne noire
opacity = 0.8)
trace_5day = go.Scatter(x = nikkei['Date de données'][-200:],
y = nikkei['5dayma'][-200:],
name = "5day",
opacity = 0.8)
trace_25day = go.Scatter(x = nikkei['Date de données'][-200:],
y = nikkei['25dayma'][-200:],
name = "25day",
opacity = 0.8)
trace_50day = go.Scatter(x = nikkei['Date de données'][-200:],
y = nikkei['50dayma'][-200:],
name = "50day",
opacity = 0.8)
data = [trace_close, trace_5day, trace_25day, trace_50day]
layout = dict(title = "Moving averages:5, 25, 50 for 200days", )
fig = dict(data = data, layout=layout)
iplot(fig)
Il s'est avéré être quelque chose comme ça. À noter, lors de la définition de chaque axe, découpez-le en "[-200:]" et affichez 200 jours. Vous n'êtes pas obligé de le faire car cela met simplement en valeur l'apparence. Dans ce cas, ce sera toute la période.
Par rapport à la carte thermique précédente, cette fois, nous en avons une décente. Je n'ai pas encore fait grand chose, mais j'espère pouvoir jouer un peu plus avec ce ** Nikkei Average **.
Recommended Posts