La version de python utilisée cette fois est la suivante.
python --version
Python 3.5.1 :: Anaconda 4.0.0 (x86_64)
Installez celui que vous utilisez cette fois.
pip install quandl
pip install pandas-datareader
pip install jsm
pip install stockstats
Tout d'abord, en conclusion, il y a autour de Quandl, pandas_datareader, jsm, et il semble bon d'utiliser Quandl, pandas_datareader. (Veuillez me dire s'il y a autre chose. Probablement.)
Quandl
La documentation officielle est ici. Je vais essayer d'obtenir le cours de l'action d'Apple pour le moment.
import quandl
d = quandl.get("WIKI/AAPL")
d.columns
# Index(['Open', 'High', 'Low', 'Close', 'Volume', 'Ex-Dividend', 'Split Ratio',
# 'Adj. Open', 'Adj. High', 'Adj. Low', 'Adj. Close', 'Adj. Volume'],
# dtype='object')
d.shape
# (9162, 12)
Il y a ici un mot mystérieux WIKI, qui est la source des données et est écrit dans Konohen.
Les données ressemblent à la date et à l'heure.
De plus, dans certains articles précédents, c'était ʻimport Quandl`, mais il semble qu'il soit devenu plus bas au milieu.
pandas_datareader [Documentation] officielle (https://pandas-datareader.readthedocs.io/en/latest/).
import pandas_datareader as pdr
d = web.DataReader("AAPL", 'google')
# Parameters
# ----------
# name : str or list of strs
# the name of the dataset. Some data sources (yahoo, google, fred) will
# accept a list of names.
# data_source: {str, None}
# the data source ("yahoo", "yahoo-actions", "yahoo-dividends",
# "google", "fred", "ff", or "edgar-index")
#Ce qui suit est omis
d.shape
(1831, 5)
d.columns
# Index(['Open', 'High', 'Low', 'Close', 'Volume'], dtype='object')
Apple est spécifié comme premier argument et google est spécifié comme source de données.
Les données sont également un modèle quotidien.
La période d'acquisition peut être spécifiée comme suit.
import pandas_datareader as pdr
import datetime
start = datetime.datetime(2015, 1, 1)
end = datetime.datetime(2017, 4, 12)
d = pdr.DataReader("AAPL", 'google', start, end)
d.shape
# (574, 5)
jsm Il est écrit que jsm a arrêté le développement en 2015 et récupère les données de yahoo. Yahoo est [ici](https://www.yahoo-help.jp/app/answers/detail/p/546/a_id/93575/~/yahoo%21%E3%83%95%E3%82%A1% E3% 82% A4% E3% 83% 8A% E3% 83% B3% E3% 82% B9% E6% 8E% B2% E8% BC% 89% E6% 83% 85% E5% A0% B1% E3% 81% AE% E8% 87% AA% E5% 8B% 95% E5% 8F% 96% E5% BE% 97% EF% BC% 88% E3% 82% B9% E3% 82% AF% E3% 83% AC% E3% 82% A4% E3% 83% 94% E3% 83% B3% E3% 82% B0% EF% BC% 89% E3% 81% AF% E7% A6% 81% E6% AD% A2% E3% 81% 97% E3% 81% A6% E3% 81% 84% E3% 81% BE% E3% 81% 99) dit que le grattage est interdit, et je pense qu'il vaut mieux ne pas l'utiliser. ..
stockstats Il existe des stocks comme un package pour falsifier les données financières acquises.
import stockstats
import quandl
d = quandl.get("WIKI/AAPL")
d.shape
# (9162, 12)
type(d)
# pandas.core.frame.DataFrame
stock = stockstats.StockDataFrame.retype(d)
type(stock)
# stockstats.StockDataFrame
stockstats remplace le type stockstats.StockDataFrame, qui est une extension du dataframe pandas par la méthode retype. En faisant cela, par exemple, le calcul MACD, etc.
stock['macd']
# Date
# 1980-12-12 0.000000
# 1980-12-15 -0.033654
# 1980-12-16 -0.104902
# 1980-12-17 -0.112351
C'est facile comme ça.
En regardant le code à l'intérieur, la clé de la trame de données passée à retaper est rendue inférieure par la fonction inférieure, il semble donc qu'elle absorbera la différence entre les majuscules et les minuscules, mais s'il n'y a pas de données que vous souhaitez calculer, ce sera une erreur clé. .. Par conséquent, lorsque vous utilisez des variables qui ne sont pas normalement utilisées ou lorsqu'il y a peu de variables, il peut être préférable d'écrire en pandas.
Recommended Posts