Skip to main content
More details
Source Link
gearhead
  • 133
  • 1
  • 4

Hi I'm having trouble with the Interactive Broker python API. I'm using python 3.8 and connecting to IB TWS ver. 979

when I run this symbol script I get the following error:

from ibapi.client import EClient from ibapi.wrapper import EWrapper from ibapi.contract import Contract import threading import time class IBapi(EWrapper, EClient): def __init__(self): EClient.__init__(self, self) def tickPrice(self, reqId, tickType, price, attrib): if tickType == 2 and reqId == 1: print('The current ask price is: ', price) def run_loop(): app.run() app = IBapi() app.connect('127.0.0.1', 7497, 123) #Start the socket in a thread api_thread = threading.Thread(target=run_loop, daemon=True) api_thread.start() time.sleep(1) #Sleep interval to allow time for connection to server fut_contract = Contract() fut_contract.symbol = "MNQU0" #MNQ SEP'20" fut_contract.secType = 'FUT' fut_contract.exchange = 'GLOBEX' fut_contract.currency = 'USD' fut_contract.LocalSymbol = 'MNQU0' fut_contract.LastTradeDateOrContractMonth = "202009"; #Request Market Data app.reqMktData(1, fut_contract, '', False, False, []) time.sleep(100) #Sleep interval to allow time for incoming price data app.disconnect() 

Error:

Error 1 321 error validating request:-'bW' : cause - Please enter a local symbol or expiry

I can't see what I'm doing wrong. I can't find any other Contact() field relating to expiry.

Thanks

Hi I'm having trouble with the Interactive Broker python API. I'm using python 3.8 and connecting to IB TWS ver. 979

when I run this symbol script I get the following error:

from ibapi.client import EClient from ibapi.wrapper import EWrapper from ibapi.contract import Contract import threading import time class IBapi(EWrapper, EClient): def __init__(self): EClient.__init__(self, self) def tickPrice(self, reqId, tickType, price, attrib): if tickType == 2 and reqId == 1: print('The current ask price is: ', price) def run_loop(): app.run() app = IBapi() app.connect('127.0.0.1', 7497, 123) #Start the socket in a thread api_thread = threading.Thread(target=run_loop, daemon=True) api_thread.start() time.sleep(1) #Sleep interval to allow time for connection to server fut_contract = Contract() fut_contract.symbol = "MNQU0" #MNQ SEP'20" fut_contract.secType = 'FUT' fut_contract.exchange = 'GLOBEX' fut_contract.currency = 'USD' fut_contract.LocalSymbol = 'MNQU0' fut_contract.LastTradeDateOrContractMonth = "202009"; #Request Market Data app.reqMktData(1, fut_contract, '', False, False, []) time.sleep(100) #Sleep interval to allow time for incoming price data app.disconnect() 

Error:

Error 1 321 error validating request:-'bW' : cause - Please enter a local symbol or expiry

I can't see what I'm doing wrong.

Thanks

Hi I'm having trouble with the Interactive Broker python API. I'm using python 3.8 and connecting to IB TWS ver. 979

when I run this symbol script I get the following error:

from ibapi.client import EClient from ibapi.wrapper import EWrapper from ibapi.contract import Contract import threading import time class IBapi(EWrapper, EClient): def __init__(self): EClient.__init__(self, self) def tickPrice(self, reqId, tickType, price, attrib): if tickType == 2 and reqId == 1: print('The current ask price is: ', price) def run_loop(): app.run() app = IBapi() app.connect('127.0.0.1', 7497, 123) #Start the socket in a thread api_thread = threading.Thread(target=run_loop, daemon=True) api_thread.start() time.sleep(1) #Sleep interval to allow time for connection to server fut_contract = Contract() fut_contract.symbol = "MNQU0" #MNQ SEP'20" fut_contract.secType = 'FUT' fut_contract.exchange = 'GLOBEX' fut_contract.currency = 'USD' fut_contract.LocalSymbol = 'MNQU0' fut_contract.LastTradeDateOrContractMonth = "202009"; #Request Market Data app.reqMktData(1, fut_contract, '', False, False, []) time.sleep(100) #Sleep interval to allow time for incoming price data app.disconnect() 

Error:

Error 1 321 error validating request:-'bW' : cause - Please enter a local symbol or expiry

I can't see what I'm doing wrong. I can't find any other Contact() field relating to expiry.

Thanks

Source Link
gearhead
  • 133
  • 1
  • 4

Interactive Broker API error 321?

Hi I'm having trouble with the Interactive Broker python API. I'm using python 3.8 and connecting to IB TWS ver. 979

when I run this symbol script I get the following error:

from ibapi.client import EClient from ibapi.wrapper import EWrapper from ibapi.contract import Contract import threading import time class IBapi(EWrapper, EClient): def __init__(self): EClient.__init__(self, self) def tickPrice(self, reqId, tickType, price, attrib): if tickType == 2 and reqId == 1: print('The current ask price is: ', price) def run_loop(): app.run() app = IBapi() app.connect('127.0.0.1', 7497, 123) #Start the socket in a thread api_thread = threading.Thread(target=run_loop, daemon=True) api_thread.start() time.sleep(1) #Sleep interval to allow time for connection to server fut_contract = Contract() fut_contract.symbol = "MNQU0" #MNQ SEP'20" fut_contract.secType = 'FUT' fut_contract.exchange = 'GLOBEX' fut_contract.currency = 'USD' fut_contract.LocalSymbol = 'MNQU0' fut_contract.LastTradeDateOrContractMonth = "202009"; #Request Market Data app.reqMktData(1, fut_contract, '', False, False, []) time.sleep(100) #Sleep interval to allow time for incoming price data app.disconnect() 

Error:

Error 1 321 error validating request:-'bW' : cause - Please enter a local symbol or expiry

I can't see what I'm doing wrong.

Thanks