コード例 #1
0
	def load_portfolio(self) -> dict:
		"""
		Loads portfolio into the class checking first if the portfolio exists.
		:return: dict
		"""
		if DataHandler.check_portfolio_exists():
			return DataHandler.load_portfolio()
		else:
			return dict({})
コード例 #2
0
    def create(self):
        # ====================== Init portfolio ========================
        self.welcome_msg = self.add(npyscreen.FixedText, value=welcome, rely=2)
        self.welcome_msg2 = self.add(npyscreen.FixedText,
                                     value=welcome_line2,
                                     rely=3)
        self.top_message = self.add(npyscreen.FixedText,
                                    value="",
                                    relx=8,
                                    rely=4)

        # ====================== End init portfolio ====================

        # ====================== Menu section ==========================
        self.menu = self.new_menu(name="Main Menu", shortcut="m")
        self.menu.addItem("1. Add stock to portfolio", self.change_form_add,
                          "1")
        self.menu.addItem("2. Update Portfolio", self.change_form_update, "2")
        self.menu.addItem("3. Save performance to PDF",
                          self.change_form_save_pdf, "3")
        self.menu.addItem("4. Delete Stock form portfolio",
                          self.change_form_delete, "4")
        # ====================== End menu section ======================

        self.add(npyscreen.FixedText, value="Performance:", relx=8, rely=26)

        self.main_ii = self.add(
            npyscreen.FixedText,
            value=f"Initial Investment: ${self.initial_investment}",
            relx=8,
            rely=27)
        self.main_rd = self.add(
            npyscreen.FixedText,
            value=f"Returned Amount: ${self.return_dollar}",
            relx=8,
            rely=28)
        self.main_pr = self.add(npyscreen.FixedText,
                                value=f"Returned Percent: {self.pct_return}%",
                                relx=8,
                                rely=29)

        self.exit_button = self.add(npyscreen.ButtonPress,
                                    name="Exit",
                                    rely=29,
                                    relx=106,
                                    when_pressed_function=self.exit_press)
        if not DataHandler.check_portfolio_exists():
            self.top_message.value = no_portfolio_msg
        else:
            self.top_message.value = "Portfolio:"
            self.load_portfolio()
            self.load_performance()