ajout calcul du rendement

This commit is contained in:
2019-10-22 10:40:01 +02:00
parent 80a45bf297
commit e80543a956
5 changed files with 50 additions and 37 deletions

View File

@@ -38,7 +38,7 @@ def to_euro(x):
#if x == 0:
# return ""
#else:
return (u"{:,.2f}".format(x).replace(',', ' ').replace('.', ',') + u"")
return (u"{:,.2f}".format(x).replace(',', ' ').replace('.', ',') + "")
def to_usd(x):
"""Takes a float and returns a string"""
@@ -60,11 +60,11 @@ def to_percent(x, d):
if x == 0:
pc = ''
elif d == 2:
pc = u"%.2f " % x
pc = "%.2f " % x
elif d == 3:
pc = u"%.3f " % x
pc = "%.3f " % x
else:
pc = u"%.1f " % x
pc = "%.1f " % x
if len(pc) > 0:
pc += "%"
return pc.replace('.', ',')
@@ -115,7 +115,9 @@ def home(request):
if item.type == 'ACTION':
# lire le cours de l'action
ticker = yf.Ticker(item.symbole)
update_actif_valeur(request, item.symbole, ticker.info.get('regularMarketPrice'))
# caluler son rendement
dividends = get_dividends(ticker)
update_actif_valeur(request, item.symbole, ticker.info.get('regularMarketPrice'), dividends)
time.sleep(1) # attendre 2 secondes
# update du portefeuille
@@ -144,7 +146,7 @@ def home(request):
courbe_evoln.append(d)
return {
'page_title': u"Allocation d'actifs",
'page_title': "Allocation d'actifs",
'message': message,
'url': url,
'items': items,
@@ -168,7 +170,7 @@ def doc_list(request):
docs_voiture = get_docs_bytheme(request, 'VOITURE')
return {
'page_title': u"Documents",
'page_title': "Documents",
'docs_finance': docs_finance,
'docs_maison': docs_maison,
'docs_voiture': docs_voiture,
@@ -179,12 +181,12 @@ def doc_edit(request):
doc_id = request.matchdict['doc_id']
url = request.route_url('doc_edit',doc_id=doc_id)
message = u""
message = ""
if doc_id == '0':
titre = "Nouveau doc"
intitule = u""
texte = u""
theme = u""
intitule = ""
texte = ""
theme = ""
else:
titre = "Modifier : %s" % str(doc_id)
doc = get_docs(request, doc_id)
@@ -243,7 +245,7 @@ def doc_view(request):
}
def envoyerMail(request, destinataire, objet, corps):
body = u"""
body = """
%s
@@ -261,3 +263,14 @@ monaa.caotek.fr
mailer.send_immediately(message)
def get_dividends(ticker):
d = 0
# le ticker a des dividendes ?
if len(ticker.dividends) > 0:
# oui, cumuler les dividendes sur un an
h = ticker.history(period="1y")
nb = len(ticker.dividends)
for i in range(nb):
d += ticker.dividends[nb - 1 - i]
return d