コード例 #1
0
ファイル: placebet.py プロジェクト: mementum/bfplusplus
    def PlaceBets(self, marketTuple, placeBets, modId=None, fillOrKill=None, fillOrKillTime=None):
        message = Message(action='placeBets', marketTuple=marketTuple, placeBets=placeBets, modId=modId)
        message.fillOrKill = self.fillOrKill if fillOrKill is None else fillOrKill
        message.fillOrKillTime = self.fillOrKillTime if not fillOrKillTime else fillOrKillTime

        self.thMisc.passMessage(message)

        marketComp = self.marketCache[marketTuple]
        placeBetMessages = list()
        for placeBet in placeBets:
            placeBetStr = 'PlaceBet: MktId %d / Runner: %s / Persistence: %s / Type: %s / Price %.2f / Size %.2f, / Fill or Kill: %s'
            placeBetStr = placeBetStr % (placeBet.marketId,
                                         marketComp.getRunnerLabelById(placeBet.selectionId, placeBet.asianLineId),
                                         self.persistenceTypeStr[placeBet.betPersistenceType],
                                         self.betTypeLegend[placeBet.betType],
                                         placeBet.price,
                                         placeBet.size,
                                         str(fillOrKill))
            placeBetMessages.append(placeBetStr)

        self.LogMessages(placeBetMessages)

        if self.optNet and not self.saveCount:
            self.GetMUBets(marketTuple)
            self.GetMarketProfitAndLoss(marketTuple)

        self.saveCount = self.optNetGuard
        self.saveCountPNL = int(self.optNetGuard / 2) + 1

        delay = marketComp.delay
        if delay:
            self.saveCount += delay