Do you use this for back testing as well?
The application contains also facilities for both backtesting (which is a word that I hate) and "game simulation" on a folio with simulated markets [this would iterate through many trading sessions of desired length (years of millisec tickdata), and gives an overall view].
Personally, I never use the first one, but I use extensively (practically running continuously on my machines) the latter one, as it is absolutely indispensable to have insights on the dynamic of the programmed scalping/hedging game and the impact of the various parameters of game over numerous, sometimes extreme, and completely different scenarios. And also to imagine new useful mechanisms.
also calculating some of the indicators seems quite complex
Well, when you embark in something like that, and go through all is necessary, practically it becomes a lifetime commitment. "Complexity" is just one of your many journey companions. Anyway, for most basic needs, I also created, in time, my own indicators, with an eye to speed of computation (these are the SDX (direction index), the SCX ("codirection index"), and so on) [the description can be easily found on the Internet too]. Efficiency is important when you maintain perpetual data for an arbitrary large folio (with hundreds of instruments) and everything is recomputed real time.
As an example, I can maintain, with negligible effort, a complete matrix with all pairwise
realtime "correlations" indexes (the SCX), and when you have 100 active layers (like I have now) we are talking of a lot of entries just for this one (the picture has a filtered display).
I also do realtime data resampling to allow the trading engine to stay up perpetually with an arbitrary number of layers active. Clearly, for easier management, it's advisable not to exaggerate anyway with the number of layers, and, in case open, multiple instances of the client. One important feature is, in fact, that the application can have multiple instances running on the same account, and each instance will perform independently all its own PNL, G-L (and much more) computations on each tickdata (the account info coming from the broker is used only to check position synchronicity with the underlying account) thus also allowing the user to intervene manually realtime, and also to easily grab manual scalps, precise to the penny, if he wishes so.