Diskusjon Triggere Porteføljer

Hvordan henter (scraper) dere data om selskaper på Oslo Børs fra nettet?

Hei!

Intro
Jeg holder på å utvikle noe programvare for å håndtere og visualisere porteføljen min, men det har vært mye problemer på veien. Når det gjelder selskaper “over dammen” er dette mye lettere da det finnes mange gode API jeg kan bruke for å hente den informasjonen jeg trenger. For Oslo Børs derimot er dette verre. Jeg har vært i kontakt med både Nordnet (som jeg bruker) og Oslo Børs med forespørsel om API, men uten hell. Nordnet sier svenske kunder har tilgang til API, men det er ikke tilgjengelig for norske kunder atm. Oslo Børs har ikke eksternt API i det hele tatt…

Spørsmål
Til de av dere som driver med algoritme trading eller annen form for software - hvor / hvordan henter dere live og historisk data om selskaper på Oslo Børs? :slight_smile:

På forhånd tusen takk for svar og hjelp!!!

  • jtfidje
3 Likes

Netfonds er fint for forsinkede kurser, men live er verre! Oslo Børs skulle ha rundt 200 000 kr i året sist jeg spurte.

Du kan scrape forsinkede kurser fra mange børser via http://www.netfonds.no/quotes/kurs.php, velg CSV i nedtrekksmenyen “Layout” for å få en fin liste:
http://www.netfonds.no/quotes/kurs.php?exchange=OSE&sec_types=&sectors=&ticks=&table=tab&sort=alphabetic&tabell=Oppdater

2 Likes

Man kan laste ned historiske data fra netfonds ganske lett med python, og sikkert andre språk. Legger ved python scriptet jeg lagde en gang i tiden for dette som en txt fil.

Laster her først ned en komplett liste over selskapene for så å bruke denne til å laste ned alle de historiske filene. Den lager en folder som heter “_historical” hvis den ikke eksisterer og lagrer alle filene her. Trenger “Pandas” biblioteket for å kjøre scriptet.

historical.txt (1.1 KB)

3 Likes

Haha what?! 200 000 var jo helt vilt!

Men dette var kjempemessig! Denne her URL’en er en veldig god start for historisk data tenker jeg:
http://www.netfonds.no/quotes/paperhistory.php?paper=BGBIO.OSE&csv_format=csv

Så kan bare Python bytte litt på ticker og gjøre nye requester. Tusen takk for hjelp :slight_smile:

1 Like

http://www.netfonds.no/api.php

Netfonds API er et API for å hente ut kursdata og sende børsordre fra egenutviklede klienter. For å få tilgang til APIet må du være en registrert bruker og fylle ut API-avtalen som finnes under avtaler/fullmakter på kontoen din. API-tilgang koster ikke noe ekstra utover sanntidsabonnement med fulle dybder på børsene du vil hente kurser fra. Data som hentes ut fra APIet er i utgangspunktet kun ment for personlig bruk.

Interessant tråd!
Har prøvd meg litt på skraping en gang på noe annnet…
Må lære mer.
Noen som har noen tips om Phyton for idioter, eller noe sånt?

Se her ja. Veldig greit. Sendte dem en mail og spurte om det går å få tilgang på historisk data uten å måtte betale. Takk for tips!

2 Likes

For Netfonds forsinkede kurser: https://github.com/ntftrader/ntfdl

Hei så bra! Utrolig mye bra Python tutorials på YouTube man kan se på. Hvis du liker bøker anbefaler jeg deg å bare kjøpe inn et par fra Amazon - gjør et søk på google etter gode, nye bøker :slight_smile: I tillegg er det veldig viktig å prøve å bruke Python så mye som mulig. Finn små problemer du kan løse, selv om det faktisk ender opp med å ta lengre tid med Python enn det ville gjort manuelt. For eksempel brukte jeg Python i år til å gå igjennom alle mine bompasseringer i forbindelse med jobb slik at jeg kunne føre riktig beløp inn i skattemeldingen. Gull for å lære seg mer :slight_smile:

2 Likes

