2017-07-31 11 views
0

J'utilise activement le module de financement fixe yahoo par Ran Aroussi (https://pypi.python.org/pypi/fix-yahoo-finance) pour recueillir des cotations boursières (quotidiennes). Cela se fait par le morceau de code suivant:module fix_yahoo_finance (fix-yahoo-finance 0.0.18) - obtenir des données pour toutes les dates disponibles

data = yf.download(ticker, start=start_date, end=end_date) 

Ma question est bien, est-il un moyen efficace pour obtenir toutes les données disponibles sans fournir une date de début et de fin?

Ainsi, à titre d'exemple, supposons que MSFT aurait des données sur une période de période de 1990 - maintenant, je voudrais obtenir toutes ces données, sans avoir à fournir une date de début en 1990.

+0

Mais si vous ne fournissez pas de date de début ... comment sait-il quand commencer? Tu veux dire que tu veux juste tout? –

+0

Salut Jack, oui, je voudrais obtenir tout - de préférence sans un retard significatif. Je me demandais s'il y avait quelque chose dans le module qui pourrait permettre cela, car je ne pouvais pas le trouver. – Willem

Répondre

0

De l'documentation , les paramètres décrivant requis:

# start date (YYYY-MM-DD/datetime.datetime object) 
# (optional, defaults is 1950-01-01) 
start = "2017-01-01", 

Je devine que vous pouvez simplement laisser le start et il serait param par défaut à 1950, que je suppose est la première date à enregistrement.

+0

Salut Jack, malheureusement je reçois cette erreur, où eeend = datetime.datetime.today(): 'Traceback (dernier appel dernier): Fichier" E: \ Prix \ #yahoo api.py ", ligne 9, en data = yf.download (itick, end = eeend) Fichier "C: \ Python34 \ lib \ paquets \ fix_yahoo_finance \ __ init__.py", ligne 141, en téléchargement start = int (time.mktime (time. strptime ('1950-01-01', '% Y-% m-% d'))) OverflowError: argument mktime hors de portée ' – Willem

+0

Je ne vois pas ce que cette erreur "est, mais si vous savez ce que le date de début est ("1950-01-01") vous pourriez simplement passer cela comme la date de 'start' et vous obtiendrez toutes les données disponibles –

+0

J'ai essayé de mettre' start' à '2000-01-01', cela fonctionne très bien, cependant si je le mets à '1950-01-01' j'obtiens cette erreur: 'Fichier 'C: \ Python34 \ lib \ s ite-packages \ fix_yahoo_finance \ __ init__.py ", ligne 145, en téléchargement start = int (time.mktime (temps.strptime (str (début), '% Y-% m-% d'))) OverflowError: mktime argument out of range' – Willem