MultiCharts Automated trading

I heard Ninjatrader is even (far) worse when it comes to autoexecution. Forget those retail software autoexecutions. There are mainly built for backtesting only. If you need something good, you need to look for Deltix or kind, or do it on your own with a lot of efforts on being a programming expert here too. Just have a lok on all Rithmic feature and you might get an idea what all be done on execution side. And that is not the end of story of course. But Rithmic would be a start to get a better idea here.
 
or do it on your own with a lot of efforts on being a programming expert here too.
Build my own platform from scratch ? No thanks...don't want to be refining it and debugging it for the rest of my life.
Multicharts is hand-crafted C++ code and it is extremely efficient. Without this, I would have to get a newer, faster CPU.
How many times faster is C++ than C# ?
Total Run times: C#: 289ms, C++ 152ms (roughly 90% faster)
I wouldn't be surprised if MC was comprised of over a million lines of source code.
 
hey guys thank you all for the great conversation!

i find when i manually trade my systems i make money but when i let them auto trade they lose money.

no matter what broker and or data vendor and even platform multicharts and tradestation both have this problem.

it has to be a communication problems between the platform and the broker. or a lack of my understanding and abilities.

m
 
One must understand some important issues with regards to orders issued from MC :

brilliant could you post a simple system with conditions you think might work for me to test?

i don't expect it to make money, i just need to see if it matches historical trades when turned on and off.

i do not use limits because i know that in back testing that platforms will deliver fills that are unrealistic. so i try and use on open of next bar usually.

mark

ps or use the system below ave can be replaced with any average

// AMA System

Input: Price(Close), Period(10), Damp(0), LimSlope(0.01), delay(1);

Vars: Ave(Price), Slope(0);

Ave = KaufmanAMA(Price, Period, Damp);

Slope = AbsValue(Ave - Ave[1]);

if Slope > LimSlope then begin

if Ave < Ave[delay]
then Sell Short This Bar
else Buy This Bar ;
end;

TXAUiH.png
 
Last edited:
I mean so many things can go wrong when doing automated execution. There is no way to no t do babysitting all the time when trading. Thus you can manual trade then too. For example you can loose internet connection for a few seconds when there is a signal to be executed, or MC loose connection to verify your account while you have solid internet connection, then again no trade is executed. There could be something with your broker. A false statement from or to broker, a new update, even on windows sometimes too, to cause a mistake while executing orders. There are so many options things can go wrong here. You really would need a sophisticated execution algorithm to handle all possible errors here. What about slippage spread widening sometimes or having fast markets, you need to program that all when doing automated trading. And then it gets complicated when you cannot execute your order at once and need to do several brackets here. MC is not helpful here. Thus you can see it is built more or just for backtesting (and some realtime tracking as there are good data vendor options but that's it.).

I cannot speak to MC specifically in this regard, but the issues you've listed are the most basic items to check off in redundancy for any platform. they are all valid points, but they are not specific to MC whatsoever.
 
brilliant could you post a simple system with conditions you think might work for me to test?
Mark - I don't quite understand......what conditions ?
The big factor in getting historical results to match realtime results is intrabar order generation.
That makes a big difference. However, intrabar order generation is usually needed for scalping systems. Other systems can get away with end-of-bar orders.
 
Mark - I don't quite understand......what conditions ?

mc range bars will always open and close 1 tick above and below the last bar.

my validation of the trade need only occur at the close of the current bar and the entry to be the open of that next bar. without auto trading switched on, i can manually trade no problem. when i switch on auto trade everything goes crazy and it will always lose money.

m
 
I mean so many things can go wrong when doing automated execution. There is no way to no t do babysitting all the time when trading. Thus you can manual trade then too. For example you can loose internet connection for a few seconds when there is a signal to be executed, or MC loose connection to verify your account while you have solid internet connection, then again no trade is executed. There could be something with your broker. A false statement from or to broker, a new update, even on windows sometimes too, to cause a mistake while executing orders. There are so many options things can go wrong here. You really would need a sophisticated execution algorithm to handle all possible errors here. What about slippage spread widening sometimes or having fast markets, you need to program that all when doing automated trading. And then it gets complicated when you cannot execute your order at once and need to do several brackets here. MC is not helpful here. Thus you can see it is built more or just for backtesting (and some realtime tracking as there are good data vendor options but that's it.).

i feel your pain - seriously!

i have 3 internet feeds with auto fail-over to solve the problem of internet outages. mikrotik routers
i have my office running on a RV battery inverter rig that gives the generator time to kick on. triplite inverter
i am using old stable, no more update win 7 pro 64 bit os on only ssd's.

even with all this like you said software and brokers and data feeds are always messing up.

m
 
Back
Top