Hello community,
there is a new IBPlugin version 1511.
Product Page:
Download Link
Release Notes:
Changes:
– IBPlugin is now capable to query contract data and to save a contract from query result along with unique custom symbol
name to database, so you can get conid/uidc from function
[code]ibgNAME_TO_UID(“my_unique_symbol_name”)[/code]
Similar to position data, the query creates a snapshot list with affected contract and returns the number of contracts.
MetaTrader code snippet:
// ——————————————–
// [#8] Do a contract query:
Print(“+++ contract query START”);
// create a snapshot of all HE FUT contracts. Timeout 5 seconds
total_objects=ibgCONTRACT_QUERY(“UDL=HE#SET=FUT”,5000);
Print(“##contracts=”,total_objects );
// list all returned contracts with symbol and conid
for(int idx=0;idx < total_objects;++idx)
{
// file:///C:/Program%20Files/trade-commander.com/IBPlugin/documentation/tbl_symbol_info.html
int uid = ibgCONTRACT_INFO_INT(idx, 7);
string symbol = ibgCONTRACT_INFO_STR(idx, 8);
// if this is the contract you are looking for, use
// this function to add it to internal database along
// with unique symbol name
// uid = ibgADD_CONTRACT_IDX( idx, “my_unique_symbol_name”);
// so you can access contract
// by calling function:
// ibgNAME_TO_UID(“my_unique_symbol_name”);
PrintFormat(“[%d] symbol=%s uidc=%d”,idx,symbol,uid);
}
Print(“— contract query END”);
– Market data request and access extended.
The market data request allows generic ticks argument.
It is now possible to retrieve Option data, like delta, vega, etc. , tick EFP, tick generic, tick string.
Market data are stored in circular arrays. So there is a certain tick history store during runtime and can be accessed by index, where
index=0 denotes latest tick.
TradeStation / MultiCharts code snippet:
// subscribe to realtime data
ticker= ibgSUBSCRIBE_REALTIME_DATA(connection_id, conid, “”, “”);
ibgSLEEP(2000);
For idx = 200 to 207 begin
// subtype identifier (idx)
// —————————
//implied_vola=200
//delta=201
//opt_price=202
//pv_dividend=203
//gamma=204
//vega=205
//theta=206
//und_price=207
option_value=ibgGET_REALTIME_DATA(connection_id, ticker, 21, idx, 0);
Print(“option-val[“,idx,”]=”,option_value);