2017-12-27 110 views
0

提交LOO或MOO訂單盈透證券與下面的標準代碼,我已經能夠提交使用免費模擬賬戶通過ibpy

from ib.opt import Connection, message 
from ib.ext.Contract import Contract 
from ib.ext.Order import Order 


def make_contract(symbol, sec_type, exch, prim_exch, curr): 
    Contract.m_symbol = symbol 
    Contract.m_secType = sec_type 
    Contract.m_exchange = exch 
    Contract.m_primaryExch = prim_exch 
    Contract.m_currency = curr 
    return Contract 


def make_order(action, quantity, price=None): 
    if price is not None: 
     order = Order() 
     order.m_orderType = 'LMT' 
     order.m_totalQuantity = quantity 
     order.m_action = action 
     order.m_lmtPrice = price 
    else: 
     order = Order() 
     order.m_orderType = 'MKT' 
     order.m_totalQuantity = quantity 
     order.m_action = action 

    return order 


def main(): 
    conn = Connection.create(port=7496, clientId=999) 
    conn.connect() 

    oid = 100001 
    cont = make_contract('TSLA', 'STK', 'SMART', 'SMART', 'USD') 
    offer = make_order('BUY', 100, 315) 

    conn.placeOrder(oid, cont, offer) 
    conn.disconnect() 


main() 

沒有任何人有市場(MKT)和限價單(LMT)體驗提交LOO或MOO命令?當我改變時:

order.m_orderType = 'LOO' 

我沒有得到例外,但是,在IB TWS(演示)中沒有顯示掛單。

回答