Wilt u beursgegevens ophalen met behulp van Python? U bent op de juiste plek. In dit artikel leert u hoe u beursgegevens kunt verkrijgen met behulp van Python. U kunt de gegevens verder gebruiken om te analyseren, te visualiseren en er inzichten uit te halen.
Je gebruikt de yfinanciën Python-bibliotheek om de huidige en historische beurskoersgegevens van Yahoo Finance te krijgen.
Vereiste bibliotheken installeren
Yahoo Financiën is een van de meest gebruikte platforms die beursgegevens levert. U kunt de dataset eenvoudig van hun website downloaden, maar als u deze rechtstreeks vanuit een Python-programma wilt openen, kunt u de yfinanciën bibliotheek. Om yfinance te installeren met behulp van pip, moet u de volgende opdracht uitvoeren bij een opdrachtprompt:
Pip installeren yfinanciën
De yfinance Python-bibliotheek is gratis te gebruiken en vereist geen API-sleutel.
De code die in dit project wordt gebruikt, is beschikbaar in een GitHub-opslagplaats en is gratis voor u om te gebruiken onder de MIT-licentie.
Ontvang actuele aandelenkoersgegevens
U moet de ticker hebben van het aandeel waarvoor u de gegevens wilt extraheren. In het volgende voorbeeld zoeken we de marktprijs en de vorige slotkoers voor GOOGL.
importeren yfinanciën als yf
tikker = yf. Ticker('GOOGL').info
marktprijs = ticker['reguliereMarktPrijs']
vorige_close_price = ticker['regularMarktVorigeSluiten']
afdrukken('Tikker: GOOGL')
afdrukken('Marktprijs:', marktprijs)
afdrukken('Vorige slotkoers:', vorige_close_price)
Dit levert de volgende uitvoer op:
Dit voorbeeld gebruikt de reguliereMarktPrijs En regularMarktVorigeSluiten eigenschappen om de vereiste gegevens te krijgen. De yfinance-bibliotheek biedt tal van andere eigenschappen die u kunt verkennen. Deze omvatten postcode, sector, fullTimeEmployees, longBusinessSummary, stad, telefoon, staat en land. U kunt de volledige lijst met beschikbare eigenschappen verkrijgen met behulp van deze code:
importeren yfinanciën als yf
tikker = yf. Ticker('GOOGL').info
afdrukken(ticker.keys())
Ontvang historische aandelenkoersgegevens
U kunt alle historische prijsgegevens krijgen door de startdatum, einddatum en ticker op te geven.
# Het yfinance-pakket importeren
importeren yfinanciën als yf# Stel de begin- en einddatum in
begindatum = '2020-01-01'
einddatum = '2022-01-01'# Stel de ticker in
tikker = 'GOOGL'# Haal de gegevens op
data = yf.download (ticker, startdatum, einddatum)
# Druk de laatste 5 rijen af
afdrukken(gegevens.staart())
Dit levert de volgende uitvoer op:
De bovenstaande code haalt de aandelenkoersgegevens op van 01-01-2020 tot 01-01-2022.
Als u gegevens van meerdere tickers tegelijk wilt ophalen, kunt u dit doen door de tickers op te geven in de vorm van een door spaties gescheiden tekenreeks.
importeren yfinanciën als yf
begindatum = '2020-01-01'
einddatum = '2022-01-01'
# Voeg hier meerdere door spaties gescheiden tickers toe
tikker = 'GOOGL MSFT TSLA'
data = yf.download (ticker, startdatum, einddatum)
afdrukken(gegevens.staart())
Gegevens transformeren voor analyse
In de bovenstaande dataset, Datum is de index van de dataset en niet een kolom. Om een gegevensanalyse op deze gegevens uit te voeren, moet u deze index naar een kolom converteren. Hieronder ziet u hoe u dat kunt doen:
importeren yfinanciën als yf
begindatum = '2020-01-01'
einddatum = '2022-01-01'
tikker = 'GOOGL'
data = yf.download (ticker, startdatum, einddatum)
gegevens["Datum"] = data.indexgegevens = gegevens[["Datum", "Open", "Hoog",
"Laag", "Dichtbij", "Adj Sluiten", "Volume"]]
gegevens.reset_index(druppel=WAAR, plaats=WAAR)
afdrukken(data.head())
Dit levert de volgende uitvoer op:
Deze getransformeerde gegevens zijn dezelfde als de gegevens die u zou hebben gedownload van Yahoo Finance.
De ontvangen gegevens opslaan in een CSV-bestand
Jij kan exporteer een DataFrame-object naar een CSV-bestand de... gebruiken naar_csv() methode. Aangezien de bovenstaande gegevens al de vorm hebben van een pandas DataFrame, kunt u de gegevens met de volgende code naar een CSV-bestand exporteren:
importeren yfinanciën als yf
begindatum = '2020-01-01'
einddatum = '2022-01-01'
tikker = 'GOOGL'
data = yf.download (ticker, startdatum, einddatum)
afdrukken(gegevens.staart())
# Gegevens exporteren naar een CSV-bestand
gegevens.naar_csv("GOOGL.csv")
Pandas is de veelgebruikte data-analyse Python-bibliotheek. Als je je niet zo op je gemak voelt met deze bibliotheek, moet je ermee aan de slag gaan basisbewerkingen met behulp van Panda's.
Visualiseer de gegevens
De yfinance Python-bibliotheek is een van de handigste bibliotheken om gegevens in te stellen, gegevens op te halen en gegevensanalysetaken mee uit te voeren. U kunt deze gegevens gebruiken om resultaten te visualiseren en inzichten vast te leggen met behulp van bibliotheken zoals Matplotlib, Seaborn of Bokeh.
U kunt deze visualisaties zelfs rechtstreeks op een webpagina weergeven met behulp van PyScript.