Rob, how do you monitor your trading machine when you're on vacation or somewhere with bad internet access? Do you connect IB Gateway to IB servers daily manually (+ 2FA authentication) or do you use automated solution (+ IB secure login system opt-out)?
How to opt out of 2FA with IB? I currently have a code texted to me that I have to input manually. Is there a version of ib controller that deals with that somehow. Just because of this I am not even using ib controller.
You have to opt out of 2FA so the controller can just use your username and password to login. There is an option in the IB account settings to do it. Obviously there are risks involved... DYOR GAT
.... and I get daily emails telling me what the system is doing (which I check every few days). So far the worst that has happened is a power cut or something going wrong, and the machine can't trade for a couple of weeks. I've backtested this, and the expected average performance penalty is small enough (a few bp of SR annually) that I'm relaxed about it. The machine could go haywire and trade millions of times, but I'm confident I have enough failsafes in for that not to happen. Extreme case is I have to remotely log in to IB in webtrader which will automatically disconnect my home trading machine. GAT
I'm now posting almost total gibberish... https://qoppac.blogspot.com/2021/07/talking-to-dead-simple-heuristic.html ... so it's safe to say no more work on small account size optimisation. I'll use the method in post #3 to find ~28 markets I can trade in reasonable size and be done with it. GAT
Yes, but we love the gibberish. In the highly unlikely event financial research doesn't pan out, you might have a natural segue to comedy writing. Auntie Barbara made me laugh out loud.
how about thresholding, is that still a viable concept ? I'm still trying to experiment with my backtests, basically the improved PnL I see in the larger system where current risk is choked by the risk-overlay is most likely explained by the higher risk the system is taking. So it's not a real improvement, it's just extra profit from running the system hotter.. I guess the main appeal here was using margin capital more efficiently during "downtimes", i.e. during periods of weak across-the-board forecast lots of cash in the system is sitting around doing nothing, and if it was possible to "temporary" apply that capital to other instruments which are currently trending, i.e. simply try to make margin usage less variable without really improving the "true performance" of the system.. But looks like any such attempts result in cost increase which just makes things worse overall..
Great blog post. I could clearly follow the line of thought. Does this make me an incarnation of Auntie Barbara? (LOL) I would make two minor modifications to the code, but I guess that these won't have any material impact on the end result. (i) in _valid_forecast() you use the line "if forecast_value == 0.0" However, a float is never exactly 0.0. I would have replaced that by something like "if (abs(forecast_value) < 0.01)" to get rid of the equal (==) sign. (ii) in _possible_position() you use the line "if(abs(position) < 1.0)". However, elsewhere you round a value of 0.5 up to 1. So here it should be "if(abs(position) < 0.5)" In your blog post you use the criteria "strong forecast" as the selection criteria to select your "best friends". Have you tried to use the criteria "lowest value volatility per contract" as the selection criteria instead? And then in such a way that you scale the size of the party such that the "least best friend" can have an open position of at least 3 contracts (thus 2.5 unrounded)? I use the value 3 here as that provides sufficient granularity for an instrument to follow the changes in forecast value.