All the things that are wrong with Multicharts

Discussion in 'Trading Software' started by gmst, Feb 5, 2013.

  1. gmst


    I have been a user of MC for more than 2 yrs. I absolutely love the product. I strongly recommend it to beginner traders. It is way better than other competitors including Tradestation, NinjaTrader, SierraCharts etc.

    However, as a trader becomes an advanced user, he discovers a lot of limitations that any retail trading software will have. Multicharts is by no means an exception.

    So, I have decided to post here on 5th February, 2013 the key limitations that I think Multicharts has. They are a pretty responsive team. So, I hope they will work on these limitations and one year down the line - MC will be much better software, much better than any competitor.

    Post follows..........
  2. gmst


    MC doesn't do a lot of basic things:
    1) no bar magnifier with custom futures
    2) multiple symbols trading - though they are working on it for v9
    3) software hangs sometimes
    4) different charts can't share information without using Global Variables
    5) problem with weekly charts using custom futures
    6) can't rank equities in real time and select from a list to trade
    7) No pair trading - horrible
    8) No basket trading - very bad
    9) How to handle margin issues while trading multiple stocks - Amibroker is much better here.
    10) Just read the bugs they fix with every version. The software is very buggy frankly.
    11) No query language support - E.G. no way to query say returns following big range days
    12) No functionality for options trading
    13) Software is not smart enough to display FX PL in their base currency. Just do a backtest on a USD.JPY chart and see the performance report - you will see what I mean.

    Limited GUI functionality
    1) GUI has some good features but doesn't allow a lot of things - e.g. no place to display a real time PL curve while autotrading.
    2) If you want to look at say 1 particular day across 5 charts - say ES, CL, NQ, Bonds etc. - no fast way to do it. Say, you want to select a fed day and want all these charts show that day. Can't do.
    3) Can't do autotrading without plotting charts. Can't even backtest without a chart
    4) Loading symbols and data on a chart is super slow. Compare it with bloomberg - just ask one of the people you know who works in financial service industry - how fast a chart loads on bbg - its instantaneous
    5) Say you want to apply same strategy on 5 different markets and compare the result. Instead of having to set up a portfolio or apply the strategies individually 1-by-1 on each chart, it should be possible to select all the 5 charts by clicking on them+Ctrl. And then there should be a common strategy dropdown box listing all the strategies. Select the strategy you want to apply, it gets applied on all the charts and boom you have all the 5 performance reports open up at different places over their respective charts. So, that if you wish you can compare all those performance charts together. And since charts have been selected together so by default all performance reports should get selected together. So that if you click on monthly PL page for one chart, all other performance reports show you the monthly PL page.

    Bad design of Quotemanager
    1) You please tell me why should a user need a quotemanager?
    2) A much better design would be user just types a symbol name in a chart and data appears. So, just type IB_EUR.USD and boom - chart should come in. Why do you have to enter it in QM first?
    3) Current way of creating custom futures can be improved. E.G. Type IB_EUR.USD_CF_Ratio in the chart and boom.
    4) It should be possible to apply same custom futures creation methodology to a whole group of symbols from CME rather than going symbol by symbol. So, ES and NQ - user need not have to create 2 different custom futures symbols. Just 1 should suffice. E.G. IB_ES_CF_BackAdj_CME_EQINDEX and boom you have a group now for all eq index on CME.

    Again for GUI and QM
    The whole design can be made much simpler and user friendly. Remember, a long left pane in many softwares (like the one we have in Portfolio backtester). Like the windows folder design. Design should be like this - you should be able to create whole lots of symbols and groups in the left pane and just select them.

    Bad overall stability of database
    1) It is a well known fact that many a times, there are data holes in chart.
    2) Charts have weird big candles sometimes. And MC team many a time doesn't know what caused it.
    3) Workspaces can get corrupted and can get lost.
    4) Sometimes not often, software might just hang up or crash without too much load. Why in the world a serious autotrading software will crash? We are here not talking about microsoft products. They are better than TS though.

    Powerlanguage limitations
    1) Backtesting using PL is so slow - similar backtesting in C++ will be much faster
    2) PL compiler sucks - compare it with any modern compiler (Visual studio e.g.)

    To their credit, they do work on improvements but the pace is just so slow. Heard about placemarketorder and changemarketposition keywords. Helps in synchronizing while autotrading - they introduced these words so far so GOOD, but no documentation for them and more importantly they took so long to introduce these words!!

    We know MC is way better than TS as far as functionality and bugs are concerned. And as I said, it is a good introductory software which gets a lot of things right. However, after using it for a while, you realize that there are a whole host of things that it doesn't do.

    My intention is not to bash MC - afterall they are serving thousands of customers with different needs and different experience levels. I am just saying as a trader becomes advanced, the situation is not good for the trader. So, custom programming is the only solution left to an advanced profitable trader.

    I hope MC team will read this thread and improve the software. I will do an update on Feb 5, 2014. :)
  3. most anyone that knows anything seems to come with feedback like.. you have to do it yourself.. haha which is a big task .. at least for me.. i've only briefly looked at amibroker.. and there is a iqbroker i don't know anything about.. i hate the fact that its just not written in a language that is saturated like c#
    why a propertory language..
  4. gmst ,

    Thank you for the feedback. We will try to improve all features that you mentionned and will be glad if you help us to make our platform better. Detailed comments on every point in your list will be posted later.
  5. NoBias


    1. Time & Sales for discretionary traders was omitted from the list...

    Been promised for years to be incorporated, "soon", "in upcoming release" Would be nice to have a definitive date of implementation...

    2. Ability to scale/compress Dom lacking

    Ref: ButtonTrader scale compression by 2, 5, 10, 20, 50, 100
    eur.usd 1.00015 nominal
    eur.usd 1.0001, 1.0002, 1.0003, etc... [by 2]
    eur.usd 1.0002, 1.0004, 1.0006, etc.. [by 4]


    Format Window ref: Tradestation Matrix / format window / "Axis increment" / Custom


    Basically emulate either Buttontraders or Tradestation's price ladder basic features.

    Thank you kindly
  6. gmst,

    Let me address all your comments in order.

    It is already in our to-do list and should be implemented in one of the next versions.

    the developers are working on this feature at the moment.

    We are constantly analyzing all the crash reports that we get from our customers and fix all identified issues.

    Global Variables is a third party tool which is widely used due to its EasyLanguage compatibility. Please describe what kind of feature do you want to see in MultiCharts instead of Global Variables.

    It is not a trivial task from a programming point of view. However, we do plan to overcome this limitation in the future.

    These features will be implemented in the future.

    Please be more precise. What exactly do you mean?

    Every software from Apple to Microsoft release a lot of service packs, patches and bug fixes. More important is the fact that the bugs are fixed in a timely manner. Issues presented in every new version are related to the new features added in this version. It is possible to create an absolutely bug free application only if no new features are added.

    Please be more precise. Are you referring to accessing price data from the script? It can be done in MultiCharts .NET.

    We do not plan to implement any options-specific functionality.

    Multi-Currency support has been added to Order and Position Tracker.

    To select the currency to display values in the Accounts tab of Order and Position Tracker, select File in the main menu, click Preferences, select the Trading tab and select the currency from the Preferred Currency list.

    This functionality will be improved in Portfolio Trading.

    You can use the Custom Line 1 indicator with the input set to (i_openequity). Is this the feature that you are referring to?

    Could you provide us with more details?

    This will be implemented in Portfolio Trading.

    Please be more precise. What time intervals are we talking about: milliseconds, seconds?

    Due to its architechture MultiCharts requests data with day precision. It makes loading data a little slower, but generally we do not receive any complaints.

    Portfolio Performance Report in MultiCharts Portfolio Backtester shows net profit, trades, ratios and equity curve analysis symbol by symbol in the Breakdown by Symbols section.

    QuoteManager is a necessary program element which is used for data management. It is present in some form in every trading platform or charting application.

    There are multiple ways of adding a new symbol in MultiCharts. The user familiar with data vendor symbology can add a new symbol directly from MultiCharts window with the help of command line.

    If the exact symbol name is not known, QuoteManager can be used to search for and identify the correct symbol.

    It is possible to create a custom Futures via command line (individual contracts and symbol root should exist in QuoteManager):

    You should enter the Symbol Code, which represents rollover encoded in a line, in the command line. Encoding is done automatically. The symbol code can be copied from the Edit Custom Futures dialogue and then pasted (modified and pasted) to the command line, i.e. !6A_11VOC^HMUZ.

    Please describe your request in details. Do you want to have an option to create custom futures with the same rollover settings for every instrument from a particular exchange?

    At the moment, you can copy the Symbol Code from the Edit Custom Futures dialogue, modify it and paste it to the command line, i.e. !6A_11VOC^HMUZ changed to !6E_11VOC^HMUZ.

    Please provide us with more details. What exactly do you want to be changed or added?

    No such issues have been reported taking into account that MultiCharts is congfigured correctly. Please see the following MC Wiki article:

    What data source do you use? If it is Interactive Brokers, they tend to send bad ticks through their API. It is a confirmed issue on their end.

    The "Generate new tick if total volume changes" check box in IB data source settings will help you to avoid these spikes in MultiCharts (go to Quote Manager -> Tools -> Data Sources -> double click on Interactive Brokers). You can also reload the chart to get historical data from IB server and this data should not have any spikes.

    Various MultiCharts configurations and test cases are constantly being tested by our Quality Department on multiple computers with different configurations before providing a new version to end users. As I wrote you before, we are constantly analyzing all the crash reports that we get from our customers and fix all identified issues.

    This is due to the structure of PowerLanguage and EasyLanguage as well. To speed up things MultiCharts uses all cores instead of just one for optimization.

    You may want to take a look at Multicharts .NET, a developers' version allowing you to use Visual Studio. MC .Net works faster on complex calculations. You can use Visual studio to create, debug and compile studies for MC .Net.
  7. NoBias



    I had intended to piggy back on GMST's post, however, I see my inquiry was not addressed in your reply to him.

    Could you please reply to my comment regarding Axis Scaling also. When I contacted MC, I was told I needed to change the parameters in QuoteManager, unfortunately this would also affect Charting and is not a viable option as it distorts technical analysis.

    I noticed on TS Matrix that the axis scaling is also included on the Matrix itself. Posting as add'l reference.

    TS-minimum increment .00001


    TS-Axis Scaled .00005 per increment


    Regarding Time & Sales: MC stated later this year. Confirmation or update would also be appreciated.
    [This has been a source of frustration, for many years now]

    Thank you kindly for your attention to my inquiry.
  8. NoBias


    TS increment .00001

  9. NoBias


    TS axis increment changed .00005

  10. hektor



    it would be nice if we can type in the timeframe for each function or indicator.
    Ie. to calculate a 5 minute average on a 233 tick chart something like
    value1 = averageHT (Close,length, "5 min",symbol);

    Or at least something similar to
    #10     Feb 27, 2013