How to Trade IBKR's Stock CFDs?

hlyzr

New member
Joined
Dec 2, 2024
Posts
4
Likes
0
Hi, everyone! How can we trade IBKR's stock CFDs on MW? You know, IBKR doesn't offer separate market data for stock CFDs. On TWS, it directly calls the data of its underlying instrument. But how can we do this mapping on MW? We can search for the corresponding CFD on MW, but we can't load it into the market data. Even though we can map the underlying instrument through 'Edit Instrument' -> Enable 'Historical Instrument', it can only load historical data and doesn't update automatically. So, we can't trade CFDs. Although MW has a native cross-trade function, it seems to only work for a few futures contracts. For other instruments, this function can't be achieved. Does anyone have any other ways to make it happen? Thanks!
 
I have been down this path before with support. It isn't currently supported.

What is required is the ability to map the CFD symbol to the underlying stock/FX/index/etc symbol such that when you submit a trade order on a chart of the underlying, the order references the matching CFD instrument instead. For example, if you map the EUR.USD.IDEALPRO.IB Cash symbol to the EUR.USD.SMART.IB CFD instrument, then any orders placed on a chart of EUR.USD.IDEALPRO.IB Cash should be directed to the EUR.USD.SMART.IB CFD instrument instead.

What is currently supported is the ability to map symbols from different data sources. So, you can currently map the DXFeed EUR/USD symbol to IBKR's EUR.USD.SMART.IB CFD instrument, for example, under Edit Instrument -> Connections (tab) -> click the "Add" button. The part that is not supported is to be able to add a mapping here between two symbols under the same connection. I believe this is an active feature request (you can probably thank me for that), which I have been told might be released as part of the elusive v7. For stock and index CFDs, this might be a suitable workaround for you if you don't mind subscribing to another data source and you have a MW license that allows multiple connections.
 
I have been down this path before with support. It isn't currently supported.

What is required is the ability to map the CFD symbol to the underlying stock/FX/index/etc symbol such that when you submit a trade order on a chart of the underlying, the order references the matching CFD instrument instead. For example, if you map the EUR.USD.IDEALPRO.IB Cash symbol to the EUR.USD.SMART.IB CFD instrument, then any orders placed on a chart of EUR.USD.IDEALPRO.IB Cash should be directed to the EUR.USD.SMART.IB CFD instrument instead.

What is currently supported is the ability to map symbols from different data sources. So, you can currently map the DXFeed EUR/USD symbol to IBKR's EUR.USD.SMART.IB CFD instrument, for example, under Edit Instrument -> Connections (tab) -> click the "Add" button. The part that is not supported is to be able to add a mapping here between two symbols under the same connection. I believe this is an active feature request (you can probably thank me for that), which I have been told might be released as part of the elusive v7. For stock and index CFDs, this might be a suitable workaround for you if you don't mind subscribing to another data source and you have a MW license that allows multiple connections.
Hi, Moai. Thanks for your reply. These days, I directly asked the official too. Though they didn't tell me straight that this function isn't supported now, I realized it after they gave a bunch of solutions that didn't work. About the alternative of Multi Connection mapping you gave, as I don't have a Data feed that can connect to MW, I can't try it. But I think this way might be okay for stocks, but maybe not for FX, because the quotations from different data feed are actually not the same.
 
You're welcome.

And yes, you are right, the "workaround" is not ideal for FX. It's doable on longer timeframes (1h+), but you wouldn't want to daytrade on 5min charts that way. Perfectly fine for exchange traded instruments, though.

This is one of the few reasons that I'm not using MW any more after a few years of using it as my daily driver. I love the platform (it's the best trading platform available, imo), but there are 2-3 showstoppers for me that would be relatively simple for MW to resolve. I'll switch back to MW in a heartbeat if v7 fixes this and the other issues (that I've discussed at length with the fine folks at MW), but in the meantime I'm slumming it with Quantower (which, incidentally, isn't so bad, and it's being actively developed at least). Anyway, I digress...
 
You're welcome.

And yes, you are right, the "workaround" is not ideal for FX. It's doable on longer timeframes (1h+), but you wouldn't want to daytrade on 5min charts that way. Perfectly fine for exchange traded instruments, though.

This is one of the few reasons that I'm not using MW any more after a few years of using it as my daily driver. I love the platform (it's the best trading platform available, imo), but there are 2-3 showstoppers for me that would be relatively simple for MW to resolve. I'll switch back to MW in a heartbeat if v7 fixes this and the other issues (that I've discussed at length with the fine folks at MW), but in the meantime I'm slumming it with Quantower (which, incidentally, isn't so bad, and it's being actively developed at least). Anyway, I digress...
This isn't off-topic because it seems we're discussing MW, but in fact, we're talking about finding the best trading platform. Just like you, I've used many trading platforms, such as Multicharts and Sierra Chart, etc. However, each of them has one or two minor issues that always make you feel uncomfortable when using them, and their official teams seem to refuse to make any changes. Currently, I'm using Sierra Chart. Although its GUI is very ugly, like a product from the last century, its functions are very powerful. But what I can't tolerate the most is its rudimentary stop-loss and take-profit tools. Since I do intraday trading, I hope to use it to quickly calculate the approximate position size, but it doesn't have this function. I think adding this function is actually very simple, but two years have passed and they still haven't made this change. So I have to start looking for other trading platforms. I've also tried Quantower, but its connection with IB is very poor. It always disconnects frequently, whether through TWS or IB gateway. This makes it almost impossible for IB users to complete normal trading. Also, its order entry is not convenient enough, especially for multiple orders. Currently, I'm trying Overchart. It seems to solve all the above problems, but its chart settings are too complicated. Of course, it might also be because I'm not proficient enough. I'll use it for a while and see.
 
