Keyboard Shortcuts
ctrl + shift + ? :
Show all keyboard shortcuts
ctrl + g :
Navigate to a group
ctrl + shift + f :
Find
ctrl + / :
Quick actions
esc to dismiss
Likes
- Twsapi
- Messages
Search
Re: question about server support and login best practice
I looked bit couldn't find docker for newer version of IB Gateway / TWS and IBC (IBController). Dmitry has a great blog on this but it's not a quick deploy docker image but is nicely detailed. On Sat, Feb 20, 2021, 1:37 PM Alex Gorbachev <ag@...> wrote:
|
Re: Unable to fetch fundamental data
Hi Mark,
Message code 430 clearly means "No fundamental data available". This means there is absolutely nothing wrong with the code.? However, it is intriguing how GOOGLE's fundamental data can be unavailable. I also received the same error for GOOG. While AMZN and other few stocks return data with same script.? Thanks, Pratik |
Re: CI-testing anyone?
My CI testing follows what Mark outlines.??
My code is in Java.? I wrote a broker interface which limits the IB API pieces I use.? I then use a mock class framework (Mockito) to simulate responses.? This of course doesn't simulate TWS, but at least allows for testing of my code. But sometimes weird things happen in production and TWS doesn't do what you expect, so an idea I had was to implement a TWS API "recorder" so I can record/replay IB API events to diagnose problems that come up in production.? Then use those event records to generate test cases. |
Re: question about server support and login best practice
¿ªÔÆÌåÓýhow is your docker image working out for you Alex? GREAT intel by
the way. I was wondering about this and the github is EXCELLENT!!
thanks so much On 2/20/21 12:36 PM, Alex Gorbachev
wrote:
|
For tickByTickBidAsk, does SMART exchange provide THE best rate available?
If fetching live market depth level 2 tick by tick data for a stock, does setting SMART for the exchange provide THE cheapest rate available in the market or should one consider querying all the exchanges at the same time and find the cheapest available price because SMART doesn't always provide the cheapest price available?
I have the following assumptions: - For orders, SMART means either the best rate available (in case of market order) OR the fastest execution available (in case of Limit order) which may not be the cheapest available at that moment. So, IBKR algorithm for SMART may work it's best depending on the order type. But for tickbytick request, does something like above apply or SMART is simply the cheapest available price available and there are no other options because this is just a data request and not an order. If there are other ways SMART works for providing tick by tick data, please explain. Thanks, |
Re: Getting invalid prices by following the relevant market rules.
Sorry for the double post but I wanted to let you know that I finally found the cause of this issue. It was related to the added by me in Configuration > Presets > Stock > WMT record that in some strange way interferes with the buy limit orders done by the API for WMT stock but not for the orders done by hand from the TWS. After removing this preset everything started working as expected. Unfortunately I have no time to figure out which parameter exactly was the issue but in case someone else have the same problem: you have to check also the presets in the configuration. Even though the logs in both sides show no problem with the requested price, the error message is misleading and must include information what exactly is wrong with the requested limit price.
|
Re: question about server support and login best practice
I think you should look at IBController -? Official from IBRK. Or check a docker image like this -? I took the latter and adapted for me. I also managed to hack my way into running IB gateway on Google Colab to experiment. Alex On Fri, 19 Feb 2021 at 07:37 Stuart Cracraft via <smcracraft=[email protected]> wrote:
|
Re: Unable to fetch fundamental data
Here is the error...
? ? ?0? 1 2? ? ? ? ? 3 4 5? ? 6? ? ? ? ? ? ? ? ? ? ?7
0? 555? 0? ? 208813720? ? ? 0.0? [ISIN=US02079K1079;]
208813720
were at the loop for saving data
press enter to continueError:? -1? ?2106? ?HMDS data farm connection is OK:fundfarm
Error: Error:? -1? ?2106? ? HMDS data farm connection is OK:fundfarm-1
?Error:? ?-1? 2106? ? 2106? HMDS data farm connection is OK:fundfarm
? HMDS data farm connection is OK:fundfarm
Error:? 999? ?430? ?The fundamentals data for the security specified is not available.failed to fetch |
Unable to fetch fundamental data
Does anyone know why I'm getting an error unable to fetch fundamental data. This is the contract ID for google stock.
def getnasdaqOPThistdata(): |
Re: CI-testing anyone?
Isolate the two parts, exchange connectivity is one part, and actually has a quite finite list of tests. The data processing and historical replication is a different problem that can be solved independent of the tws implementation. Best wishes, M On Fri, 19 Feb 2021, 22:00 Nick, <news1000@...> wrote: I hate to say it but to do a robust job I think you would have to have a |
Re: question about server support and login best practice
Stuart Cracraft
¿ªÔÆÌåÓýYes, fwogy.com is what I have on AWS already.? It¡¯s just so clumsy to have to login to an app manually.? Awful restriction from interactive brokers.? Grotesque.? On Feb 19, 2021, at 5:46 AM, ds-avatar <dimsal.public@...> wrote:
|
Re: CI-testing anyone?
Nick
I hate to say it but to do a robust job I think you would have to have a whole separate project that simulates TWS and the exchanges. You then connect to that for (most of) your testing.
toggle quoted message
Show quoted text
Anything your framework does that depends on market actions (order fills, account updates, recovery from outages, etc.) won't have a way to be repeatable in a paper account. Of course you'd also want to test against a paper account to verify that basic request and response processing is working. This could turn out to be one of the situations where the testing framework is a much bigger project than the original project. On 2/19/2021 4:33 PM, Matthias Frener wrote:
|
CI-testing anyone?
Matthias Frener
Hi all. Currently we look for a solution to run automated CI-testing. The setup is no issue, but against what do should we test? Do you use your personal paper trading account on the CI? Maybe there is a way to get a second, no-expiring paper account? Or have a "dev" account type, that cannot trade live at all but insterad create 100 paper trade account for CI-servers? How are you doing this? ? ? |
Re: Getting invalid prices by following the relevant market rules.
Hello Graham, Did you find any workaround or the cause of this error? I get the same error for a particular stock (WMT) when trying to buy with a limit order on a live account even with round amount (138.00). When requesting ContractDetails I verify that the minTick is 0.01 so, that is not the problem. The same transaction goes well on the paper account but it is not accepted on the live account. Using TWS Build 981.2r, Feb 10 2021. Trying hard to find someone with a solution but no success so far. Just one guy reported that sending a request with transmit = False, waiting some time and send the same with transmit = True solved the problem. Very?frustrating that I missed a trade yesterday due to this unpredictable transaction rejection. |
Re: question about server support and login best practice
Many IBKR API complications feel a bit frustrating and long in the tooth indeed. I see little reason to speculate why it's so and when it's about to change, even though I sure wish it did. If you need free solutions, I believe other participants could offer advice regarding third-party automation tools. If you are ready to pay, you can just set up a virtual desktop in AWS and run TWS or IBG permanently or through weekdays, and even accept outside client connections into it. That will still require logging in once a week, and not much else beyond that. I believe depending on your requirements this would cost about $1000-2000 per year with a modestly equipped AWS instance.
|
Re: How to pull all strikes for a given expiration?
Nick
Yes, you are limited by the throttling. One thread can easily reach the maximum throughput for retrieving historical data.
toggle quoted message
Show quoted text
On 2/19/2021 12:22 AM, Crow wrote:
It appears that if I pull the data via 1 thread, it's just as fast as if I pull the data through 4 threads...in other words, threading will not speed up the data pull, likely because it's throttled. Has anyone else noticed this? |
Options and future options priced in cents/pence instead of USD/GBP
I am trying to collect a list of exchanges that trade options or future options priced in cents/pence instead of dollars/pounds.
I have found issues when placing orders for options and future options meeting this criteria and had to implement fixes. A short list of options and future options meeting this criteria is: options trading at the LSE/ICEEU (examples: Z, GSK, GLEN) and future options trading at the ECBOT (examples: ZC, ZW) For these options and future options, the strike price format must not conflict with the strike price information available in other Contract fields like the local symbol or else the order is rejected with the following (undocumented) error: 478 | Parameters in request conflicts with contract parameters received by contract id: requested strike 1300.0, in contract 13.0; By collecting a list of exchanges where these options and future options are trading, I will be able to program around most of these special cases. I am aware that the price magnifier information available in ContractDetails should help knowing if an option or option contract meets the criteria but I would prefer not to request contract details information to avoid delays when placing orders. Looking for input from users who are aware of these types of options and future options. Thank you. -- |
question about server support and login best practice
Stuart Cracraft
¿ªÔÆÌåÓýMy sens is that the current nature of IB is to provide two tools which either can be run.One is a headful client cumbersmoe and poor UI called TWI and the other is a thinner client. But that NEITHER of these can be programmed to? ?a) autostart at system boot (I run my clients on AWS and need absolutely no U/I. ? ? ?It is all done in CLI, with NO DESKTOP, to AUTOMATE it. ?b) NEVER require human interaction for the server to authenticate and login to the ? ? ?IB sservers to make paper and cash trades ?c) avoid a ¡°Sunday required U/I human login¡± - what is that? It went out in the 1970¡¯s¡ My sense is that IB is backwards on the above, does not provide a mechanism for serverless auto-login password WITHOUT mouse, keyboard, etc. but potentially with the account + password sitting in a file, run automatically by a Unix/Linux (I use Ubuntu) daemon, and doing the automation needful with HANDS-OFF. Please correct me if my above perception is correct or incorrect and then the next question is why possibly IB would not correct the above and take the final step to automate it all the way out. This is supposed to be a platform to automate both paper and cash trading to fully remove emotion and human activity from most market decisions about what to buy and sell, when to do so, for improved performance. The best analogy is , , and other platforms which do ALL the selection and analysis robotically, the rebanacing robotically, and minimize all human error, as the markets are too error-prone for humans to be in may confer extra security in situations requiring robotic, boring, precise analysis and actions taken. Pardon for the length of this question but I never got what think is a bottom line answer from this list for the above Stuart Cracraft P.S. When replying to this email, please ensure you cc my personal email at smcracraft@... And thanks for taking your time. |
to navigate to use esc to dismiss