Ønsker man tilgang til enda flere kurser så kan dette hentes via https://www.alphavantage.co/documentation/
Lurer du på ticket så kan du søke det opp på Yahoo Finance

1 Like

Du kan få historiske kurser fra Oslo Børs sine nettsider.

Gå til selskapssiden,
https://www.oslobors.no/ob_eng/markedsaktivitet/#/details/AKER.OSE/overview,
velg tidsrom i grafen og trykk Download.
Der får du Close, Low og High. Vet ikke hvorfor de ikke har Open, men klarer du deg uten så er det greit og enkelt.

Åpnet i Excel:

Ut fra dette inlegget virker det som om Hegnar har tatt over vedlikeholdet for Netfonds gamle API. Om du har et program som scraper ser det ut til å holde å bytte domenet fra www.netfonds.no til quotes.hegnar.no, i alle fall gjorde det det for meg.

3 Likes

Noen som har tips nå som både Netfonds og quotes.hegnar.no er fjernet? Virker ikke som at Nordnet har fått noen tilfredsstillende løsning på dette…

Jeg har et veldig enkelt program som henter siste aksjekurs som er tilgjengelig fra Oslo Børs sine nettsider for et utvalg aksjer, og skriver det til en fil jeg så importerer i et regneark jeg har for å holde oversikt.

Etter litt inspeksjon av nettsidene til Oslo Børs, fant jeg noen webrequester som returnerer de dataene jeg var interessert i som json-data, så jeg kaller bare de url-ene fra programmet mitt og parser json-dataene jeg får tilbake.

Eksempel-url for DNB:
https://www.oslobors.no/ob/servlets/components?type=quote&source=feed.ob.quotes.INSTRUMENTS&leftjoin=&tradesSource=feed.ob.trades.INSTRUMENTS&columns=ITEM%2C+ITEM_SECTOR%2C+SECTOR%2C+BID%2C+ASK%2C+LASTNZ_DIV%2C+TIME%2C+TRADE_TIME%2C+CLOSE_LAST_TRADED%2C+HIGH%2C+LOW%2C+CHANGE_PCT_SLACK%2C+MARKET_CAP%2C+PERIOD%2C+TURNOVER_TOTAL&filter=ITEM_SECTOR%3D%3DsDNB.OSE&channel=751b9f7ba25a33b57e2ada4f2adddb32

For min del holdt det med informasjonen jeg får fra denne requesten, men det kan godt være du må gjøre flere requester for å få den informasjonen du er ute etter.

5 Likes

Sist jeg skulle gjøre noe kjapt med Python så brukte jeg dette for å hente data fra Yahoo Finance. Fungerte veldig greit. https://github.com/ranaroussi/yfinance

1 Like

Jobber litt med JSON filer for tiden og fant nylig cli verktøyet jq -utolrig kjekt hvis du skal hente bestemt info ut av en eller flere json filer.
jq link https://stedolan.github.io/jq/

2 Likes

Hvordan klarte du å finne denne url-en? Jeg trenger noe tilsvarende, men for fond. Ser at Oslo børs har kurs-info om dette, f.eks. her:
www.oslobors.no/markedsaktivitet/#/details/DK-GLBIX.OSE/overview
Men jeg trenger å hente ned historikk…

@vfdsvbafsdaf Jeg brukte Developer tools i Google Chrome til å se på de forskjellige web-requestene som gjøres når man laster siden. (Du finner tilsvarende developer tools i de fleste browsere nå for tiden.)
Developer tools åpnes med F12 eller Ctrl + Shift + i. Last siden på nytt, og gå til Network-fliken. Der kan du trykke på requestene og få opp detaljer om hver enkelt. Jeg valgte å filtrere på bare XHS-requester for å gjøre listen mer overkommelig. Inne på hver request så er det Response-fliken som viser dataene du får fra serveren.
På denne måten fant jeg den requesten som ga meg de dataene jeg ville ha, og dermed trengte jeg bare å kalle akkurat den url-en i stedet for å laste hele siden. :slight_smile:

har ikke nordnet egen api allerede da? trodde den var populær hos svenskene.