本文整理汇总了Python中yahoo_finance.Share.get_percent_change方法的典型用法代码示例。如果您正苦于以下问题:Python Share.get_percent_change方法的具体用法?Python Share.get_percent_change怎么用?Python Share.get_percent_change使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类yahoo_finance.Share
的用法示例。
在下文中一共展示了Share.get_percent_change方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: __init__
# 需要导入模块: from yahoo_finance import Share [as 别名]
# 或者: from yahoo_finance.Share import get_percent_change [as 别名]
class Market:
__PULL_INTERVAL_IN_MIN = 5
def __init__ (self, s):
self.share_string = s
self.share = Share(s)
self.current_price = self.share.get_price()
self.price = self.current_price
self.market_cap = self.share.get_market_cap()
self.open_price = self.share.get_open()
self.prev_close_price = self.share.get_prev_close()
self.percent_change = self.share.get_percent_change()
self.price_array = []
self.time_array = []
def pullPrices(self):
file_string = "share_" + self.share_string + ".dat"
dataFile = open(file_string, "w+")
start_time = int(time.strftime("%-S"))
last_time = start_time
while (1 == 1):
current_time = int(time.strftime("%-S"))
if (current_time >= 60):
current_time = 0
if (current_time - last_time < 0):
last_time = -60 - (current_time - last_time)
if (int(time.strftime("%-S")) - last_time >= self.__PULL_INTERVAL_IN_MIN):
dataFile.write (time.strftime('%l:%M%p, %b %d, %Y') + "\t")
dataFile.write (self.share.get_price())
dataFile.write ("\n")
dataFile.flush ()
last_time = int(time.strftime("%-S"))
def __storeData(self, filename):
dataFile = open(filename, "r")
lineList = dataFile.readLines()
for i in range(len(lineList)):
index1 = lineList[i].index('\t')
price = float(lineList[i][index1:])
price_array.append(price)
dataFile.close()
def getSlope(self, filename):
__storeData(filename)
length = len(self.price_array)
current_slope = (self.price_array[length] - self.price_array[length-1])/(self.time_array[length] - self.time_array[length-1])
return current_slope
def getSecondDegreeSlope(self, filename):
__storeData(filename)
length = len(price_array)
current_slope = (self.price_array[length] - self.price_array[length-1])/(self.time_array[length] - self.time_array[length-1])
last_slope = (self.price_array[length-1] - self.price_array[length-2])/(self.time_array[length-1] - self.time_array[length-2])
current_secondDegreeSlope = (current_slope - last_slope)/(self.time_array[length] - self.time_array[length-1])
return current_secondDegreeSlope
示例2: get_info
# 需要导入模块: from yahoo_finance import Share [as 别名]
# 或者: from yahoo_finance.Share import get_percent_change [as 别名]
def get_info(ticker):
# rjson = get_json(ticker)
info = {}
try:
stock = Share(ticker)
# 0: Get name
url = "http://d.yimg.com/autoc.finance.yahoo.com/autoc?query={}®ion=1&lang=en".format(ticker)
print("Ticker: ", ticker)
result = requests.get(url).json()
for x in result['ResultSet']['Result']:
if x['symbol'] == ticker:
info['name'] = truncate(x['name'])
if info['name'] == "" or info['name'] == None:
raise ValueError('Did not obtain a real value!')
# 1: Get price
# info['price'] = float(rjson[0][u'l'])
info['price'] = get_price(ticker)
if info['price'] == 0 or info['price'] == None:
raise ValueError('Did not obtain a real value!')
# 2: Get datetime
# info['datetime'] = rjson[0][u'lt']
info['datetime'] = getdatetime(ticker)
if info['datetime'] == "" or info['datetime'] == None:
raise ValueError('Did not obtain a real value!')
# 3: Get gain
# change = rjson[0][u'c']
# if change is None:
# info['gain'] = 0
# c = change.split("+")
# if (len(c) > 1):
# info['gain'] = float(c[1])
# info['gain'] = float(change)
change = stock.get_change()
if change is None:
info['gain'] = 0
else:
info['gain'] = float(stock.get_change())
if info['gain'] == None:
raise ValueError('Did not obtain a real value!')
# 4: Get percent change
# info['percentchange'] = float(rjson[0][u'cp'])
try:
percentChange = stock.get_percent_change()
percentChange = percentChange.split("%")[0]
if len(percentChange.split("+")) > 1:
percentChange = percentChange.split("+")[1]
elif len(percentChange.split("-")) > 1:
percentChange = percentChange.split("-")[1]
info['percentchange'] = float(percentChange)
except:
info['percentchange'] = stock.get_percent_change()
if info['percentchange'] == None:
raise ValueError('Did not obtain a real value!')
except:
if db.session.query(Stock).filter_by(ticker = ticker).count() > 0:
found_stock = db.session.query(Stock).filter_by(ticker = ticker).first()
info['name'] = found_stock.name
info['price'] = found_stock.price
info['datetime'] = found_stock.datetime
info['gain'] = found_stock.change
info['percentchange'] = found_stock.percentChange
else:
info['name'] = "N/A"
info['price'] = 0.00
info['datetime'] = "N/A"
info['gain'] = 0.00
info['percentchange'] = 0.00
return info