question about symbol name in market watch

 

hi;

my question about symbol name in market watch :

1. in market watch , According to account there is ( i see ) for example : EURUSD & EURUSD.m  Is there another ?

2. in market watch , all currency must show with Capitalized letter.  for example:  " EURUSD" is correct and there is " eurusd" not exist ?

thanks in advance.

 
TIMisthebest:

hi;

my question about symbol name in market watch :

1. in market watch , According to account there is ( i see ) for example : EURUSD & EURUSD.m  Is there another ?

2. in market watch , all currency must show with Capitalized letter.  for example:  " EURUSD" is correct and there is " eurusd" not exist ?

thanks in advance.

1) EURUSD.m or EURUSDm .... simply means "Mini account" which differ by broker specifications from other account types (Classic, ECN, Pro). It may vary by spread, commision, leverage, and by symbols you can trade with such account type. But basically EURUSD and EURUSD.m is the same symbol. Only difference is that you are able to trade only EURUSD.m with Mini account.

2) I have no idea what you are talking about in point 2, but ... Yes = "EURUSD" symbol exists, while "eurusd" symbol not exists

 
Vorobyov:
TIMisthebest:

1) EURUSD.m or EURUSDm .... simply means "Mini account" which differ by broker specifications from other account types (Classic, ECN, Pro). It may vary by spread, commision, leverage, and by symbols you can trade with such account type. But basically EURUSD and EURUSD.m is the same symbol. Only difference is that you are able to trade only EURUSD.m with Mini account.

2) I have no idea what you are talking about in point 2, but ... Yes = "EURUSD" symbol exists, while "eurusd" symbol not exists

with thank' to reply;

1) i want to use in multi currency indicator. i define currency by string . i want to check them if they are in market watch or not. so i want to consider all type of account.

i was thinking for example  " EURUSD " or  " EURUSD.m " must check , but is there any other type for { eur/usd currency pair } ?

2)   for more sure the all market watch ( broker ) use Capitalized letter.

thank you.

 
TIMisthebest:

with thank' to reply;

1) i want to use in multi currency indicator. i define currency by string . i want to check them if they are in market watch or not. so i want to consider all type of account.

i was thinking for example  " EURUSD " or  " EURUSD.m " must check , but is there any other type for { eur/usd currency pair } ?

2)   for more sure the all market watch ( broker ) use Capitalized letter.

thank you.

https://www.metatrader5.com/en/terminal/help/trading/market_watch

Right-click in context menu of the "Market Watch" window and choose option "Show All" — show all securities available on the trade server; ... then you will know which symbols exist and which not. (in your Mini account)


If you really need to consider all account types, you must register with that specific broker you want (or with many hundreds of brokers available) and register with each of them all different account types each broker offers.

 

hi

how to determine" .m "or another " . * "   in symbol like :EURUSD.m

and no need to add for example  EURUSD.mz    or  EURUSD.m1

in marketwatch

Forum on trading, automated trading systems and testing trading strategies

share utility code

Mehrdad Shiri, 2014.03.20 07:31


.
.
.
int total_symbol=0; // Number of symbols name on the server
string empty_symbol="EMPTY";
string SYMBOLS_NAMES[SYMBOLS_COUNT];
.
.
.
//*************************************************************************
void OnInit()
  {
   SYMBOLS_NAMES[0]="EMPTY";
   InitSymbolNames();
.
.
.
}
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,const int prev_calculated,
                const datetime &Time[],
                const double   &Open[],
                const double   &High[],
                const double   &Low[],
                const double   &Close[],
                const long     &TickVolume[],
                const long     &Volume[],
                const int      &Spread[])
{
.
.
.
InitSymbolNames();
.
.
.
//--- done
   return(rates_total);
}
//+------------------------------------------------------------------+
void InitSymbolNames()
  {
   AddSymbolToMarketWatch(SYMBOLS_NAMES[1],"EUR","eur","GBP","gbp");
  }
//+------------------------------------------------------------------+
string AddSymbolToMarketWatch(string &name,string PART_1,string part_1,string PART_2,string part_2)
  {
   name=empty_symbol;                // Symbol name
   total_symbol=SymbolsTotal(false);          //--- Total symbols on the server
//--- Iterate over the entire list of symbols
   for(int i=0;i<total_symbol;i++)
     {      
      if(
         (SymbolInfoString(SymbolName(i,false),SYMBOL_CURRENCY_BASE)==PART_1&&SymbolInfoString(SymbolName(i,false),SYMBOL_CURRENCY_PROFIT)==PART_2)
         ||
         (SymbolInfoString(SymbolName(i,false),SYMBOL_CURRENCY_BASE)==part_1&&SymbolInfoString(SymbolName(i,false),SYMBOL_CURRENCY_PROFIT)==part_2)
        )
        {
         name=SymbolName(i,false);  //--- If this symbol is available,
         SymbolSelect(name,true);   //--- add it to the Market Watch window and
         return(name);              //--- return its name
         break;
        }
     }
   return(name);
  }
//********************************************************************************************************************

& thanks for help


 
Mehrdad Shiri:

hi

how to determine" .m "or another " . * "   in symbol like :EURUSD.m

and no need to add for example  EURUSD.mz    or  EURUSD.m1

in marketwatch


several ways

StringFind()

is one of them.

normally i write a detailed response but since someone is removing my posts,

it's time to stop putting in the effort.

 
Marco vd Heijden:

thank you to reply.

i used this:

if(StringSubstr(name,6,-1)==".m")
 

yes but that can give error when it encounters for example "GOLD.m"

so its best to look for ".m" in the entire string. 

 
Marco vd Heijden:

yes but that can give error when it encounters for example "GOLD.m"

so its best to look for ".m" in the entire string. 

i using this.

for(int i=0;i<total_symbol;i++)            //--- Iterate over the entire list of symbols
     {      
      if(
         (SymbolInfoString(SymbolName(i,false),SYMBOL_CURRENCY_BASE)==PART_1&&SymbolInfoString(SymbolName(i,false),SYMBOL_CURRENCY_PROFIT)==PART_2)
         ||
         (SymbolInfoString(SymbolName(i,false),SYMBOL_CURRENCY_BASE)==part_1&&SymbolInfoString(SymbolName(i,false),SYMBOL_CURRENCY_PROFIT)==part_2)
        )
        {
         name=SymbolName(i,false);            //--- If this symbol is available,
         if(StringSubstr(name,6,-1)==".m")    //--- use it as you need OR not
           {
            SymbolSelect(name,true);          //--- add it to the Market Watch window and
            return(name);                     //--- return its name
            break;
           }
        }
     }

highlighted line's corrected.

thank you to reply

 

Not all symbol names are 6 chars.

 Thats why you search entire string.

for(int i=0;i<total_symbol;i++)            //--- Iterate over the entire list of symbols
     {      
      if(
         (SymbolInfoString(SymbolName(i,false),SYMBOL_CURRENCY_BASE)==PART_1&&SymbolInfoString(SymbolName(i,false),SYMBOL_CURRENCY_PROFIT)==PART_2)
         ||
         (SymbolInfoString(SymbolName(i,false),SYMBOL_CURRENCY_BASE)==part_1&&SymbolInfoString(SymbolName(i,false),SYMBOL_CURRENCY_PROFIT)==part_2)
        )
        {
         name=SymbolName(i,false);            //--- If this symbol is available,
         if(StringFind(name,".m",0)==1)       //--- use it as you need OR not
           {
            SymbolSelect(name,true);          //--- add it to the Market Watch window and
            return(name);                     //--- return its name
            break;
           }
        }
     }
 
Marco vd Heijden:
thank you.
Reason: