Return an API wrapper for the given order book.

        :param name: Order book name (e.g. "btc_cad").
        :type name: str | unicode
        :return: Order book API wrapper.
        :rtype: quadriga.book.OrderBook
        :raise InvalidOrderBookError: If an invalid order book is given.

        **Example**:

        .. doctest::

            >>> from quadriga import QuadrigaClient
            >>>
            >>> client = QuadrigaClient()
            >>>
            >>> eth = client.book('eth_cad').get_ticker()  # doctest:+ELLIPSIS
            >>> btc = client.book('btc_cad').get_ticker()  # doctest:+ELLIPSIS

def book(self, name):
        """Return an API wrapper for the given order book.

        :param name: Order book name (e.g. "btc_cad").
        :type name: str | unicode
        :return: Order book API wrapper.
        :rtype: quadriga.book.OrderBook
        :raise InvalidOrderBookError: If an invalid order book is given.

        **Example**:

        .. doctest::

            >>> from quadriga import QuadrigaClient
            >>>
            >>> client = QuadrigaClient()
            >>>
            >>> eth = client.book('eth_cad').get_ticker()  # doctest:+ELLIPSIS
            >>> btc = client.book('btc_cad').get_ticker()  # doctest:+ELLIPSIS
        """
        self._validate_order_book(name)
        return OrderBook(name, self._rest_client, self._logger)