A reader contact me after my post last week and told me two interesting pieces of information. One was that the blog comments weren’t working (so that’s why you were all so quiet! Thanks for the heads up), and the other was that they believed that FXCM deliberately throttles tick data in Trading Station when compared to MT4.
The comments have been fixed and I looked into the throttled ticks claim. This reader, fx, claimed that FXCM throttled tick data and released one tick every 300ms in Trading Station. This didn’t quite seem right to me so I’m certain I had seen Trading Station update prices much more frequently than that, but sure enough I had never actually measured it.
Last week was NFPs so a great opportunity to try to log some rapid tick data so I fired up my Price Data Exporter strategy and started logging tick data. After a quick test I took a look at what was recorded and it didn’t seem right… so I kept digging. In the end, I believe I discovered a bug with the FXCM Lua Strategy framework.
The image below shows the three sets of tick data I recorded. The first set – ExtUpdate() – on the left shows tick data recorded by Price Data Exporter using the tick subscription offered in the framework. The middle set – Update() – the default tick data stream which should be identical to the left. The third set is what Trading Station captured as ticks during the same time periods.
Immediately you can see some interesting things.
The first main issue is that the Update() and ExtUpdate() ticks do not match each other. This is a big deal, and most definitely a bug in the framework. I have reported this to the developers and posted a notice on FxCodeBase to let others know. There are actually two problems here, one comes about from the use of a helper class in the framework, and the other is deep in the framework somewhere. Let’s hope they fix it soon. There is a workaround to address one of those two issues anyway.
The next main issue is that Trading Station receives far more ticks than the Lua framework provides. That’s not fair! What’s the point of writing tick-based strategies if you don’t get all the ticks! I hope they can fix this soon and I certainly will be chasing up with the team for this.
It isn’t my job to debug this issue, but I’m tempted to see if Indicators suffer the same problem. I suspect they don’t as indicators on the chart update very frequently so perhaps the problem is just in the strategy framework. I’ll keep you all updated on this.
Finally, coming back around to why we started this experiment, we can see that the ticks update far more frequently than once every 300ms. Let’s hope some day the strategies can receive this many ticks too!