11
import yfinance as yf

stock = yf.Ticker("ABEV3.SA")

data1= stock.info


print(data1)

有“出价”和“要价”,但没有实际股价。

4

9 回答 9

18

我使用这个过滤组合只得到最后一个报价。

tickers = ['ABEV3.SA']
for ticker in tickers:
    ticker_yahoo = yf.Ticker(ticker)
    data = ticker_yahoo.history()
    last_quote = (data.tail(1)['Close'].iloc[0])
    print(ticker,last_quote)
于 2020-05-19T13:30:41.220 回答
7

此方法返回我测试中的最新值。

def get_current_price(symbol):
    ticker = yf.Ticker(symbol)
    todays_data = ticker.history(period='1d')
    return todays_data['Close'][0]

print(get_current_price('TSLA'))
于 2021-01-26T19:22:43.527 回答
7

尝试这个:

import yfinance as yf

stock = yf.Ticker("ABEV3.SA")
price = stock.info['regularMarketPrice']
print(price)
 
于 2021-06-21T13:29:19.680 回答
2

要获得最后收盘价,请使用以下命令:

import yfinance as yf

tickerSymbol = 'AMD'

tickerData = yf.Ticker(tickerSymbol)
todayData = tickerData.history(period='1d')
todayData['Close'][0] #use print() in case you're testing outside a interactive session
于 2021-04-12T19:36:30.383 回答
1

尝试这个:

import datetime
import yfinance as yf
now = datetime.datetime.now().strftime("%Y-%m-%d")
data = yf.Ticker("ABEV3.SA")
data = data.history(start="2010-01-01",  end=now)
print(df)
于 2021-01-06T02:36:27.500 回答
0

下面的代码将获取符号列表的当前价格并将所有结果添加到字典中。

import yfinance as yf

symbols = ["TSLA", "NIO"]
result = {}
for symbol in symbols:
    data = yf.Ticker(symbol)
    today_data = data.history(period='1d')
    result[symbol] = round((today_data['Close'][0]),2)
print(result)
于 2021-03-02T04:03:45.487 回答
0

yfinance具有下载功能,可让您下载指定时期的股票价格数据。例如,我将使用您想要数据的相同股票。

import yfinance as yf
data = yf.download("ABEV3.SA", start="2020-03-01", end="2020-03-30")

上面的行下载指定日期为 3 月的数据。

数据将是一个熊猫数据框,因此您可以直接使用它进行操作。

希望这可以帮助。

于 2020-04-08T15:40:30.057 回答
0

买入价和卖出价实际上是交易所的报价。买入价是做市商为购买股票而准备支付的价格,卖出价是做市商在卖出前要求的价格。点差是买入价和卖出价之间的差额。

通常所说的股票价格是买入价和卖出价的平均值。如何计算平均值取决于交易所。如果您的 Feed 没有提供交易所提供的中间价格,那么出于许多目的,取出价和询价的平均值就足够了。

开盘价和收盘价也由交易所决定,可能不是第一个或最后一个交易,而是第一个或最后 15 分钟交易的平均值,或者可能包括盘后价格。

LSE 如何指定代码数据的一些细节: LSE 代码数据

而且,如果您想深入了解细节,请详细了解如何匹配订单并生成价格数据:

伦敦证券交易所SETSmm的白痴指南

于 2021-01-14T20:43:38.917 回答
-6

好的,所以您想获取当前(最新)值。
这相对简单,只需一行即可获取stock1 天的历史记录。

symbol = "AAPL"
stock = yf.Ticker(symbol)
latest_price = stock.history(period='1d')['Close'][0]

# Completely optional but I recommend having some sort of round(er?).
# Dealing with 148.60000610351562 is a pain.
estimate = round(latest_price, 2) 

print (estimate)

您还应该将它放在一个函数中以使其更通用。

注意:我之前的回答建议使用 AlphaAdvantage,它仍然是桌面上的一个选项,但限制为每分钟 5 个请求。我改变了我的答案,但你可以在这里得到一个 TL;DR:
使用requestsand json,拉数据,格式,列表理解(?)

我知道有比这更好的答案,并且可能与此非常相似,这只是我喜欢的个人方法。

于 2020-04-08T15:37:17.220 回答