Coding Market and Limit Orders in Python with IBKR API

The Market order type is an order to buy or sell at the market bid or offer price.  

    @staticmethod

    def MarketOrder(action:str, quantity:float):
        #! [market]
        order = Order()
        order.action = action
        order.orderType = “MKT”
        order.totalQuantity = quantity
        #! [market]
        return order


Limit order is an order to buy or sell at a specified price or better.    

    @staticmethod

    def LimitOrder(action:str, quantity:float, limitPrice:float):
        # ! [limitorder]

        order = Order()
        order.action = action
        order.orderType = “LMT”
        order.totalQuantity = quantity
        order.lmtPrice = limitPrice
        # ! [limitorder]
        return order


Visit our GitHub guide to download the API sample Testbed, and review the Python code for other order types, such as Stop or Stop Loss order: http://interactivebrokers.github.io/ The sample syntax is in the OrderSamples.py file.

Disclosure: Interactive Brokers

The analysis in this material is provided for information only and is not and should not be construed as an offer to sell or the solicitation of an offer to buy any security. To the extent that this material discusses general market activity, industry or sector trends or other broad-based economic or political conditions, it should not be construed as research or investment advice. To the extent that it includes references to specific securities, commodities, currencies, or other instruments, those references do not constitute a recommendation by IBKR to buy, sell or hold such investments. This material does not and is not intended to take into account the particular financial conditions, investment objectives or requirements of individual customers. Before acting on this material, you should consider whether it is suitable for your particular circumstances and, as necessary, seek professional advice.

The views and opinions expressed herein are those of the author and do not necessarily reflect the views of Interactive Brokers LLC, its affiliates, or its employees.

Any trading symbols displayed are for illustrative purposes only and are not intended to portray recommendations.

In accordance with EU regulation: The statements in this document shall not be considered as an objective or independent explanation of the matters. Please note that this document (a) has not been prepared in accordance with legal requirements designed to promote the independence of investment research, and (b) is not subject to any prohibition on dealing ahead of the dissemination or publication of investment research.