fund-indicators/ExpenseRatio.py

40 lines
1.1 KiB
Python
Raw Normal View History

2018-12-31 16:37:51 -08:00
# ExpenseRatio.py
# Andrew Dinh
# Python 3.6.1
# Description:
'''
Asks user for expense ratio of stock (I don't think there's an API for expense ratios)
Runs corrrelation study (I'm not sure if I want another class for this or not)
'''
import numpy
2019-01-08 11:09:46 -08:00
#import urllib2, re
from urllib.request import urlopen
import re
2018-12-31 16:37:51 -08:00
def main(): # For testing purposes
2019-01-08 11:09:46 -08:00
'''
a = [1,2,3]
b = [2,4,6]
2018-12-31 16:37:51 -08:00
c = numpy.corrcoef(a, b)[0, 1]
print(c)
2019-01-08 11:09:46 -08:00
'''
#http://finance.yahoo.com/q/pr?s=spy+profile
stockSymbols = [ "VDIGX", "VFIAX" ]
expenses = [ [ "Fund", "Most Recent Expense Ratio" ] ]
for stockSymbol in stockSymbols:
page = urlopen("http://finance.yahoo.com/q/pr?s=" + stockSymbol + "+profile" )
data = str(page.read())
row = re.findall("Annual Report Expense Ratio.*?</tr>", data)
if len(row) > 0:
ER = re.findall("<td.*?>(\d+\.\d+).*?</td>", row[0] )[0]
expenses.append( [ stockSymbol, ER ] )
else:
print(stockSymbol, "does not appear to be a fund with an expense ratio")
print("\n".join( i[0] + "," + i[1] for i in expenses))
2018-12-31 16:37:51 -08:00
if __name__ == "__main__":
main()