Since I do intraday trading, I hope to use it to quickly calculate the approximate position size, but it doesn't have this function.
Something like this Metatrader EA would be awesome. You mark your SL and your LMT/STP entry, and it calculates position size and submits the order automatically. If you move your entry, it recalculates. If you want to enter on a MKT order, you mark your SL and then when you hit buy/sell it calculates position size based on bid/ask at the time you hit the button (with a configurable buffer to allow for slippage). I was going to try and port it to MW before I stopped using it.

Incidentally, Motivewave has this strategy which goes about halfway, but afaik it does not calculate position size for you like the above linked metatrader EA.

I think adding this function is actually very simple, but two years have passed and they still haven't made this change. So I have to start looking for other trading platforms. I've also tried Quantower, but its connection with IB is very poor. It always disconnects frequently, whether through TWS or IB gateway. This makes it almost impossible for IB users to complete normal trading. Also, its order entry is not convenient enough, especially for multiple orders. Currently, I'm trying Overchart. It seems to solve all the above problems, but its chart settings are too complicated. Of course, it might also be because I'm not proficient enough. I'll use it for a while and see.

I have a love/hate thing with Quantower. It is very pretty, drawing tools are reasonably nice to use, but it has quite a few bugs and seems to lack strong QA when new releases are made. But, it's one of few platforms that supports both Oanda and IB (albeit poorly with IB), and I need both of them. That's the main big showstopper with MW for me - lack of Oanda support, and this symbol mapping thing with IB.

I used Overcharts (and Multicharts) for a little while before settling on Quantower. I really wanted to like Overcharts because it is rock solid. So stable, and so fast. But it had too many things that made it cumbersome - the biggest annoyance I had with it was a 100 object drawing limit which I always hit part-way through my day. It sounds a lot, but I use a lot of little labels and symbols when I trade (like individual numbers at 8pt counting entries, or little lines to mark microtrends, etc), along with the usual trendlines and notes, etc, so it adds up quickly.
 
Something like this Metatrader EA would be awesome. You mark your SL and your LMT/STP entry, and it calculates position size and submits the order automatically. If you move your entry, it recalculates. If you want to enter on a MKT order, you mark your SL and then when you hit buy/sell it calculates position size based on bid/ask at the time you hit the button (with a configurable buffer to allow for slippage). I was going to try and port it to MW before I stopped using it.

Incidentally, Motivewave has this strategy which goes about halfway, but afaik it does not calculate position size for you like the above linked metatrader EA.



I have a love/hate thing with Quantower. It is very pretty, drawing tools are reasonably nice to use, but it has quite a few bugs and seems to lack strong QA when new releases are made. But, it's one of few platforms that supports both Oanda and IB (albeit poorly with IB), and I need both of them. That's the main big showstopper with MW for me - lack of Oanda support, and this symbol mapping thing with IB.

I used Overcharts (and Multicharts) for a little while before settling on Quantower. I really wanted to like Overcharts because it is rock solid. So stable, and so fast. But it had too many things that made it cumbersome - the biggest annoyance I had with it was a 100 object drawing limit which I always hit part-way through my day. It sounds a lot, but I use a lot of little labels and symbols when I trade (like individual numbers at 8pt counting entries, or little lines to mark microtrends, etc), along with the usual trendlines and notes, etc, so it adds up quickly.
Yes, if the R/R tool can achieve this level, it would be perfect. I also saw a similar function on the Ctrader web version. However, even if it doesn't reach this level, as long as it meets two conditions, it would be sufficient for me. First, it automatically calculates the position size based on the set risk level (account percentage or fixed amount). Second, the TP&SL offsets are based on the percentage of the opening price and automatically fill in the corresponding prices. After obtaining the position size, I can manually enter it and click the button to submit the order. Then, I can manually drag the TP&SL order lines. Although this method is not very precise and increases trading costs, it can roughly complete the process.

Regarding the halfway strategy you provided, I haven't had time to study it in depth yet. It seems that it can be implemented through programming. Maybe I will learn the corresponding code writing after determining the trading platform.

Quantower seems to still be in the development stage. Each update brings many changes. Although it supports many brokers, it has not optimized the connectivity for each broker. It feels like the basic framework has been established, but the details still need improvement.

I've given up on overcharts. It does not support trading of IB stock CFDs either. The same situation, yet they support FX CFDs trading. It's really confusing. From a software development perspective, according to the information provided in the IBAPI documentation, it's just a matter of changing one or two fields in the contract format to get it done. But they haven't done it.
 
Top