Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 下期权订单_Python_Trading_Tws - Fatal编程技术网

Python 下期权订单

Python 下期权订单,python,trading,tws,Python,Trading,Tws,我不熟悉python和编程,但我正在学习。我正试图通过python向TWS发送选项订单。我一直收到这个错误消息 “服务器错误:服务器响应: 错误,回溯(最近的 最后一次呼叫:“ 我试着下一个股票订单,结果成功了,但没有期权 def create_contract(a,b,c,d): contract = Contract() contract.symbol = '%a' contract.secType = "OPT" contract.exchange = "S

我不熟悉python和编程,但我正在学习。我正试图通过python向TWS发送选项订单。我一直收到这个错误消息

“服务器错误:服务器响应: 错误,回溯(最近的 最后一次呼叫:“

我试着下一个股票订单,结果成功了,但没有期权

def create_contract(a,b,c,d):
    contract = Contract()
    contract.symbol = '%a'
    contract.secType = "OPT"
    contract.exchange = "SMART"
    contract.order_exchange = "SMART"
    contract.currency = "USD"
    contract.ContractMonth = b
    contract.strike = c
    contract.right = '%d'
    contract.multiplier = "100"
    return contract
def create_order(order_type, quantity, action):
    order = Order()
    order.m_orderType = order_type
    order.m_totalQuantity = quantity
    order.m_action = action
    return order
if __name__ == "__main__":
    tws_conn = Connection.create("127.0.0.1", port=7495)
    tws_conn.connect()
    tws_conn.register(error_handler, 'Error')
    tws_conn.registerAll(reply_handler)
    order_id = 1
            goog_contract = create_contract(tic,hup.cell(2,3).value,hup.cell(2,4).value,hup.cell(2,13).value)
            goog_order = create_order('MKT', 1, 'BUY')
            tws_conn.placeOrder(order_id, goog_contract, goog_order)

我想看到期权订单通过TWS。我还希望看到一些关于placeorder参数应该如何使用的适当示例。

看起来您正在使用IBPy或ibapi的第三方包装器?您可能需要考虑使用OR或./P> 如果您可以下股票订单,但不能下期权订单,则期权合同的定义方式可能会出现问题(假设您的纸质账户具有必要的权限)。以下是本机IB Python API中定义选项的示例:

要说明哪个参数不正确,必须显示
a、b、c、d的值

您可能还希望在TWS中启用API日志记录,如所述:

用于故障排除目的

from ib_insync import *
util.startLoop()
ib=IB()
ib.connect("127.0.0.1", 7497, clientId=13)
contract=Option("SPY","20191016", 280,"P","SMART")
ib.qualifyContracts(contract)
order=MarketOrder("Buy",2)
trade=ib.placeOrder(contract,order)
trade
此代码将允许。您需要在2019年10月19日到期的280次罢工中购买2次“间谍”看跌期权