code: def positions_by_asset(self):
          
          positions = None
          for book in self.books():
              book_positions = book.positions_by_asset()
              # unique positions
              positions.update({position.asset_id: position for position in book_positions
                                if position.asset_id not in positions.keys()})
              # Existing positions
              keys = [position.asset_id for position in book_positions if position.asset_id in positions.key()]
              for key in keys:
                  positions.get(key).quantity += book_positions.get(key).quantity
          return positions
docs: A dictionary of Position objects keyed by asset_id.  If an asset
          position exists in more than one book, they are combined into a single
          position.