AlphaVantage API фондовые индексы

Я использую python и его фреймворк для создания проекта frontEnd backEnd. Проекту нужны данные о запасах. Я использовал Api от Yahoo до того, как он перестал работать, и теперь я использую Alpha Vantage API. Это работает довольно хорошо, но у меня возникают трудности с индексами фондового рынка, такими как Nasdaq, Dow Jones... с Yahoo, я использовал их тикеры (например, символы) (^IXIC, ^DJI...), но, похоже, не работает с альфа-выгодой. Кто-нибудь работал с альфа вэнджетом?

Пример URL для получения данных для Microsoft:
https://www.alphavantage.co/query?function=TIME_SERIES_DAILY_ADJUSTED&symbol=MSFT&outputsize=full&apikey=CN3J

Код Python:

@app.route('/pfa/medaf/IndAct', methods = ['POST'])
def donnee():
Action1 = request.form['code1']
Action2 = request.form['code2']
Indice = request.form['Ind']

url="https://www.alphavantage.co/query?function=TIME_SERIES_DAILY_ADJUSTED&symbol="
urlInd=url+Indice+"&apikey=CN3J"
urlAct1=url+Action1+"&apikey=CN3J"
urlAct2=url+Action2+"&apikey=CN3J"

respInd = urlopen(urlInd)
dataInd = json.loads(respInd.read().decode(respInd.info().get_param('charset') or 'utf-8'))

coursIndice=[]
listInd=[]
for elt in dataInd['Time Series (Daily)'].keys():
    listInd.append(elt)
listInd.sort(reverse=True)
for e in listInd:
    coursIndice.append(float(dataInd['Time Series (Daily)'][e]['4. close']))

lenIndice = len(coursIndice)

rentabIndice=[]
for j in range(lenIndice-1):
    rentabIndice.append(100*(coursIndice[j+1]/coursIndice[j] -1 ))

moyenneMarche=sum(rentabIndice)/len(rentabIndice)

HTML код:

<section class="cols pad_left1">
    <form action = "http://localhost:5000/pfa/medaf/IndAct" method = "post">
    Tickers:
    <input type = "text" name = "code1" placeholder="Ticker here"><br>
    <input type = "text" name = "code2" placeholder="Ticker here"><br><br>
    Indice:<br>
    <select name="Ind" size="1" >
    <option   value="^IXIC" > NASDAQ Composite    </option>
    <option   value="^FCHI" > CAC40    </option>
    <option   value="^DJI" > Dow Jones</option>
    </select><br><br>
    <input type = "submit" value = "submit" />
    </form>
</section>

2 ответа

У меня есть библиотека python для alphavantage (MIT лицензирована) https://github.com/RomelTorres/alpha_vantage вы можете взглянуть. Я поделился некоторыми примерами того, как работать с библиотекой.

Я смог получить данные для индексов, используя пример URL в вашем вопросе и мой ключ со следующими изменениями:

Используйте IXIC вместо ^IXIC. Используйте DJI вместо ^DJI. Используйте FCHI вместо FCHI.

например, https://www.alphavantage.co/query?function=TIME_SERIES_DAILY_ADJUSTED&symbol=FCHI&outputsize=full&apikey=

По сути, просто удалите префикс карат (^) из символа.

Вы можете подключиться к временному ряду, импортировав его

import pandas as pd
from alpha_vantage.timeseries import TimeSeries
import time
ts = TimeSeries (key=api_key, output_format = "pandas")
daily_results = ts.get_daily_adjusted(symbol="MSFT")
print(daily_results)

Или для других вещей, таких как баланс и т. Д.

 base_url = 'https://www.alphavantage.co/query?'
 params = {'function': 'INCOME_STATEMENT',
     'symbol': stock_ticker,
     'apikey': keys}
 response_data_income = requests.get(base_url, params=params)

 data_income_annual_last_fiscalDateEnding = 
 response_data_income.json()['annualReports'][0]['fiscalDateEnding']
Другие вопросы по тегам