J'écrirai sur l'acquisition du prix des actions et le graphique des prix des actions (graphique à bougies) pour l'analyse du prix des actions. Mes rêves ne font que s'étendre, comme l'apprentissage en profondeur des données de séries chronologiques, mais cette fois, je vais collecter des outils pour étudier. Cependant, pardonnez-moi de faire des erreurs (surtout en termes économiques) car c'est un mémo que j'étudie.
Selon Wikipedia, le graphique en chandeliers est "une période unitaire est définie, le premier prix pendant la période unitaire est le prix d'ouverture, le dernier prix est le prix de clôture, le prix le plus élevé est le prix le plus élevé et le prix le plus bas est le prix le plus bas. Ces quatre prix (quatre valeurs) sont dessinés sur une seule figure en forme de barre appelée bougie, classée par ordre chronologique, et la fluctuation du cours de l'action est représentée sous forme de graphique. "(Référence: Wikipedia" Pied de bougie " Graphique "). La bougie rouge est le jour où le cours de l'action augmente enfin, et la bougie verte est le jour où le cours de l'action baisse finalement, ce qui permet de comprendre visuellement le mouvement vertical du cours de l'action. Maintenant, je vais vous expliquer comment créer ce graphique en chandeliers.
· Windows 8 ・ Anaconda 4.4.0 (Python3.6) ・ Installez "daytime" et "pandas_datareader" avec pip
Python3.6:GetStock.py
import datetime
import pandas_datareader.data as web
#Définition de la période
start = datetime.datetime(2017, 1, 1)
end = datetime.datetime(2017, 5, 30)
#Acquisition de stock
df = web.DataReader('TM', 'google', start, end)
df = toyota.drop('Volume', axis=1) #Effacer le volume de DataFrame
df = df.loc[:, ['Open', 'Close', 'High','Low']]
Python a une bibliothèque pour obtenir le cours de l'action, et si vous entrez la date de début, la date de fin, la société et le site pour obtenir les données en tant qu'arguments, elles seront renvoyées dans un format pouvant être utilisé par les pandas. Dans le cas de Google, le volume est également inclus dans les données, mais ce n'est pas nécessaire, alors supprimez-le (au fait, le volume est le nombre d'actions échangées). Enfin, triez les données. Les résultats sont présentés dans la figure ci-dessous, mais comme vous pouvez le voir, la relation entre les quatre valeurs n'est pas claire. Donc, enfin, je vais vous expliquer comment écrire un graphique en chandeliers.
Il existe également une bibliothèque de graphiques en chandeliers. La moitié supérieure est celle expliquée précédemment dans l'acquisition de données. Une fonction appelée "mpf.candlestick_ochl" est fournie, vous pouvez donc facilement créer un diagramme en entrant la date et les données correspondantes dans l'argument. Une grille est attachée pour améliorer la visibilité.
python3.6:RousokuasiChart.py
import numpy as np
import datetime
import pandas_datareader.data as web
import matplotlib.pyplot as plt
import matplotlib.finance as mpf
from matplotlib.dates import date2num
def main():
#Définition de la période d'acquisition des stocks
start = datetime.datetime(2017, 1, 1)
end = datetime.datetime(2017, 5, 30)
#Acquisition de stock
df = web.DataReader('TM', 'google', start, end)
df = toyota.drop('Volume', axis=1) #Effacer le volume de DataFrame
df = df.ix[:, ['Open', 'Close', 'High','Low']]
#Création d'image
fig = plt.figure()
ax = plt.subplot()
xdate = [x.date() for x in df.index] #Date
ochl = np.vstack((date2num(xdate), df.values.T)).T
mpf.candlestick_ochl(ax, ochl, width=0.7, colorup='g', colordown='r')
ax.grid() #Affichage de grille
ax.set_xlim(df.index[0].date(), df.index[-1].date()) #plage de l'axe des x
fig.autofmt_xdate() #mise en forme automatique sur l'axe des x
plt.savefig('rousokuasi_chart.png')#Enregistrer l'image
if __name__ == '__main__':
main()
L'exécution de ce programme complète le graphique en chandeliers que vous avez vu pour la première fois.
http://qiita.com/ynakayama/items/420ebe206e34f9941e51
http://qiita.com/akichikn/items/782033e746c7ee6832f5
http://qiita.com/toyolab/items/1b5d11b5d376bd542022