コード例 #1
0
    def buy(self, ticker, amount):
        price = get_price(ticker)
        if self.balance < price * amount:
            raise ValueError("Insufficient Funds")
        self.balance -= price * amount
        trade = Trade()
        trade.account_pk = self.pk
        trade.ticker = ticker
        trade.price = price
        trade.volume = amount
        trade.time = time.time()

        position = self.get_position_for(ticker)
        position.shares += amount
        self.save()
        trade.save()
        position.save()
コード例 #2
0
    def sell(self, ticker, amount):
        price = get_price(ticker)
        position = self.get_position_for(ticker)
        if position.shares < amount:
            raise ValueError("Insufficient Shares to Sell or Position Does not Exist")
        self.balance += price * amount
        trade = Trade()
        trade.account_pk = self.pk
        trade.ticker = ticker
        trade.price = price
        trade.volume = -1 * amount
        trade.time = time.time()

        position.shares -= amount
        self.save()
        trade.save()
        position.save()
コード例 #3
0
    def buy(self,symbol,amount):
        price=get_price(symbol)        
        if self.balance<price*amount:
            raise ValueError("You do not have enough money for this stock")
            
        self.balance-=price*amount
        trade=Trade()
        trade.account_pk=self.pk
        trade.ticker=symbol
        trade.price=price
        trade.volume=amount
        trade.time=time.time()
        position=self.get_position_for(symbol)
        position.shares+=amount

        self.save()   
        trade.save()        
        position.save()