def to_sixteen(db): for pf in container.get_all_portfolios(): for pos in pf: for ta in pos.transactions: if ta.type == "portfolio_sell_transaction": ta.price = ta.price * ta.quantity else: ta.price = ta.price * ta.quantity
def calculate_values(self, *args): self.days = calc_days(self.step, self.birthday, datetime.date.today(), self.MAX_VALUES) self.x_values = format_days(self.days, self.step) self.y_values = [] # FIXME do in parallel for pf in container.get_all_portfolios(): self.items = pf.get_transactions() + pf.get_dividends() for foo in self.calculate_investmentsovertime(pf.name): yield foo yield 1
def calculate_values(self, *args): self.days = calc_days(self.step, self.birthday, datetime.date.today(), self.MAX_VALUES) self.x_values = format_days(self.days, self.step) self.y_values = [] # FIXME do in parallel for pf in container.get_all_portfolios(): self.portfolio = pf for foo in self.calculate_valueovertime(pf.name): yield foo yield 1
def load_items(self): model = self.get_model() all_portfolio = container.AllPortfolio() self.overall_value = all_portfolio.get_current_value() # ensure no division by zero error occurs if self.overall_value == 0.0: self.overall_value = 1.0 iterator = model.append(None, self.get_row(all_portfolio, Pango.Weight.BOLD)) for item in container.get_all_portfolios(): model.append(iterator, self.get_row(item))
def to_fourteen(db): for pf in container.get_all_portfolios(): cache = {} for pos in pf.positions: if pos.asset in cache: for ta in pos.transactions: ta.position = cache[pos.asset] for div in pos.dividends: div.position = cache[pos.asset] pos.delete() else: cache[pos.asset] = pos
def calculate_values(self, *args): portfolios = container.get_all_portfolios() data = {} for pf in portfolios: item = str(getattr(pf, self.attribute)) try: data[item] += pf.get_current_value() except: data[item] = pf.get_current_value() if sum(data.values()) == 0: self.values = {' ': 1} else: self.values = data yield 1
def show_context_menu(self, event): context_menu = self.builder.get_object("position_contextmenu") move_menu = self.builder.get_object("move_menu") all_portfolios = container.get_all_portfolios() if len(all_portfolios) == 1: move_menu.set_visible(False) else: move_menu.set_visible(True) menu = Gtk.Menu() move_menu.set_submenu(menu) for pf in all_portfolios: if pf != self.portfolio: item = Gtk.MenuItem(label=pf.name) item.connect("activate", self.on_move_position, pf) menu.append(item) move_menu.show_all() context_menu.popup(None, None, None, None, event.button, event.time)
def _load_items(self): portfolios = container.get_all_portfolios() if len(portfolios) > 1: all_pf = container.AllPortfolio() all_pf.name = "<i>%s</i>" % (_('All'),) self.insert_portfolio(all_pf) for pf in portfolios: self.insert_portfolio(pf) for wl in container.get_all_watchlists(): self.insert_watchlist(wl) accounts = account.get_all_accounts() if len(accounts) > 1: all_account = account.AllAccount() all_account.name = "<i>%s</i>" % (_('All'),) self.insert_account(all_account) for acc in accounts: self.insert_account(acc) self.tree.expand_all()
def __init__(self, step): self.step = step self.birthday = min([pf.get_birthday() for pf in container.get_all_portfolios()])