Hi Brian,
TLDR: Is there a way, or can a feature be added, to only collect new option chains like collect_history("my-prices")
or add an expiration start/end date?
Ultimate goal: Add to crontab without 3 hour refreshes each time.
Background: I collected options using docs here on 6/26. No issues until today 7/7 when a put contract didn't have a SID although contracts around it did.
ibkr_options = get_securities(symbols=["SPXW"], sec_types=["OPT"])
# The 7/7/25 6205 Call exists
ibkr_options[ibkr_options['Symbol']=="SPXW 250707C06205000"]
>> SID == IB794676654
# The 7/7/25 6215 Put doesn't
ibkr_options[ibkr_options['Symbol']=="SPXW 250707P06215000"]
>> nan
Confirmed the contract wasn't missing like the infamous 3/14 5635 contract.
Shows 2 hours & 50 minutes. Seems like it could be re-pulling some that are already in master as this was the estimated time I was given on initial collection 6/26. How could another 3 hours of options be requested if only 7ish trading days has passed?
2025-07-07 14:52:57 quantrocket.master: INFO Requesting option strike prices and expiries for sids IB416904
2025-07-07 14:52:59 quantrocket.master: INFO Requesting option contract details for 63600 possible combinations of strike price and expiry for sids IB416904
2025-07-07 14:53:11 quantrocket.master: INFO Expected remaining runtime to collect listings: 2:50:47
# Now the 7/7/25 6215 Put shows up SPXW 250707P06215000 -> IB795517145
2025-07-07 17:58:32 quantrocket.master: INFO Saved 23756 options to securities master database for sids IB416904
2025-07-07 17:58:32 quantrocket.master: INFO Building consolidated securities master from active vendors: ibkr
2025-07-07 17:58:33 quantrocket.master: INFO Completed building consolidated securities master with 28569 records
I can just run it on the weekend but IBKR does maintenance often and I get errors when trying to ibg start --gateways ibg1
somewhat frequently. It's not immediately critical but was hopeful it could be added to next release if it does require sufficient effort to implement.