Prevent "undefined" symbols from being added to QuoteManager?  [SOLVED]

Questions about MultiCharts and user contributed studies.
Posts: 156
Joined: 19 Mar 2011
Has thanked: 43 times
Been thanked: 76 times

Prevent "undefined" symbols from being added to QuoteManager?

Postby Xyzzy » 02 Aug 2017

One of my (few) pet peeves with MultiCharts is that it adds every "undefined" symbol to QuoteManager. For example, if you enter "APL" instead of "AAPL" to pull up a chart of Apple, QuoteManager will automatically create a new symbol for "APL" as a member of the "undefined" exchange. It will then show a blank chart for the (nonexistent) symbol "APL @ Undefined." I then need to open QuoteManager, find the "undefined" symbol, and delete it.

Is there any way to prevent this from happening? I would much, much prefer if MultiCharts just gave an error message along the lines of "the symbol 'APL' does not exist." I do not want MultiCharts to automatically create new symbols just because I accidentally mistyped the name of a symbol.

User avatar
Henry MultiСharts
Posts: 8511
Joined: 25 Aug 2011
Has thanked: 1213 times
Been thanked: 2733 times

Re: Prevent "undefined" symbols from being added to QuoteManager?  [SOLVED]

Postby Henry MultiСharts » 03 Aug 2017

Hello Xyzzy,

MultiCharts cannot filter such typos. The only way you can prevent it from happening is by avoiding typing in wrong instrument names.

Posts: 156
Joined: 19 Mar 2011
Has thanked: 43 times
Been thanked: 76 times

Re: Prevent "undefined" symbols from being added to QuoteManager?

Postby Xyzzy » 14 Sep 2017

A belated thanks, Henry. My earlier question was a bit imprecise. My bigger question is: Why does MultiCharts add any instruments automatically from the command bar at all?

Let's say that I want to backtest a strategy on AAL (American Airlines). I might do the following:

1. First, open QuoteManager and add the symbol "AAL" from the NASDAQ exchange.

2. Next, open up a chart in MultiCharts and attempt to type "AAL 1 day" in the command line, but instead mistakenly type "AAPL 1 day."

3. MultiCharts then does the following:
a. Creates a new symbol entry for "AAPL - undefined exchange."
b. Makes a request to my data provider for one-day bars of "AAPL - undefined exchange."
c. Since this isn't a valid symbol definition, MultiCharts gets no return data from my provider, so it just shows a blank chart.

4. I then grumble at my computer, open QuoteManager, and delete the invalid symbol definition.

Step 3 is really unhelpful. Note that AAPL is a valid symbol for Apple Computers on the NASDAQ exchange. However, I didn't want to create a symbol for AAPL. More importantly, the new symbol doesn't even work, since the exchange is set to "undefined." This just creates more work for me.

Would there be any way to disable (or make optional) this feature of "automatically insert new symbols from the command bar"?

User avatar
Posts: 36
Joined: 10 Feb 2011
Location: Arizona
Has thanked: 2 times
Been thanked: 18 times

Re: Prevent "undefined" symbols from being added to QuoteManager?

Postby rrams » 16 Sep 2017

I agree this is a strange behavior to add undefined symbols to Quote Manager. I think it first checks the symbol Root in the Default Data Source of the Symbol Dictionary for a match and then assigns "undefined" to the exchange if it can't find one. (Which would be every time for stocks.)

What I would REALLY like is an exchange parameter added to the CommandLine list of supported expressions for the .csy command to change the chart symbol in PowerLanguage code:

Code: Select all

CommandLine(Text(".csy dnum=", NextExpiry, ", name=", SC, ", df=Interactive Brokers, ex=GLOBEX"));

So that I could roll forward an expiring contract to the next month AND add that symbol to Quote Manager if it is not there in one line of code.
Right now, I can switch chart symbols but need to manually add the new symbol to QM or it will automatically add the wrong, "undefined" one.
I don't even care if there is no broker symbol error checking, I keep my Symbol Dictionary up to date.

Maybe I'll add this as a feature request.

Return to “MultiCharts”