Error Field #541 on IB (calling options/futures)

Having trouble recording data on options and futures through IB's api.

This is what I enter in my attempt to open a connection to the April 11 130 Call on SPY for time and sales data recording.

CONID: 82167858
Underlying: SPY
Type: STK
Expiry: 11-Apr
Exchange: SMART
Primary Exchange: NONE
Currency: USD
Multiplier: 100
Last Trade Date: APR 15 '11
Strike: 130
Right: CALL
Local Symbol: 110416C00130000

So I have two unique numbers for this contract: CONID and Local Symbol. Everything is correct to the best of my knowledge.

And still, I get this: "Error: SPY.SMART..USD Error Code: 200 Error Message: Invalid value in field # 541"

There is no record or explanation as to what Field #541 designates. I have googled. I have searched the IB forum. I have done guess and check. Does anyone know how to approach this issue?
 
Quote from ogarbitrage:

Having trouble recording data on options and futures through IB's api.

This is what I enter in my attempt to open a connection to the April 11 130 Call on SPY for time and sales data recording.

CONID: 82167858
Underlying: SPY
Type: STK
Expiry: 11-Apr
Exchange: SMART
Primary Exchange: NONE
Currency: USD
Multiplier: 100
Last Trade Date: APR 15 '11
Strike: 130
Right: CALL
Local Symbol: 110416C00130000

So I have two unique numbers for this contract: CONID and Local Symbol. Everything is correct to the best of my knowledge.

And still, I get this: "Error: SPY.SMART..USD Error Code: 200 Error Message: Invalid value in field # 541"

There is no record or explanation as to what Field #541 designates. I have googled. I have searched the IB forum. I have done guess and check. Does anyone know how to approach this issue?

Type: STK

should be OPT
 
Quote from aripplet:

Type: STK

should be OPT

Thanks, fixed that. Fixed the major issue too.

Error 541 is for MaturityDate (or Last Trade Date), format must be YYYYMMDD for anyone who runs into the same problem. Not to get the two confused, expiration date must be in the format MMYYYY.
 
Quote from ogarbitrage:

Thanks, fixed that. Fixed the major issue too.

Error 541 is for MaturityDate (or Last Trade Date), format must be YYYYMMDD for anyone who runs into the same problem. Not to get the two confused, expiration date must be in the format MMYYYY.

pretty sure that expiration date could be YYYYMMDD
 
I can't say for certain but you're probably right. Depends on the contract being referenced. I read in the IB manual that the format is used to distinguish weekly, monthly, and quarterly options.
 
Quote from ogarbitrage:

I can't say for certain but you're probably right. Depends on the contract being referenced. I read in the IB manual that the format is used to distinguish weekly, monthly, and quarterly options.

Yes, for futures, it's not that regulated, see?


ESM1 = makeFutContract('ES', 'GLOBEX', '20110617')

NQM1 = makeFutContract('NQ', 'GLOBEX', '20110617')

YMM1 = makeFutContract('YM', 'ECBOT', '201106')
 
Quote from ogarbitrage:

Thanks, fixed that. Fixed the major issue too.

Error 541 is for MaturityDate (or Last Trade Date), format must be YYYYMMDD for anyone who runs into the same problem. Not to get the two confused, expiration date must be in the format MMYYYY.


ogarbitrage Thanks a lot, I've met the same problem with IB TWS and MultiCharts Version 7.0 Release (Build 4510). I've put the right expiration dates in Symbol Mapping mapping manually.
 
I also saw this error when requesting historical ticks for VIX FUT with the expiry set to '2020401'.

I was missing a '0' in front of '4'.

These cryptic errors suck. How hard would it be for the IB programmers to output something useful, like "Invalid expiration date"?!
 
Back
Top