← К каталогу
Исходный код · ID 366

MultiTrader

multitrader.mq4
Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

MultiTrader — торговый советник для MetaTrader 4, предоставляющий мультивалютный дашборд для мониторинга и торговли на рынке Forex. Программа отображает панель с информацией по 28 основным валютным парам, включая текущие цены, спреды, открытые позиции, плавающий профит и процентные изменения за выбранный период. Поддерживаются три режима отображения панели: полный, компактный и мини.

Советник реализует систему алертов на основе уровней покупки и продажи, рассчитанных по процентному изменению цены за дневной, недельный или месячный период. При достижении заданных уровней генерируются уведомления с возможностью подсказки коррелирующей валютной пары. Поддерживаются всплывающие окна, push-уведомления и отправка email.

Торговая функциональность включает возможность открытия и закрытия рыночных ордеров через кнопки на панели, поддержку однонажатия и клавиатурного управления. Автоматические стоп-лосс, тейк-профит и расчёт размера лота на основе ATR и заданного риска доступны как опциональные функции. Советник работает с магическим номером для идентификации своих ордеров и поддерживает настройку проскальзывания.

Настройки программы

НастройкаОписание
SelectedMode Режим отображения — Выбор режима панели: Full, Compact или Mini
CalcPeriod Период расчёта — Выбор таймфрейма для расчёта: Daily, Weekly или Monthly
High Level % (BuyLevel) Уровень покупки — Процентный уровень для сигнала на покупку (High Level %)
Low Level % (SellLevel) Уровень продажи — Процентный уровень для сигнала на продажу (Low Level %)
Symbol Prefix (Prefix) Префикс символа — Префикс, добавляемый к названиям валютных пар
Symbol Suffix (Suffix) Суффикс символа — Суффикс, добавляемый к названиям валютных пар
OneClickTrading Однонажатие — Включает или отключает режим торговли одним кликом
Magic Number (MagicNumber) Магический номер — Идентификатор ордеров для фильтрации
Slippage (Slippage) Проскальзывание — Максимально допустимое проскальзывание в пунктах
ATRTF Таймфрейм ATR — Таймфрейм для расчёта ATR
ATRPeriod Период ATR — Период расчёта ATR
ATRMulti Множитель ATR — Множитель для ATR при расчёте стоп-лосса
PairSuggest Подсказки пар — Включает или отключает подсказки валютных пар в алертах
SmartAlert Умные алерты — Включает или отключает условные алерты с триггерами
_Alert Всплывающие окна — Включает или отключает всплывающие уведомления
Push Push-уведомления — Включает или отключает push-уведомления
Mail Email — Включает или отключает отправку алертов на email
COLOR_BORDER Цвет рамки — Цвет рамки панели
COLOR_CBG_LIGHT Фон светлый — Цвет фона графика в светлой теме
COLOR_CBG_DARK Фон тёмный — Цвет фона графика в тёмной теме
Получить полный код

Поиск по коду файла

#define Copyright          "Copyright ? 2019, MhFx7 <> Mani Heshmat"

#define Link               ""

#define Version            "1.00"
#property version          Version
#property strict

#define ExpertName         "MultiTrader"
#define OBJPREFIX          "MT - "

#property description      "Warning: The automatically generated lot size is an estimated value and should not be considered accurate, note that this feature always requires a stoploss distance.\n"
#property description      "Note: All displayed values symbolized with a \"p\" as well as all input distances are in points.\n"
#property description      "This software is provided free of charge and can be downloaded under the following link:"
#property description      ""

#define CLIENT_BG_WIDTH    1190
#define INDENT_TOP         15

#define OPENPRICE          0
#define CLOSEPRICE         1

#define OP_ALL            -1

#define KEY_UP             38 
#define KEY_DOWN           40 

enum ENUM_TF{DAILY/*Daily*/,WEEKLY/*Weekly*/,MONTHLY/*Monthly*/};
enum ENUM_MODE{FULL/*Full*/,COMPACT/*Compact*/,MINI/*Mini*/};

input string ?="                    < - - -  General  - - - >";
input ENUM_MODE SelectedMode  = COMPACT;/*Dashboard (Size)*/
input ENUM_TF CalcPeriod      = DAILY;/*Time Frame*/
input int BuyLevel            = 90;//High Level %
input int SellLevel           = 10;//Low Level %
input string Prefix           = "";//Symbol Prefix
input string Suffix           = "";//Symbol Suffix
extern string TradeSymbols    = "AUDCAD;AUDCHF;AUDJPY;AUDNZD;AUDUSD;CADCHF;CADJPY;CHFJPY;EURAUD;EURCAD;EURCHF;EURGBP;EURJPY;EURNZD;EURUSD;GBPAUD;GBPCAD;GBPCHF;GBPNZD;GBPUSD;GBPJPY;NZDCHF;NZDCAD;NZDJPY;NZDUSD;USDCAD;USDCHF;USDJPY;";/*Symbol List (separated by " ; ")*/
input string ??               = "                    < - - -  Trading  - - - >";
input bool OneClickTrading    = true;/*One-Click Trading*/
input int MagicNumber         = 0;//Magic Number
input int Slippage            = 3;//Slippage
input bool KeyboardTrading    = true;/*Keyboard Trading*/
input string BuyKey           = "B";/*Buy Key*/
input string CloseKey         = "C";/*Close Key*/
input string SellKey          = "S";/*Sell Key*/
input string ???              = "                    < - - -  AutoSL  - - - >";
input ENUM_TIMEFRAMES ATRTF   = PERIOD_H1;/*ATR Time Frame*/
input int ATRPeriod           = 14;/*ATR Period*/
extern double ATRMulti        = 1;/*ATR Multiplier*/
input string ????             = "                    < - - -  Alerts  - - - >";
input bool PairSuggest        = true;/*Suggestions*/
input bool SmartAlert         = true;/*Smart Alerts*/
input bool _Alert             = true;/*Pop-ups*/
input bool Push               = false;/*Push*/
input bool Mail               = false;/*Email*/
input string ?????            = "                    < - - -  Graphics  - - - >";
input color COLOR_BORDER      = C'255,151,25';/*Panel Border*/
input color COLOR_CBG_LIGHT   = C'252,252,252';/*Chart Background (Light)*/
input color COLOR_CBG_DARK    = C'28,27,26';/*Chart Background (Dark)*/

string sTradeSymbols          = TradeSymbols;
string sFontType              = "";

double RiskP                  = 0;
double RiskC                  = 0;
double RiskInpC               = 0;
double RiskInpP               = 0;

int ResetAlertUp              = 0;
int ResetAlertDwn             = 0;
bool UserIsEditing            = false;
bool UserWasNotified          = false;

double StopLossDist           = 0;
double RiskInp                = 0;
double RR                     = 0;
double _TP                    = 0;

int SelectedTheme             = 0;
int PriceRowLeft              = 0;
int PriceRowRight             = 0;
bool ShowTradePanel           = true;

int ErrorInterval             = 300;
int LastReason                = 0;
string ErrorSound             = "error.wav";
bool SoundIsEnabled           = false;
bool AlarmIsEnabled           = false;
int ProfitMode                = 0;

bool AUDAlarm                 = true;
bool CADAlarm                 = true;
bool CHFAlarm                 = true;
bool EURAlarm                 = true;
bool GBPAlarm                 = true;
bool JPYAlarm                 = true;
bool NZDAlarm                 = true;
bool USDAlarm                 = true;

bool AUDTrigger               = false;
bool CADTrigger               = false;
bool CHFTrigger               = false;
bool EURTrigger               = false;
bool GBPTrigger               = false;
bool JPYTrigger               = false;
bool NZDTrigger               = false;
bool USDTrigger               = false;

string SuggestedPair          = "";
int LastTimeFrame             = 0;
int LastMode                  = -1;

bool AutoSL                   = false;
bool AutoTP                   = false;
bool AutoLots                 = false;
bool ClearedTemplate          = false;
bool FirstRun                 = true;

color COLOR_BG                = clrNONE;
color COLOR_FONT              = clrNONE;

color COLOR_GREEN             = clrForestGreen;
color COLOR_RED               = clrFireBrick;
color COLOR_SELL              = C'225,68,29';
color COLOR_BUY               = C'3,95,172';
color COLOR_CLOSE             = clrNONE;
color COLOR_AUTO              = clrDodgerBlue;
color COLOR_LOW               = clrNONE;
color COLOR_MARKER            = clrNONE;
int FONTSIZE                  = 9;

int _x1                       = 0;
int _y1                       = 0;
int ChartX                    = 0;
int ChartY                    = 0;
int Chart_XSize               = 0;
int Chart_YSize               = 0;
int CalcTF                    = 0;
datetime drop_time            = 0;
datetime stauts_time          = 0;

color COLOR_REGBG             = C'27,27,27';
color COLOR_REGFONT           = clrSilver;

int Bck_Win_X                 = 255;
int Bck_Win_Y                 = 150;

string aSymbols[];
string UsedSymbols[];

string MB_CAPTION=ExpertName+" v"+Version+" | "+Copyright;

string PriceRowLeftArr[]={"Bid","Low","Open","Pivot"};
string PriceRowRightArr[]={"Ask","High","Open","Pivot"};

int OnInit()
  {
      // код доступен только после оплаты
   }

void OnDeinit(const int reason)
  {

   EventKillTimer();

   if(reason!=REASON_INITFAILED && !MQLInfoInteger(MQL_TESTER))
     {

      for(int i=0; i<ArraySize(aSymbols); i++)
        {

         GlobalVariableDel(Prefix+aSymbols[i]+Suffix+" - Price");

         if(ShowTradePanel)
           {
            GlobalVariableSet(OBJPREFIX+Prefix+aSymbols[i]+Suffix+" - Stoploss",StringToDouble(ObjectGetString(0,OBJPREFIX+"SL<>"+" - "+Prefix+aSymbols[i]+Suffix,OBJPROP_TEXT)));
            GlobalVariableSet(OBJPREFIX+Prefix+aSymbols[i]+Suffix+" - Takeprofit",StringToDouble(ObjectGetString(0,OBJPREFIX+"_TP<>"+" - "+Prefix+aSymbols[i]+Suffix,OBJPROP_TEXT)));
            GlobalVariableSet(OBJPREFIX+Prefix+aSymbols[i]+Suffix+" - Lotsize",StringToDouble(ObjectGetString(0,OBJPREFIX+"LOTSIZE<>"+" - "+Prefix+aSymbols[i]+Suffix,OBJPROP_TEXT)));
           }
        }

      if(ShowTradePanel)
        {
         GlobalVariableSet(OBJPREFIX+"Stoploss",StringToDouble(ObjectGetString(0,OBJPREFIX+"SL<>",OBJPROP_TEXT)));
         GlobalVariableSet(OBJPREFIX+"Takeprofit",StringToDouble(ObjectGetString(0,OBJPREFIX+"_TP<>",OBJPROP_TEXT)));
         GlobalVariableSet(OBJPREFIX+"Lotsize",StringToDouble(ObjectGetString(0,OBJPREFIX+"LOTSIZE<>",OBJPROP_TEXT)));
        }

      GlobalVariableSet(OBJPREFIX+"Theme",SelectedTheme);

      GlobalVariableSet(OBJPREFIX+"Dashboard",ShowTradePanel);

      GlobalVariableSet(OBJPREFIX+"Sound",SoundIsEnabled);

      GlobalVariableSet(OBJPREFIX+"Alarm",AlarmIsEnabled);

      GlobalVariableSet(OBJPREFIX+"AutoSL",AutoSL);
      GlobalVariableSet(OBJPREFIX+"AutoTP",AutoTP);
      GlobalVariableSet(OBJPREFIX+"AutoLots",AutoLots);

      GlobalVariableSet(OBJPREFIX+"RR",RR);
      GlobalVariableSet(OBJPREFIX+"Risk",RiskInp);

      GlobalVariableSet(OBJPREFIX+"PRL",PriceRowLeft);
      GlobalVariableSet(OBJPREFIX+"PRR",PriceRowRight);

      GlobalVariablesFlush();
     }

   if(reason<=REASON_REMOVE || reason==REASON_CLOSE || reason==REASON_RECOMPILE || reason==REASON_INITFAILED || reason==REASON_ACCOUNT)
     {
      ObjectsDeleteAll(0,OBJPREFIX,-1,-1);
      DelteMinWindow();
     }

   if(reason<=REASON_REMOVE || reason==REASON_CLOSE || reason==REASON_RECOMPILE)
     {

      if(ClearedTemplate)
         ChartSetColor(2);
     }

   ChartMouseScrollSet(true);

   if(!GlobalVariableCheck(OBJPREFIX+"Registred"))
      GlobalVariableSet(OBJPREFIX+"Registred",1);

   LastMode=SelectedMode;

   LastReason=reason;

  }

void OnTimer()
  {

   if(PairSuggest)
      ResetTrigger();

   if(ArraySize(aSymbols)>ArraySize(UsedSymbols))
     {

      for(int i=0; i<ArraySize(aSymbols); i++)
         SpeedOmeter(Prefix+aSymbols[i]+Suffix);
     }
   else
     {

      for(int i=0; i<ArraySize(UsedSymbols); i++)
         SpeedOmeter(Prefix+UsedSymbols[i]+Suffix);
     }

   if(drop_time<TimeLocal()-15)
     {

      if((CalcPeriod==DAILY && Hour()>=4) || (CalcPeriod==WEEKLY && TimeDayOfWeek(TimeCurrent())>=2) || (CalcPeriod==MONTHLY && Day()>=4))
         Alert();
     }

   if(ShowTradePanel)
     {

      ObjectsCreateAll();

      for(int i=0; i<ArraySize(aSymbols); i++)
        {
         ObjectsUpdateAll(Prefix+aSymbols[i]+Suffix);
         GetSetInputs(Prefix+aSymbols[i]+Suffix);
        }

      GetSetInputsA();

      OverAllInfo();

      CStrenghts();

      if(LastReason==REASON_CHARTCHANGE)
        {
         Chart_XSize=(int)ChartGetInteger(0,CHART_WIDTH_IN_PIXELS);
         Chart_YSize=(int)ChartGetInteger(0,CHART_HEIGHT_IN_PIXELS);

         ChartX=Chart_XSize;
         ChartY=Chart_YSize;

         LastReason=0;
        }

      if(ChartX!=Chart_XSize || ChartY!=Chart_YSize)
        {
         ObjectsDeleteAll(0,OBJPREFIX,-1,-1);

         ObjectsCreateAll();

         ChartX=Chart_XSize;
         ChartY=Chart_YSize;
        }

      Chart_XSize=(int)ChartGetInteger(0,CHART_WIDTH_IN_PIXELS);
      Chart_YSize=(int)ChartGetInteger(0,CHART_HEIGHT_IN_PIXELS);

      if(TerminalInfoInteger(TERMINAL_CONNECTED))
        {

         if(ObjectGetString(0,OBJPREFIX+"CONNECTION",OBJPROP_TEXT)!="?")//GetObject
            ObjectSetString(0,OBJPREFIX+"CONNECTION",OBJPROP_TEXT,"?");//SetObject

         if(ObjectGetString(0,OBJPREFIX+"CONNECTION",OBJPROP_TOOLTIP)!="Connected")//GetObject
           {
            double Ping=TerminalInfoInteger(TERMINAL_PING_LAST);//SetPingToMs
            ObjectSetString(0,OBJPREFIX+"CONNECTION",OBJPROP_TOOLTIP,"Connected..."+"\nPing: "+DoubleToString(Ping/1000,2)+" ms");//SetObject
           }
        }

      else
        {

         if(ObjectGetString(0,OBJPREFIX+"CONNECTION",OBJPROP_TEXT)!="?")//GetObject
            ObjectSetString(0,OBJPREFIX+"CONNECTION",OBJPROP_TEXT,"?");//SetObject

         if(ObjectGetString(0,OBJPREFIX+"CONNECTION",OBJPROP_TOOLTIP)!="No connection!")//GetObject
            ObjectSetString(0,OBJPREFIX+"CONNECTION",OBJPROP_TOOLTIP,"No connection!");//SetObject
        }

      if(stauts_time<TimeLocal()-1)
         ResetStatus();

      Comment("");
      ChartRedraw();
     }
   else
      CreateMinWindow();

  }

void OnChartEvent(const int id,
                  const long &lparam,
                  const double &dparam,
                  const string &sparam)
  {

   if(id==CHARTEVENT_KEYDOWN)
     {

      if(KeyboardTrading)
        {

         if(lparam==StringGetChar(BuyKey,0))
           {

            OrderSend(_Symbol,OP_BUY);

            ObjectSetInteger(0,OBJPREFIX+"BUY"+" - "+_Symbol,OBJPROP_STATE,false);//SetObject
           }

         if(lparam==StringGetChar(SellKey,0))
           {

            OrderSend(_Symbol,OP_SELL);

            ObjectSetInteger(0,OBJPREFIX+"SELL"+" - "+_Symbol,OBJPROP_STATE,false);//SetObject
           }

         if(lparam==StringGetChar(CloseKey,0))
           {

            if(OpenPos(_Symbol,OP_ALL)==0)
              {

               SetStatus("?","No open orders...");
               Sleep(100);

               ObjectSetInteger(0,OBJPREFIX+"CLOSE"+" - "+_Symbol,OBJPROP_STATE,false);//SetObject
              }

            OrderClose(_Symbol);

            ObjectSetInteger(0,OBJPREFIX+"CLOSE"+" - "+_Symbol,OBJPROP_STATE,false);//SetObject
           }

         if(lparam==KEY_UP)
           {

            int index=0;

            for(int i=0; i<ArraySize(aSymbols); i++)
              {
               if(_Symbol==Prefix+aSymbols[i]+Suffix)
                 {

                  index=i-1;

                  if(index<0)
                     index=ArraySize(aSymbols)-1;

                  if(SymbolFind(Prefix+aSymbols[index]+Suffix,false))
                    {
                     ChartSetSymbolPeriod(0,Prefix+aSymbols[index]+Suffix,PERIOD_CURRENT);
                     SetStatus("?","Switched to "+aSymbols[index]);
                     break;
                    }
                 }
              }
           }

         if(lparam==KEY_DOWN)
           {

            int index=0;

            for(int i=0; i<ArraySize(aSymbols); i++)
              {

               if(_Symbol==Prefix+aSymbols[i]+Suffix)
                 {

                  index=i+1;

                  if(index>=ArraySize(aSymbols))
                     index=0;

                  if(SymbolFind(Prefix+aSymbols[index]+Suffix,false))
                    {
                     ChartSetSymbolPeriod(0,Prefix+aSymbols[index]+Suffix,PERIOD_CURRENT);
                     SetStatus("?","Switched to "+aSymbols[index]);
                     break;
                    }
                 }
              }
           }
        }
     }

   if(id==CHARTEVENT_OBJECT_CLICK)
     {

      for(int i=0; i<ArraySize(Currenies); i++)
        {

         if(sparam==OBJPREFIX+"SL<>"+" - "+Currenies[i] || sparam==OBJPREFIX+"LOTSIZE<>"+" - "+Currenies[i] || sparam==OBJPREFIX+"_TP<>"+" - "+Currenies[i] || sparam==OBJPREFIX+"RISK%<>" || sparam==OBJPREFIX+"RISK$<>" || sparam==OBJPREFIX+"RR<>")
            UserIsEditing=true;

         if(sparam==OBJPREFIX+"BUY"+" - "+Currenies[i])
           {

            BuyBasket(Currenies[i]);

            ObjectSetInteger(0,OBJPREFIX+"BUY"+" - "+Currenies[i],OBJPROP_STATE,false);//SetObject
           }

         if(sparam==OBJPREFIX+"CLOSE"+" - "+Currenies[i])
           {

            CloseBasket(Currenies[i]);

            ObjectSetInteger(0,OBJPREFIX+"CLOSE"+" - "+Currenies[i],OBJPROP_STATE,false);//SetObject
           }

         if(sparam==OBJPREFIX+"SELL"+" - "+Currenies[i])
           {

            SellBasket(Currenies[i]);

            ObjectSetInteger(0,OBJPREFIX+"SELL"+" - "+Currenies[i],OBJPROP_STATE,false);//SetObject
           }

        }

      for(int i=0; i<ArraySize(aSymbols); i++)
        {

         if(sparam==OBJPREFIX+"SELL"+" - "+Prefix+aSymbols[i]+Suffix)
           {

            OrderSend(Prefix+aSymbols[i]+Suffix,OP_SELL);

            ObjectSetInteger(0,OBJPREFIX+"SELL"+" - "+Prefix+aSymbols[i]+Suffix,OBJPROP_STATE,false);//SetObject
            break;
           }

         if(sparam==OBJPREFIX+"BUY"+" - "+Prefix+aSymbols[i]+Suffix)
           {

            OrderSend(Prefix+aSymbols[i]+Suffix,OP_BUY);

            ObjectSetInteger(0,OBJPREFIX+"BUY"+" - "+Prefix+aSymbols[i]+Suffix,OBJPROP_STATE,false);//SetObject
            break;
           }

         if(sparam==OBJPREFIX+"CLOSE"+" - "+Prefix+aSymbols[i]+Suffix)
           {

            if(OpenPos(Prefix+aSymbols[i]+Suffix,OP_ALL)==0)
              {
               SetStatus("?","No open orders...");
               Sleep(100);
               ObjectSetInteger(0,OBJPREFIX+"CLOSE"+" - "+Prefix+aSymbols[i]+Suffix,OBJPROP_STATE,false);//SetObject
               break;
              }

            OrderClose(Prefix+aSymbols[i]+Suffix);

            ObjectSetInteger(0,OBJPREFIX+"CLOSE"+" - "+Prefix+aSymbols[i]+Suffix,OBJPROP_STATE,false);//SetObject
            break;
           }

         if(sparam==OBJPREFIX+"LOTSIZE<"+" - "+Prefix+aSymbols[i]+Suffix)
           {
            if(!AutoLots)
              {

               double LotSize=StringToDouble(ObjectGetString(0,OBJPREFIX+"LOTSIZE<>"+" - "+Prefix+aSymbols[i]+Suffix,OBJPROP_TEXT));

               if(!UserIsEditing)
                  ObjectSetString(0,OBJPREFIX+"LOTSIZE<>"+" - "+Prefix+aSymbols[i]+Suffix,OBJPROP_TEXT,0,DoubleToString(LotSize-=LotStep(Prefix+aSymbols[i]+Suffix),2));//SetObject
              }
           }

         if(sparam==OBJPREFIX+"LOTSIZE>"+" - "+Prefix+aSymbols[i]+Suffix)
           {
            if(!AutoLots)
              {

               double LotSize=StringToDouble(ObjectGetString(0,OBJPREFIX+"LOTSIZE<>"+" - "+Prefix+aSymbols[i]+Suffix,OBJPROP_TEXT));

               if(!UserIsEditing)
                  ObjectSetString(0,OBJPREFIX+"LOTSIZE<>"+" - "+Prefix+aSymbols[i]+Suffix,OBJPROP_TEXT,0,DoubleToString(LotSize+=LotStep(Prefix+aSymbols[i]+Suffix),2));//SetObject
              }
           }

         if(sparam==OBJPREFIX+"SETSL<>")
           {
            if(!AutoSL)
              {

               double StopLoss=StringToDouble(ObjectGetString(0,OBJPREFIX+"SL<>",OBJPROP_TEXT));

               if(!UserIsEditing)
                  ObjectSetString(0,OBJPREFIX+"SL<>"+" - "+Prefix+aSymbols[i]+Suffix,OBJPROP_TEXT,0,DoubleToString(StopLoss,0));//SetObject
              }
            else
              {
               SetStatus("?","Disable auto sl first...");
               _PlaySound(ErrorSound);
               Sleep(100);
               ObjectSetInteger(0,OBJPREFIX+"SETSL<>",OBJPROP_STATE,false);//SetObject
               break;
              }

            ObjectSetInteger(0,OBJPREFIX+"SETSL<>",OBJPROP_STATE,false);//SetObject
           }

         if(sparam==OBJPREFIX+"SETTP<>")
           {
            if(!AutoTP)
              {

               double TakeProfit=StringToDouble(ObjectGetString(0,OBJPREFIX+"_TP<>",OBJPROP_TEXT));

               if(!UserIsEditing)
                  ObjectSetString(0,OBJPREFIX+"_TP<>"+" - "+Prefix+aSymbols[i]+Suffix,OBJPROP_TEXT,0,DoubleToString(TakeProfit,0));//SetObject
              }
            else
              {
               SetStatus("?","Disable auto tp first...");
               _PlaySound(ErrorSound);
               Sleep(100);
               ObjectSetInteger(0,OBJPREFIX+"SETTP<>",OBJPROP_STATE,false);//SetObject
               break;
              }

            ObjectSetInteger(0,OBJPREFIX+"SETTP<>",OBJPROP_STATE,false);//SetObject
           }

         if(sparam==OBJPREFIX+"SETLOTS<>")
           {

            if(!AutoLots)
              {

               double LotSize=StringToDouble(ObjectGetString(0,OBJPREFIX+"LOTSIZE<>",OBJPROP_TEXT));

               if(!UserIsEditing)
                  ObjectSetString(0,OBJPREFIX+"LOTSIZE<>"+" - "+Prefix+aSymbols[i]+Suffix,OBJPROP_TEXT,0,DoubleToString(LotSize,2));//SetObject
              }
            else
              {
               SetStatus("?","Disable auto lots first...");
               _PlaySound(ErrorSound);
               Sleep(100);
               ObjectSetInteger(0,OBJPREFIX+"SETLOTS<>",OBJPROP_STATE,false);//SetObject
               break;
              }

            ObjectSetInteger(0,OBJPREFIX+"SETLOTS<>",OBJPROP_STATE,false);//SetObject
           }

         if(sparam==OBJPREFIX+Prefix+aSymbols[i]+Suffix)
           {
            ChartSetSymbolPeriod(0,Prefix+aSymbols[i]+Suffix,PERIOD_CURRENT);
            SetStatus("?","Switched to "+aSymbols[i]);
            break;
           }
        }

      if(sparam==OBJPREFIX+"EXIT")
        {

         if(MessageBox("Are you sure you want to exit?",MB_CAPTION,MB_ICONQUESTION|MB_YESNO)==IDYES)
            ExpertRemove();//Exit
        }

      if(sparam==OBJPREFIX+"MINIMIZE")
        {
         ObjectsDeleteAll(0,OBJPREFIX,-1,-1);
         CreateMinWindow();
         ShowTradePanel=false;
         ChartMouseScrollSet(true);
         ChartSetColor(2);
         ClearedTemplate=false;
        }

      if(sparam==OBJPREFIX+"MIN"+"MAXIMIZE")
        {
         DelteMinWindow();
         ObjectsCreateAll();
         ShowTradePanel=true;
         ChartMouseScrollSet(false);
        }

      if(sparam==OBJPREFIX+"CONNECTION")
        {

         double Ping=TerminalInfoInteger(TERMINAL_PING_LAST);//SetPingToMs

         if(TerminalInfoInteger(TERMINAL_CONNECTED))
            SetStatus("\n","Ping: "+DoubleToString(Ping/1000,2)+" ms");
         else
            SetStatus("?","No Internet connection...");
        }

      if(sparam==OBJPREFIX+"TIME" || sparam==OBJPREFIX+"TIME?")
         SetStatus("\n",_DayOfWeek()+", "+IntegerToString(TimeDay(TimeLocal()))+" "+_Month()+" "+IntegerToString(TimeDayOfYear(TimeLocal())));

      if(sparam==OBJPREFIX+"THEME")
        {

         if(SelectedTheme==0)
           {
            ObjectsDeleteAll(0,OBJPREFIX,-1,-1);
            COLOR_BG=C'28,28,28';
            COLOR_FONT=clrSilver;
            COLOR_GREEN=clrLimeGreen;
            COLOR_RED=clrRed;
            COLOR_LOW=clrYellow;
            COLOR_MARKER=clrGold;
            ObjectsCreateAll();
            SelectedTheme=1;

            SetStatus("?","Dark theme selected...");
            Sleep(250);
            ResetStatus();
           }
         else
           {
            ObjectsDeleteAll(0,OBJPREFIX,-1,-1);
            COLOR_BG=C'240,240,240';
            COLOR_FONT=C'40,41,59';
            COLOR_GREEN=clrForestGreen;
            COLOR_RED=clrIndianRed;
            COLOR_LOW=clrGoldenrod;
            COLOR_MARKER=clrDarkOrange;
            ObjectsCreateAll();
            SelectedTheme=0;

            SetStatus("?","Light theme selected...");
            Sleep(250);
            ResetStatus();
           }
        }

      if(sparam==OBJPREFIX+"TEMPLATE")
        {

         if(!ClearedTemplate)
           {

            if(SelectedTheme==0)
              {
               ChartSetColor(0);
               ClearedTemplate=true;
               SetStatus("?","Chart color cleared...");
              }
            else
              {
               ChartSetColor(1);
               ClearedTemplate=true;
               SetStatus("?","Chart color cleared...");
              }
           }
         else
           {
            ChartSetColor(2);
            ClearedTemplate=false;
            SetStatus("?","Original chart color applied...");
           }
        }

      GetParam(sparam);

      if(sparam==OBJPREFIX+"SOUND" || sparam==OBJPREFIX+"SOUNDIO")
        {

         if(!SoundIsEnabled)
           {
            SoundIsEnabled=true;
            ObjectSetInteger(0,OBJPREFIX+"SOUNDIO",OBJPROP_COLOR,C'59,41,40');//SetObject
            SetStatus("?","Sounds enabled...");
            PlaySound("sound.wav");
           }

         else
           {
            SoundIsEnabled=false;
            ObjectSetInteger(0,OBJPREFIX+"SOUNDIO",OBJPROP_COLOR,clrNONE);//SetObject
            SetStatus("?","Sounds disabled...");
           }
        }

      if(sparam==OBJPREFIX+"ALARM" || sparam==OBJPREFIX+"ALARMIO")
        {

         if(!AlarmIsEnabled)
           {

            AlarmIsEnabled=true;

            ObjectSetInteger(0,OBJPREFIX+"ALARMIO",OBJPROP_COLOR,clrNONE);

            string message="\n";

            if(_Alert)
               message="[Pop-up]";

            if(Push)
               StringAdd(message,"[Push]");

            if(Mail)
               StringAdd(message,"[Email]");

            if(!_Alert && !Push && !Mail)
              {
               Alert(OBJPREFIX+"No alert method selected!");
               return;
              }

            Alert("Alerts enabled "+message);
            SetStatus("?","Alerts enabled...");
           }

         else
           {

            AlarmIsEnabled=false;
            ObjectSetInteger(0,OBJPREFIX+"ALARMIO",OBJPROP_COLOR,C'59,41,40');

            SetStatus("?","Alerts disabled...");
           }
        }

      if(sparam==OBJPREFIX+"BALANCE?")
        {

         string text="";

         if(_AccountCurrency()=="$" || _AccountCurrency()=="?")
            text=_AccountCurrency()+DoubleToString(AccountInfoDouble(ACCOUNT_EQUITY),2);
         else
            text=DoubleToString(AccountInfoDouble(ACCOUNT_EQUITY),2)+_AccountCurrency();

         SetStatus("","Equity: "+text);
        }

      if(sparam==OBJPREFIX+"AUTOSL")
        {

         if(!AutoSL)
           {
            AutoSL=true;
            ObjectSetInteger(0,OBJPREFIX+"AUTOSL",OBJPROP_COLOR,COLOR_AUTO);//SetObject
            SetStatus("?","Auto sl enabled...");
           }

         else
           {
            AutoSL=false;
            ObjectSetInteger(0,OBJPREFIX+"AUTOSL",OBJPROP_COLOR,COLOR_FONT);//SetObject
            SetStatus("?","Auto sl disabled...");
           }
        }

      if(sparam==OBJPREFIX+"AUTOTP")
        {

         if(!AutoTP)
           {
            AutoTP=true;
            ObjectSetInteger(0,OBJPREFIX+"AUTOTP",OBJPROP_COLOR,COLOR_AUTO);//SetObject
            SetStatus("?","Auto tp enabled...");
           }

         else
           {
            AutoTP=false;
            ObjectSetInteger(0,OBJPREFIX+"AUTOTP",OBJPROP_COLOR,COLOR_FONT);//SetObject
            SetStatus("?","Auto tp disabled...");
           }
        }

      if(sparam==OBJPREFIX+"AUTOLOTS")
        {

         if(!AutoLots)
           {
            AutoLots=true;
            ObjectSetInteger(0,OBJPREFIX+"AUTOLOTS",OBJPROP_COLOR,COLOR_AUTO);//SetObject
            SetStatus("?","Auto lots enabled...");
           }

         else
           {
            AutoLots=false;
            ObjectSetInteger(0,OBJPREFIX+"AUTOLOTS",OBJPROP_COLOR,COLOR_FONT);//SetObject
            SetStatus("?","Auto lots disabled...");
           }
        }

      if(sparam==OBJPREFIX+"PRICEROW_L?")
        {

         PriceRowLeft++;

         if(PriceRowLeft>=ArraySize(PriceRowLeftArr))//Reset
            PriceRowLeft=0;

         ObjectSetString(0,OBJPREFIX+"PRICEROW_L?",OBJPROP_TEXT,0,PriceRowLeftArr[PriceRowLeft]);/*SetObject*/

         SetStatus("?","Switched to "+PriceRowLeftArr[PriceRowLeft]+" mode...");

         for(int i=0; i<ArraySize(aSymbols); i++)
            ObjectSetString(0,OBJPREFIX+"PRICEROW_L"+" - "+aSymbols[i],OBJPROP_TOOLTIP,PriceRowLeftArr[PriceRowLeft]+" "+aSymbols[i]);
        }

      if(sparam==OBJPREFIX+"PRICEROW_R?")
        {

         PriceRowRight++;

         if(PriceRowRight>=ArraySize(PriceRowRightArr))//Reset
            PriceRowRight=0;

         ObjectSetString(0,OBJPREFIX+"PRICEROW_R?",OBJPROP_TEXT,0,PriceRowRightArr[PriceRowRight]);/*SetObject*/

         SetStatus("?","Switched to "+PriceRowRightArr[PriceRowRight]+" mode...");

         for(int i=0; i<ArraySize(aSymbols); i++)
            ObjectSetString(0,OBJPREFIX+"PRICEROW_R"+" - "+aSymbols[i],OBJPROP_TOOLTIP,PriceRowRightArr[PriceRowRight]+" "+aSymbols[i]);
        }

      if(sparam==OBJPREFIX+"LOTSIZE<")
        {

         double LotSize=StringToDouble(ObjectGetString(0,OBJPREFIX+"LOTSIZE<>",OBJPROP_TEXT));

         if(!UserIsEditing)
            ObjectSetString(0,OBJPREFIX+"LOTSIZE<>",OBJPROP_TEXT,0,DoubleToString(LotSize-=0.01,2));//SetObject
        }

      if(sparam==OBJPREFIX+"LOTSIZE>")
        {

         double LotSize=StringToDouble(ObjectGetString(0,OBJPREFIX+"LOTSIZE<>",OBJPROP_TEXT));

         if(!UserIsEditing)
            ObjectSetString(0,OBJPREFIX+"LOTSIZE<>",OBJPROP_TEXT,0,DoubleToString(LotSize+=0.01,2));//SetObject
        }

      if(sparam==OBJPREFIX+"CLOSE")
        {

         int openpos=0;

         for(int x=0; x<ArraySize(aSymbols); x++)
            openpos+=OpenPos(aSymbols[x],OP_ALL);

         if(openpos==0)
           {
            SetStatus("?","No open orders...");
            Sleep(100);
            ObjectSetInteger(0,OBJPREFIX+"CLOSE",OBJPROP_STATE,false);//SetObject
            return;
           }

         for(int x=0; x<ArraySize(aSymbols); x++)
            OrderClose(aSymbols[x]);

         Sleep(50);
         ObjectSetInteger(0,OBJPREFIX+"CLOSE",OBJPROP_STATE,false);//SetObject
        }
     }

   if(id==CHARTEVENT_OBJECT_ENDEDIT)
     {

      double LotsizeAInp=StringToDouble(ObjectGetString(0,OBJPREFIX+"LOTSIZE<>",OBJPROP_TEXT));

      if(LotsizeAInp<0.01)
        {
         ObjectSetString(0,OBJPREFIX+"LOTSIZE<>",OBJPROP_TEXT,0,DoubleToString(0.01,2));/*SetObject*/
         LotsizeAInp=0.01;
        }

      ObjectSetString(0,OBJPREFIX+"LOTSIZE<>",OBJPROP_TEXT,0,DoubleToString(LotsizeAInp,2));/*SetObject*/

      double RRInpA=StringToDouble(ObjectGetString(0,OBJPREFIX+"RR<>",OBJPROP_TEXT));

      if(RRInpA<0.1)
        {
         ObjectSetString(0,OBJPREFIX+"RR<>",OBJPROP_TEXT,0,DoubleToString(0.1,2));/*SetObject*/
         RRInpA=0.1;
        }

      ObjectSetString(0,OBJPREFIX+"RR<>",OBJPROP_TEXT,0,DoubleToString(RRInpA,2));/*SetObject*/

      GlobalVariableSet(OBJPREFIX+"Stoploss",StringToDouble(ObjectGetString(0,OBJPREFIX+"SL<>",OBJPROP_TEXT)));
      GlobalVariableSet(OBJPREFIX+"Takeprofit",StringToDouble(ObjectGetString(0,OBJPREFIX+"_TP<>",OBJPROP_TEXT)));
      GlobalVariableSet(OBJPREFIX+"Lotsize",StringToDouble(ObjectGetString(0,OBJPREFIX+"LOTSIZE<>",OBJPROP_TEXT)));

      UserIsEditing=false;
     }

  }

void _OnTester()
  {

   if(AccountFreeMarginCheck(_Symbol,OP_BUY,SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MIN))>=0)
     {
      double lots=SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MIN);

      int tkt=OrderSend(_Symbol,OP_BUY,lots,SymbolInfoDouble(_Symbol,SYMBOL_ASK),0,0,0,NULL,0,0,clrNONE);

      if(tkt>0)
         int c_tkt=OrderClose(tkt,lots,SymbolInfoDouble(_Symbol,SYMBOL_BID),0,clrNONE);
     }

  }

double ATR(string _Symb,int timeframe,int period)
  {

   double sl=0,ml=0;

   if(SymbolInfoInteger(_Symb,SYMBOL_DIGITS)==1)
      ml=10;

   if(SymbolInfoInteger(_Symb,SYMBOL_DIGITS)==2)
      ml=100;

   if(SymbolInfoInteger(_Symb,SYMBOL_DIGITS)==3)
      ml=1000;

   if(SymbolInfoInteger(_Symb,SYMBOL_DIGITS)==4)
      ml=10000;

   if(SymbolInfoInteger(_Symb,SYMBOL_DIGITS)==5)
      ml=100000;

   if(Bars(_Symb,timeframe)<period)
      sl=0;
   else
      sl=iATR(_Symb,timeframe,period,1)*ml;

   return(sl);
  }

double ADR(string _Symb)
  {

   double s=0,adr1=0,adr5=0,adr10=0,adr20=0,pts=SymbolInfoDouble(_Symb,SYMBOL_POINT);

   for(int a=1;a<=20;a++)
     {

      if(pts!=0)
         s+=(iHigh(_Symb,CalcTF,a)-iLow(_Symb,CalcTF,a))/pts;

      if(a==1)
         adr1=MathRound(s);

      if(a==5)
         adr5=MathRound(s/5);

      if(a==10)
         adr10=MathRound(s/10);

      if(a==20)
         adr20=MathRound(s/20);
     }

   return(MathRound((adr1+adr5+adr10+adr20)/4.0));
  }

double _Lots(string _Symb,double Risk,double SL)
  {

   double lots=0,tickval=0,risk=0,sl=SL;

   if(AccountInfoDouble(ACCOUNT_BALANCE)!=0)
     {

      tickval=SymbolInfoDouble(_Symb,SYMBOL_TRADE_TICK_VALUE);
      risk=(AccountInfoDouble(ACCOUNT_BALANCE)/100)*Risk;

      if((tickval*sl)!=0)
        {
         lots=risk/(tickval*sl);
        }

     }

   double MinLot=SymbolInfoDouble(_Symb,SYMBOL_VOLUME_MIN),MaxLot=SymbolInfoDouble(_Symb,SYMBOL_VOLUME_MAX);

   if(lots<=MinLot)
      lots=MinLot;

   if(lots>=MaxLot)
      lots=MaxLot;

   if(sl==0)
      lots=MinLot;

   return(NormalizeDouble(lots,2));
  }

string Balance()
  {

   string text="";

   if(_AccountCurrency()=="$" || _AccountCurrency()=="?")
      text=_AccountCurrency()+DoubleToString(AccountInfoDouble(ACCOUNT_BALANCE),2);
   else
      text=DoubleToString(AccountInfoDouble(ACCOUNT_BALANCE),2)+_AccountCurrency();

   string result="Balance: "+text;

   if(OpenPos(IntegerToString(-1),OP_ALL)>0)
      StringAdd(result,"   Margin Level: "+DoubleToString(AccountInfoDouble(ACCOUNT_MARGIN_LEVEL),2)+"%");

   return(result);
  }

void ObjectsCreateAll()
  {

   int fr_y2=Dpi(140);

   for(int i=0; i<ArraySize(aSymbols); i++)
     {

      if(SelectedMode==FULL)
         fr_y2+=Dpi(25);

      if(SelectedMode==COMPACT)
         fr_y2+=Dpi(21);

      if(SelectedMode==MINI)
         fr_y2+=Dpi(17);
     }

   int x=ChartMiddleX()-(Dpi(CLIENT_BG_WIDTH)/2);
   int y=ChartMiddleY()-(fr_y2/2);

   int height=fr_y2+Dpi(3);

   RectLabelCreate(0,OBJPREFIX+"BCKGRND[]",0,x,y,Dpi(CLIENT_BG_WIDTH),height,COLOR_BG,BORDER_FLAT,CORNER_LEFT_UPPER,COLOR_BORDER,STYLE_SOLID,1,false,false,true,0,"\n");

   _x1=(int)ObjectGetInteger(0,OBJPREFIX+"BCKGRND[]",OBJPROP_XDISTANCE);
   _y1=(int)ObjectGetInteger(0,OBJPREFIX+"BCKGRND[]",OBJPROP_YDISTANCE);

   RectLabelCreate(0,OBJPREFIX+"BORDER[]",0,x,y,Dpi(CLIENT_BG_WIDTH),Dpi(INDENT_TOP),COLOR_BORDER,BORDER_FLAT,CORNER_LEFT_UPPER,COLOR_BORDER,STYLE_SOLID,1,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"CAPTION",0,_x1+(Dpi(CLIENT_BG_WIDTH)/2)-Dpi(16),_y1,CORNER_LEFT_UPPER,ExpertName,"Arial Black",9,C'59,41,40',0,ANCHOR_UPPER,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"EXIT",0,(_x1+Dpi(CLIENT_BG_WIDTH))-Dpi(10),_y1-Dpi(2),CORNER_LEFT_UPPER,"r","Webdings",10,C'59,41,40',0,ANCHOR_UPPER,false,false,true,1,"\n",false);

   LabelCreate(0,OBJPREFIX+"MINIMIZE",0,(_x1+Dpi(CLIENT_BG_WIDTH))-Dpi(30),_y1-Dpi(2),CORNER_LEFT_UPPER,"2","Webdings",10,C'59,41,40',0,ANCHOR_UPPER,false,false,true,1,"\n",false);

   LabelCreate(0,OBJPREFIX+"?",0,(_x1+Dpi(CLIENT_BG_WIDTH))-Dpi(50),_y1-Dpi(2),CORNER_LEFT_UPPER,"s","Webdings",10,C'59,41,40',0,ANCHOR_UPPER,false,false,true,1,"\n",false);

   LabelCreate(0,OBJPREFIX+"TIME",0,(_x1+Dpi(CLIENT_BG_WIDTH))-Dpi(85),_y1+Dpi(1),CORNER_LEFT_UPPER,TimeToString(0,TIME_SECONDS),"Tahoma",8,C'59,41,40',0,ANCHOR_UPPER,false,false,true,1,"Local Time",false);
   LabelCreate(0,OBJPREFIX+"TIME?",0,(_x1+Dpi(CLIENT_BG_WIDTH))-Dpi(120),_y1,CORNER_LEFT_UPPER,"?","Wingdings",12,C'59,41,40',0,ANCHOR_UPPER,false,false,true,1,"Local Time",false);

   LabelCreate(0,OBJPREFIX+"CONNECTION",0,_x1+Dpi(15),_y1-Dpi(2),CORNER_LEFT_UPPER,"?","Webdings",10,C'59,41,40',0,ANCHOR_UPPER,false,false,true,0,"Connection",false);

   LabelCreate(0,OBJPREFIX+"THEME",0,_x1+Dpi(40),_y1-Dpi(4),CORNER_LEFT_UPPER,"N","Webdings",15,C'59,41,40',0,ANCHOR_UPPER,false,false,true,1,"Theme",false);

   LabelCreate(0,OBJPREFIX+"TEMPLATE",0,_x1+Dpi(65),_y1-Dpi(2),CORNER_LEFT_UPPER,"+","Webdings",12,C'59,41,40',0,ANCHOR_UPPER,false,false,true,1,"Background",false);

   int middle=Dpi(CLIENT_BG_WIDTH/2);

   LabelCreate(0,OBJPREFIX+"STATUS",0,_x1+middle+(middle/2),_y1+Dpi(8),CORNER_LEFT_UPPER,"\n","Wingdings",10,C'59,41,40',0,ANCHOR_LEFT,false,false,true,1,"\n",false);

   LabelCreate(0,OBJPREFIX+"STATUS?",0,_x1+middle+(middle/2)+Dpi(15),_y1+Dpi(8),CORNER_LEFT_UPPER,"\n",sFontType,8,C'59,41,40',0,ANCHOR_LEFT,false,false,true,1,"\n",false);

   LabelCreate(0,OBJPREFIX+"SOUND",0,_x1+Dpi(90),_y1-Dpi(2),CORNER_LEFT_UPPER,"X","Webdings",12,C'59,41,40',0,ANCHOR_UPPER,false,false,true,1,"Sounds",false);

   color soundclr=SoundIsEnabled?C'59,41,40':clrNONE;

   LabelCreate(0,OBJPREFIX+"SOUNDIO",0,_x1+Dpi(100),_y1-Dpi(1),CORNER_LEFT_UPPER,"?","Webdings",10,soundclr,0,ANCHOR_UPPER,false,false,true,1,"Sounds",false);

   LabelCreate(0,OBJPREFIX+"ALARM",0,_x1+Dpi(115),_y1-Dpi(1),CORNER_LEFT_UPPER,"%","Wingdings",12,C'59,41,40',0,ANCHOR_UPPER,false,false,true,1,"Alerts",false);

   color alarmclr=AlarmIsEnabled?clrNONE:C'59,41,40';

   if(!_Alert && !Push && !Mail)
      alarmclr=C'59,41,40';

   LabelCreate(0,OBJPREFIX+"ALARMIO",0,_x1+Dpi(115),_y1-Dpi(6),CORNER_LEFT_UPPER,"x",sFontType,16,alarmclr,0,ANCHOR_UPPER,false,false,true,1,"Alerts",false);

   int csm_fr_x1=_x1+Dpi(50);
   int csm_fr_x2=_x1+Dpi(95);
   int csm_fr_x3=_x1+Dpi(137);
   int csm_dist_b=Dpi(150);

   LabelCreate(0,OBJPREFIX+"AUD?",0,csm_fr_x1,_y1+Dpi(35),CORNER_LEFT_UPPER,"AUD","Arial Black",15,COLOR_FONT,0,ANCHOR_LEFT,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"AUD%",0,csm_fr_x2,_y1+Dpi(55),CORNER_LEFT_UPPER,"0%","Arial Black",12,COLOR_FONT,0,ANCHOR_RIGHT,false,false,true,0,"\n");
   CreateProBar("AUD",csm_fr_x3,_y1+Dpi(57));
   ButtonCreate(0,OBJPREFIX+"BUY"+" - "+"AUD",0,csm_fr_x1-Dpi(37),_y1+Dpi(27),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Buy","Trebuchet MS",6,C'59,41,40',C'160,192,255',C'144,176,239',false,false,false,true,1,"\n");
   ButtonCreate(0,OBJPREFIX+"CLOSE"+" - "+"AUD",0,csm_fr_x1-Dpi(37),_y1+Dpi(42),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Close","Trebuchet MS",6,C'59,41,40',C'255,255,160',C'239,239,144',false,false,false,true,1,"\n");
   ButtonCreate(0,OBJPREFIX+"SELL"+" - "+"AUD",0,csm_fr_x1-Dpi(37),_y1+Dpi(57),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Sell","Trebuchet MS",6,C'59,41,40',C'255,128,128',C'239,112,112',false,false,false,true,1,"\n");

   LabelCreate(0,OBJPREFIX+"CAD?",0,csm_fr_x1+csm_dist_b,_y1+Dpi(35),CORNER_LEFT_UPPER,"CAD","Arial Black",15,COLOR_FONT,0,ANCHOR_LEFT,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"CAD%",0,csm_fr_x2+csm_dist_b,_y1+Dpi(55),CORNER_LEFT_UPPER,"0%","Arial Black",12,COLOR_FONT,0,ANCHOR_RIGHT,false,false,true,0,"\n");
   CreateProBar("CAD",csm_fr_x3+csm_dist_b,_y1+Dpi(57));
   ButtonCreate(0,OBJPREFIX+"BUY"+" - "+"CAD",0,csm_fr_x1+csm_dist_b-Dpi(37),_y1+Dpi(27),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Buy","Trebuchet MS",6,C'59,41,40',C'160,192,255',C'144,176,239',false,false,false,true,1,"\n");
   ButtonCreate(0,OBJPREFIX+"CLOSE"+" - "+"CAD",0,csm_fr_x1+csm_dist_b-Dpi(37),_y1+Dpi(42),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Close","Trebuchet MS",6,C'59,41,40',C'255,255,160',C'239,239,144',false,false,false,true,1,"\n");
   ButtonCreate(0,OBJPREFIX+"SELL"+" - "+"CAD",0,csm_fr_x1+csm_dist_b-Dpi(37),_y1+Dpi(57),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Sell","Trebuchet MS",6,C'59,41,40',C'255,128,128',C'239,112,112',false,false,false,true,1,"\n");

   LabelCreate(0,OBJPREFIX+"CHF?",0,csm_fr_x1+(csm_dist_b*2),_y1+Dpi(35),CORNER_LEFT_UPPER,"CHF","Arial Black",15,COLOR_FONT,0,ANCHOR_LEFT,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"CHF%",0,csm_fr_x2+(csm_dist_b*2),_y1+Dpi(55),CORNER_LEFT_UPPER,"0%","Arial Black",12,COLOR_FONT,0,ANCHOR_RIGHT,false,false,true,0,"\n");
   CreateProBar("CHF",csm_fr_x3+(csm_dist_b*2),_y1+Dpi(57));
   ButtonCreate(0,OBJPREFIX+"BUY"+" - "+"CHF",0,csm_fr_x1+(csm_dist_b*2)-Dpi(37),_y1+Dpi(27),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Buy","Trebuchet MS",6,C'59,41,40',C'160,192,255',C'144,176,239',false,false,false,true,1,"\n");
   ButtonCreate(0,OBJPREFIX+"CLOSE"+" - "+"CHF",0,csm_fr_x1+(csm_dist_b*2)-Dpi(37),_y1+Dpi(42),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Close","Trebuchet MS",6,C'59,41,40',C'255,255,160',C'239,239,144',false,false,false,true,1,"\n");
   ButtonCreate(0,OBJPREFIX+"SELL"+" - "+"CHF",0,csm_fr_x1+(csm_dist_b*2)-Dpi(37),_y1+Dpi(57),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Sell","Trebuchet MS",6,C'59,41,40',C'255,128,128',C'239,112,112',false,false,false,true,1,"\n");

   LabelCreate(0,OBJPREFIX+"EUR?",0,csm_fr_x1+(csm_dist_b*3),_y1+Dpi(35),CORNER_LEFT_UPPER,"EUR","Arial Black",15,COLOR_FONT,0,ANCHOR_LEFT,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"EUR%",0,csm_fr_x2+(csm_dist_b*3),_y1+Dpi(55),CORNER_LEFT_UPPER,"0%","Arial Black",12,COLOR_FONT,0,ANCHOR_RIGHT,false,false,true,0,"\n");
   CreateProBar("EUR",csm_fr_x3+(csm_dist_b*3),_y1+Dpi(57));
   ButtonCreate(0,OBJPREFIX+"BUY"+" - "+"EUR",0,csm_fr_x1+(csm_dist_b*3)-Dpi(37),_y1+Dpi(27),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Buy","Trebuchet MS",6,C'59,41,40',C'160,192,255',C'144,176,239',false,false,false,true,1,"\n");
   ButtonCreate(0,OBJPREFIX+"CLOSE"+" - "+"EUR",0,csm_fr_x1+(csm_dist_b*3)-Dpi(37),_y1+Dpi(42),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Close","Trebuchet MS",6,C'59,41,40',C'255,255,160',C'239,239,144',false,false,false,true,1,"\n");
   ButtonCreate(0,OBJPREFIX+"SELL"+" - "+"EUR",0,csm_fr_x1+(csm_dist_b*3)-Dpi(37),_y1+Dpi(57),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Sell","Trebuchet MS",6,C'59,41,40',C'255,128,128',C'239,112,112',false,false,false,true,1,"\n");

   LabelCreate(0,OBJPREFIX+"GBP?",0,csm_fr_x1+(csm_dist_b*4),_y1+Dpi(35),CORNER_LEFT_UPPER,"GBP","Arial Black",15,COLOR_FONT,0,ANCHOR_LEFT,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"GBP%",0,csm_fr_x2+(csm_dist_b*4),_y1+Dpi(55),CORNER_LEFT_UPPER,"0%","Arial Black",12,COLOR_FONT,0,ANCHOR_RIGHT,false,false,true,0,"\n");
   CreateProBar("GBP",csm_fr_x3+(csm_dist_b*4),_y1+Dpi(57));
   ButtonCreate(0,OBJPREFIX+"BUY"+" - "+"GBP",0,csm_fr_x1+(csm_dist_b*4)-Dpi(37),_y1+Dpi(27),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Buy","Trebuchet MS",6,C'59,41,40',C'160,192,255',C'144,176,239',false,false,false,true,1,"\n");
   ButtonCreate(0,OBJPREFIX+"CLOSE"+" - "+"GBP",0,csm_fr_x1+(csm_dist_b*4)-Dpi(37),_y1+Dpi(42),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Close","Trebuchet MS",6,C'59,41,40',C'255,255,160',C'239,239,144',false,false,false,true,1,"\n");
   ButtonCreate(0,OBJPREFIX+"SELL"+" - "+"GBP",0,csm_fr_x1+(csm_dist_b*4)-Dpi(37),_y1+Dpi(57),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Sell","Trebuchet MS",6,C'59,41,40',C'255,128,128',C'239,112,112',false,false,false,true,1,"\n");

   LabelCreate(0,OBJPREFIX+"JPY?",0,csm_fr_x1+(csm_dist_b*5),_y1+Dpi(35),CORNER_LEFT_UPPER,"JPY","Arial Black",15,COLOR_FONT,0,ANCHOR_LEFT,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"JPY%",0,csm_fr_x2+(csm_dist_b*5),_y1+Dpi(55),CORNER_LEFT_UPPER,"0%","Arial Black",12,COLOR_FONT,0,ANCHOR_RIGHT,false,false,true,0,"\n");
   CreateProBar("JPY",csm_fr_x3+(csm_dist_b*5),_y1+Dpi(57));
   ButtonCreate(0,OBJPREFIX+"BUY"+" - "+"JPY",0,csm_fr_x1+(csm_dist_b*5)-Dpi(37),_y1+Dpi(27),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Buy","Trebuchet MS",6,C'59,41,40',C'160,192,255',C'144,176,239',false,false,false,true,1,"\n");
   ButtonCreate(0,OBJPREFIX+"CLOSE"+" - "+"JPY",0,csm_fr_x1+(csm_dist_b*5)-Dpi(37),_y1+Dpi(42),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Close","Trebuchet MS",6,C'59,41,40',C'255,255,160',C'239,239,144',false,false,false,true,1,"\n");
   ButtonCreate(0,OBJPREFIX+"SELL"+" - "+"JPY",0,csm_fr_x1+(csm_dist_b*5)-Dpi(37),_y1+Dpi(57),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Sell","Trebuchet MS",6,C'59,41,40',C'255,128,128',C'239,112,112',false,false,false,true,1,"\n");

   LabelCreate(0,OBJPREFIX+"NZD?",0,csm_fr_x1+(csm_dist_b*6),_y1+Dpi(35),CORNER_LEFT_UPPER,"NZD","Arial Black",15,COLOR_FONT,0,ANCHOR_LEFT,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"NZD%",0,csm_fr_x2+(csm_dist_b*6),_y1+Dpi(55),CORNER_LEFT_UPPER,"0%","Arial Black",12,COLOR_FONT,0,ANCHOR_RIGHT,false,false,true,0,"\n");
   CreateProBar("NZD",csm_fr_x3+(csm_dist_b*6),_y1+Dpi(57));
   ButtonCreate(0,OBJPREFIX+"BUY"+" - "+"NZD",0,csm_fr_x1+(csm_dist_b*6)-Dpi(37),_y1+Dpi(27),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Buy","Trebuchet MS",6,C'59,41,40',C'160,192,255',C'144,176,239',false,false,false,true,1,"\n");
   ButtonCreate(0,OBJPREFIX+"CLOSE"+" - "+"NZD",0,csm_fr_x1+(csm_dist_b*6)-Dpi(37),_y1+Dpi(42),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Close","Trebuchet MS",6,C'59,41,40',C'255,255,160',C'239,239,144',false,false,false,true,1,"\n");
   ButtonCreate(0,OBJPREFIX+"SELL"+" - "+"NZD",0,csm_fr_x1+(csm_dist_b*6)-Dpi(37),_y1+Dpi(57),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Sell","Trebuchet MS",6,C'59,41,40',C'255,128,128',C'239,112,112',false,false,false,true,1,"\n");

   LabelCreate(0,OBJPREFIX+"USD?",0,csm_fr_x1+(csm_dist_b*7),_y1+Dpi(35),CORNER_LEFT_UPPER,"USD","Arial Black",15,COLOR_FONT,0,ANCHOR_LEFT,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"USD%",0,csm_fr_x2+(csm_dist_b*7),_y1+Dpi(55),CORNER_LEFT_UPPER,"0%","Arial Black",12,COLOR_FONT,0,ANCHOR_RIGHT,false,false,true,0,"\n");
   CreateProBar("USD",csm_fr_x3+(csm_dist_b*7),_y1+Dpi(57));
   ButtonCreate(0,OBJPREFIX+"BUY"+" - "+"USD",0,csm_fr_x1+(csm_dist_b*7)-Dpi(37),_y1+Dpi(27),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Buy","Trebuchet MS",6,C'59,41,40',C'160,192,255',C'144,176,239',false,false,false,true,1,"\n");
   ButtonCreate(0,OBJPREFIX+"CLOSE"+" - "+"USD",0,csm_fr_x1+(csm_dist_b*7)-Dpi(37),_y1+Dpi(42),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Close","Trebuchet MS",6,C'59,41,40',C'255,255,160',C'239,239,144',false,false,false,true,1,"\n");
   ButtonCreate(0,OBJPREFIX+"SELL"+" - "+"USD",0,csm_fr_x1+(csm_dist_b*7)-Dpi(37),_y1+Dpi(57),Dpi(25),Dpi(11),CORNER_LEFT_UPPER,"Sell","Trebuchet MS",6,C'59,41,40',C'255,128,128',C'239,112,112',false,false,false,true,1,"\n");

   LabelCreate(0,OBJPREFIX+"BALANCE?",0,_x1+Dpi(300),_y1+Dpi(8),CORNER_LEFT_UPPER,Balance(),sFontType,8,C'59,41,40',0,ANCHOR_CENTER,false,false,true,0,"\n");

   color autosl=AutoSL?COLOR_AUTO:COLOR_FONT;
   color autotp=AutoTP?COLOR_AUTO:COLOR_FONT;
   color autolots=AutoLots?COLOR_AUTO:COLOR_FONT;

   LabelCreate(0,OBJPREFIX+"AUTOSL",0,_x1+Dpi(515),_y1+Dpi(81),CORNER_LEFT_UPPER,"Auto sl",sFontType,7,autosl,0,ANCHOR_CENTER,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"AUTOLOTS",0,_x1+Dpi(583),_y1+Dpi(81),CORNER_LEFT_UPPER,"Auto lots",sFontType,7,autolots,0,ANCHOR_CENTER,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"AUTOTP",0,_x1+Dpi(650),_y1+Dpi(81),CORNER_LEFT_UPPER,"Auto tp",sFontType,7,autotp,0,ANCHOR_CENTER,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"PRICEROW_L?",0,_x1+Dpi(395),_y1+Dpi(81),CORNER_LEFT_UPPER,PriceRowLeftArr[PriceRowLeft],sFontType,7,FirstRun?clrNONE:COLOR_FONT,0,ANCHOR_CENTER,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"PRICEROW_R?",0,_x1+Dpi(CLIENT_BG_WIDTH)-Dpi(355),_y1+Dpi(81),CORNER_LEFT_UPPER,PriceRowRightArr[PriceRowRight],sFontType,7,FirstRun?clrNONE:COLOR_FONT,0,ANCHOR_CENTER,false,false,true,0,"\n");

   int fr_y=_y1+Dpi(95);

   for(int i=0; i<ArraySize(aSymbols); i++)
     {

      CreateSymbGUI(Prefix+aSymbols[i]+Suffix,fr_y);

      if(SelectedMode==FULL)
         fr_y+=Dpi(25);

      if(SelectedMode==COMPACT)
         fr_y+=Dpi(21);

      if(SelectedMode==MINI)
         fr_y+=Dpi(17);
     }

   LabelCreate(0,OBJPREFIX+"TOTALLOTS",0,_x1+Dpi(CLIENT_BG_WIDTH)-Dpi(220),fr_y+Dpi(5),CORNER_LEFT_UPPER,"0.00",sFontType,FONTSIZE,COLOR_FONT,0,ANCHOR_RIGHT,false,false,true,0,"Total Lots");
   LabelCreate(0,OBJPREFIX+"TOTAL?",0,_x1+Dpi(CLIENT_BG_WIDTH)-Dpi(155),fr_y+Dpi(5),CORNER_LEFT_UPPER,"0p",sFontType,FONTSIZE,COLOR_FONT,0,ANCHOR_RIGHT,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"TOTAL??",0,_x1+Dpi(CLIENT_BG_WIDTH)-Dpi(73),fr_y+Dpi(5),CORNER_LEFT_UPPER,"0.00"+_AccountCurrency(),sFontType,FONTSIZE,COLOR_FONT,0,ANCHOR_RIGHT,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"TOTAL???",0,_x1+Dpi(CLIENT_BG_WIDTH)-Dpi(10),fr_y+Dpi(5),CORNER_LEFT_UPPER,"0.00%",sFontType,FONTSIZE,COLOR_FONT,0,ANCHOR_RIGHT,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"LEVERAGE",0,_x1+Dpi(CLIENT_BG_WIDTH)-Dpi(285),fr_y+Dpi(5),CORNER_LEFT_UPPER,"1:"+IntegerToString(AccountInfoInteger(ACCOUNT_LEVERAGE)),sFontType,FONTSIZE,COLOR_FONT,0,ANCHOR_RIGHT,false,false,true,0,"Current Leverage");

   EditCreate(0,OBJPREFIX+"SL<>",0,_x1+Dpi(490),fr_y,Dpi(50),Dpi(15),DoubleToString(GlobalVariableGet(OBJPREFIX+"Stoploss"),0),"Tahoma",10,ALIGN_RIGHT,false,CORNER_LEFT_UPPER,C'59,41,40',clrWhite,clrWhite,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"SL?",0,_x1+Dpi(498),fr_y+Dpi(7),CORNER_LEFT_UPPER,"sl",sFontType,10,clrDarkGray,0,ANCHOR_CENTER,false,false,true,0,"\n");

   EditCreate(0,OBJPREFIX+"LOTSIZE<>",0,_x1+Dpi(550),fr_y,Dpi(65),Dpi(15),DoubleToString(GlobalVariableGet(OBJPREFIX+"Lotsize"),2),"Tahoma",10,ALIGN_CENTER,false,CORNER_LEFT_UPPER,C'59,41,40',clrWhite,clrWhite,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"LOTSIZE<",0,_x1+Dpi(555),fr_y+Dpi(5),CORNER_LEFT_UPPER,"6","Webdings",8,C'59,41,40',0,ANCHOR_CENTER,false,false,true,0,"\n",false);
   LabelCreate(0,OBJPREFIX+"LOTSIZE>",0,_x1+Dpi(610),fr_y+Dpi(5),CORNER_LEFT_UPPER,"5","Webdings",8,C'59,41,40',0,ANCHOR_CENTER,false,false,true,0,"\n",false);

   EditCreate(0,OBJPREFIX+"_TP<>",0,_x1+Dpi(625),fr_y,Dpi(50),Dpi(15),DoubleToString(GlobalVariableGet(OBJPREFIX+"Takeprofit"),0),"Tahoma",10,ALIGN_RIGHT,false,CORNER_LEFT_UPPER,C'59,41,40',clrWhite,clrWhite,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"TP?",0,_x1+Dpi(633),fr_y+Dpi(7),CORNER_LEFT_UPPER,"tp",sFontType,10,clrDarkGray,0,ANCHOR_CENTER,false,false,true,0,"\n");

   ButtonCreate(0,OBJPREFIX+"SETSL<>",0,_x1+Dpi(490),fr_y+Dpi(20),Dpi(50),Dpi(15),CORNER_LEFT_UPPER,"Set sl","Trebuchet MS",10,C'59,41,40',C'220,220,220',C'220,220,220',false,false,false,true,1,"\n");

   ButtonCreate(0,OBJPREFIX+"SETLOTS<>",0,_x1+Dpi(445)+Dpi(105),fr_y+Dpi(20),Dpi(65),Dpi(15),CORNER_LEFT_UPPER,"Set lots","Trebuchet MS",10,C'59,41,40',C'220,220,220',C'220,220,220',false,false,false,true,1,"\n");

   ButtonCreate(0,OBJPREFIX+"SETTP<>",0,_x1+Dpi(625),fr_y+Dpi(20),Dpi(50),Dpi(15),CORNER_LEFT_UPPER,"Set tp","Trebuchet MS",10,C'59,41,40',C'220,220,220',C'220,220,220',false,false,false,true,1,"\n");

   ButtonCreate(0,OBJPREFIX+"CLOSE",0,_x1+Dpi(740),fr_y,Dpi(40),Dpi(15),CORNER_LEFT_UPPER," Close","Trebuchet MS",10,C'59,41,40',C'255,255,160',C'239,239,144',false,false,false,true,1,"Close All");

   LabelCreate(0,OBJPREFIX+"POSITIONS",0,_x1+Dpi(10),fr_y+Dpi(5),CORNER_LEFT_UPPER,"Floating:",sFontType,FONTSIZE,COLOR_FONT,0,ANCHOR_LEFT,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"SELLPOS",0,_x1+Dpi(90),fr_y+Dpi(5),CORNER_LEFT_UPPER,"Sell:",sFontType,FONTSIZE,COLOR_FONT,0,ANCHOR_LEFT,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"SELLPOS?",0,_x1+Dpi(150),fr_y+Dpi(5),CORNER_LEFT_UPPER,"0",sFontType,FONTSIZE,COLOR_FONT,0,ANCHOR_RIGHT,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"BUYPOS",0,_x1+Dpi(185),fr_y+Dpi(5),CORNER_LEFT_UPPER,"Buy:",sFontType,FONTSIZE,COLOR_FONT,0,ANCHOR_LEFT,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"BUYPOS?",0,_x1+Dpi(245),fr_y+Dpi(5),CORNER_LEFT_UPPER,"0",sFontType,FONTSIZE,COLOR_FONT,0,ANCHOR_RIGHT,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"TOTALPOS",0,_x1+Dpi(270),fr_y+Dpi(5),CORNER_LEFT_UPPER,"Total:",sFontType,FONTSIZE,COLOR_FONT,0,ANCHOR_LEFT,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"TOTALPOS?",0,_x1+Dpi(345),fr_y+Dpi(5),CORNER_LEFT_UPPER,"0",sFontType,FONTSIZE,COLOR_FONT,0,ANCHOR_RIGHT,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"RISK",0,_x1+Dpi(10),fr_y+Dpi(27),CORNER_LEFT_UPPER,"Risk PT:",sFontType,FONTSIZE,COLOR_FONT,0,ANCHOR_LEFT,false,false,true,0,"Risk Per Trade");
   EditCreate(0,OBJPREFIX+"RISK%<>",0,_x1+Dpi(90),fr_y+Dpi(20),Dpi(60),Dpi(15),DoubleToString(RiskInp,2),"Tahoma",10,ALIGN_RIGHT,false,CORNER_LEFT_UPPER,C'59,41,40',clrWhite,clrWhite,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"RISK%?",0,_x1+Dpi(98),fr_y+Dpi(27),CORNER_LEFT_UPPER,"%",sFontType,10,clrDarkGray,0,ANCHOR_CENTER,false,false,true,0,"\n");

   EditCreate(0,OBJPREFIX+"RISK$<>",0,_x1+Dpi(175),fr_y+Dpi(20),Dpi(80),Dpi(15),DoubleToString((AccountInfoDouble(ACCOUNT_BALANCE)/100)*RiskInp,2),"Tahoma",10,ALIGN_RIGHT,false,CORNER_LEFT_UPPER,C'59,41,40',clrWhite,clrWhite,false,false,true,0,"\n");
   LabelCreate(0,OBJPREFIX+"RISK$?",0,_x1+Dpi(182),fr_y+Dpi(27),CORNER_LEFT_UPPER,_AccountCurrency(),sFontType,10,clrDarkGray,0,ANCHOR_CENTER,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"RR",0,_x1+Dpi(270),fr_y+Dpi(27),CORNER_LEFT_UPPER,"Reward Ratio:",sFontType,FONTSIZE,COLOR_FONT,0,ANCHOR_LEFT,false,false,true,0,"Risk/Reward Ratio");
   EditCreate(0,OBJPREFIX+"RR<>",0,_x1+Dpi(370),fr_y+Dpi(20),Dpi(50),Dpi(15),DoubleToString(RR,2),"Tahoma",10,ALIGN_CENTER,false,CORNER_LEFT_UPPER,C'59,41,40',clrWhite,clrWhite,false,false,true,0,"\n");

  }

void CreateSymbGUI(string _Symb,int Y)
  {

   color startcolor=FirstRun?clrNONE:COLOR_FONT;

   LabelCreate(0,OBJPREFIX+_Symb,0,_x1+Dpi(10),Y,CORNER_LEFT_UPPER,StringSubstr(_Symb,StringLen(Prefix),6)+":",sFontType,FONTSIZE,COLOR_FONT,0,ANCHOR_LEFT,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"SYMBOL?"+" - "+_Symb,0,_x1+Dpi(105),Y,CORNER_LEFT_UPPER,"?","Wingdings",12,startcolor,0,ANCHOR_RIGHT,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"SYMBOL%"+" - "+_Symb,0,_x1+Dpi(145),Y,CORNER_LEFT_UPPER,"0.00%",sFontType,8,startcolor,0,ANCHOR_RIGHT,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"RANGE‿"+" - "+_Symb,0,_x1+Dpi(205),Y,CORNER_LEFT_UPPER,"0p",sFontType,FONTSIZE,startcolor,0,ANCHOR_RIGHT,false,false,true,0,"Range "+_Symb);

   LabelCreate(0,OBJPREFIX+"RANGE%"+" - "+_Symb,0,_x1+Dpi(255),Y,CORNER_LEFT_UPPER,"0%",sFontType,FONTSIZE,startcolor,0,ANCHOR_RIGHT,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"SPEED?"+" - "+_Symb,0,_x1+Dpi(355),Y,CORNER_LEFT_UPPER,"\n",sFontType,9,clrNONE,0.0,ANCHOR_RIGHT,false,false,true,0);

   int fr_x=Dpi(330);

   for(int i=0; i<10; i++)
     {
      LabelCreate(0,OBJPREFIX+"SPEED#"+" - "+_Symb+IntegerToString(i),0,_x1+fr_x,Y,CORNER_LEFT_UPPER,"l","Arial Black",12,clrNONE,0.0,ANCHOR_RIGHT,false,false,true,0);
      fr_x-=Dpi(5);
     }

   double bid=MarketInfo(_Symb,MODE_BID);

   int digits=(int)MarketInfo(_Symb,MODE_DIGITS);

   LabelCreate(0,OBJPREFIX+"PRICEROW_L"+" - "+_Symb,0,_x1+Dpi(417),Y,CORNER_LEFT_UPPER,DoubleToString(0,digits),sFontType,FONTSIZE,startcolor,0,ANCHOR_RIGHT,false,false,true,0,PriceRowLeftArr[PriceRowLeft]+" "+_Symb);

   LabelCreate(0,OBJPREFIX+"OPENSELL"+" - "+_Symb,0,_x1+Dpi(445),Y+Dpi(2),CORNER_LEFT_UPPER,"\n",sFontType,FONTSIZE,COLOR_FONT,0,ANCHOR_RIGHT,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"OPENBUY"+" - "+_Symb,0,_x1+Dpi(720),Y+Dpi(2),CORNER_LEFT_UPPER,"\n",sFontType,FONTSIZE,COLOR_FONT,0,ANCHOR_LEFT,false,false,true,0,"\n");

   ButtonCreate(0,OBJPREFIX+"SELL"+" - "+_Symb,0,_x1+Dpi(450),Y-Dpi(5),Dpi(30),Dpi(15),CORNER_LEFT_UPPER,"Sell","Trebuchet MS",10,C'59,41,40',C'255,128,128',C'239,112,112',false,false,false,true,1,"Sell "+_Symb);

   EditCreate(0,OBJPREFIX+"SL<>"+" - "+_Symb,0,_x1+Dpi(490),Y-Dpi(5),Dpi(50),Dpi(15),DoubleToString(GlobalVariableGet(OBJPREFIX+_Symb+" - Stoploss"),0),"Tahoma",10,ALIGN_RIGHT,false,CORNER_LEFT_UPPER,C'59,41,40',clrWhite,clrWhite,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"SL?"+" - "+_Symb,0,_x1+Dpi(498),Y+Dpi(2),CORNER_LEFT_UPPER,"sl",sFontType,10,clrDarkGray,0,ANCHOR_CENTER,false,false,true,0,"\n");

   EditCreate(0,OBJPREFIX+"LOTSIZE<>"+" - "+_Symb,0,_x1+Dpi(550),Y-Dpi(5),Dpi(65),Dpi(15),DoubleToString(GlobalVariableGet(OBJPREFIX+_Symb+" - Lotsize"),2),"Tahoma",10,ALIGN_CENTER,false,CORNER_LEFT_UPPER,C'59,41,40',clrWhite,clrWhite,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"LOTSIZE<"+" - "+_Symb,0,_x1+Dpi(555),Y,CORNER_LEFT_UPPER,"6","Webdings",8,C'59,41,40',0,ANCHOR_CENTER,false,false,true,0,"\n",false);

   LabelCreate(0,OBJPREFIX+"LOTSIZE>"+" - "+_Symb,0,_x1+Dpi(610),Y,CORNER_LEFT_UPPER,"5","Webdings",8,C'59,41,40',0,ANCHOR_CENTER,false,false,true,0,"\n",false);

   EditCreate(0,OBJPREFIX+"_TP<>"+" - "+_Symb,0,_x1+Dpi(625),Y-Dpi(5),Dpi(50),Dpi(15),DoubleToString(GlobalVariableGet(OBJPREFIX+_Symb+" - Takeprofit"),0),"Tahoma",10,ALIGN_RIGHT,false,CORNER_LEFT_UPPER,C'59,41,40',clrWhite,clrWhite,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"TP?"+" - "+_Symb,0,_x1+Dpi(633),Y+Dpi(2),CORNER_LEFT_UPPER,"tp",sFontType,10,clrDarkGray,0,ANCHOR_CENTER,false,false,true,0,"\n");

   ButtonCreate(0,OBJPREFIX+"BUY"+" - "+_Symb,0,_x1+Dpi(685),Y-Dpi(5),Dpi(30),Dpi(15),CORNER_LEFT_UPPER,"Buy","Trebuchet MS",10,C'59,41,40',C'160,192,255',C'144,176,239',false,false,false,true,1,"Buy "+_Symb);

   ButtonCreate(0,OBJPREFIX+"CLOSE"+" - "+_Symb,0,_x1+Dpi(740),Y-Dpi(5),Dpi(40),Dpi(15),CORNER_LEFT_UPPER," Close","Trebuchet MS",10,C'59,41,40',C'255,255,160',C'239,239,144',false,false,false,true,1,"Close "+_Symb);

   LabelCreate(0,OBJPREFIX+"PRICEROW_R"+" - "+_Symb,0,_x1+Dpi(855),Y,CORNER_LEFT_UPPER,DoubleToString(0,digits),sFontType,FONTSIZE,startcolor,0,ANCHOR_RIGHT,false,false,true,0,PriceRowRightArr[PriceRowRight]+" "+_Symb);

   LabelCreate(0,OBJPREFIX+"SPREAD"+" - "+_Symb,0,_x1+Dpi(905),Y,CORNER_LEFT_UPPER,"0p",sFontType,FONTSIZE,startcolor,0,ANCHOR_RIGHT,false,false,true,0,"Spread "+_Symb);

   LabelCreate(0,OBJPREFIX+"OPENLOTS"+" - "+_Symb,0,_x1+Dpi(970),Y,CORNER_LEFT_UPPER,"0.00",sFontType,FONTSIZE,startcolor,0,ANCHOR_RIGHT,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"POINTS"+" - "+_Symb,0,_x1+Dpi(CLIENT_BG_WIDTH)-Dpi(155),Y,CORNER_LEFT_UPPER,"0p",sFontType,FONTSIZE,startcolor,0,ANCHOR_RIGHT,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"PROFITS"+" - "+_Symb,0,_x1+Dpi(CLIENT_BG_WIDTH)-Dpi(73),Y,CORNER_LEFT_UPPER,"0.00"+_AccountCurrency(),sFontType,FONTSIZE,startcolor,0,ANCHOR_RIGHT,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"RETURN"+" - "+_Symb,0,_x1+Dpi(CLIENT_BG_WIDTH)-Dpi(10),Y,CORNER_LEFT_UPPER,"0.00%",sFontType,FONTSIZE,startcolor,0,ANCHOR_RIGHT,false,false,true,0,"\n");

   if(ShowTradePanel)
     {

      if(KeyboardTrading)
        {

         if(_Symb==_Symbol)
           {

            if(ObjectFind(0,OBJPREFIX+"MARKER")!=0)
               LabelCreate(0,OBJPREFIX+"MARKER",0,_x1+Dpi(10),Y+Dpi(5),CORNER_LEFT_UPPER,"_______",sFontType,FONTSIZE,COLOR_MARKER,0,ANCHOR_LEFT,false,false,true,0,"\n");
            else
              {

               if(ObjectGetInteger(0,OBJPREFIX+"MARKER",OBJPROP_YDISTANCE,0)!=Y+Dpi(5))
                  ObjectDelete(0,OBJPREFIX+"MARKER");
              }
           }
        }
      else
        {

         if(ObjectFind(0,OBJPREFIX+"MARKER")==0)
            ObjectDelete(0,OBJPREFIX+"MARKER");
        }
     }

  }

void CreateProBar(string _Symb,int x,int y)
  {

   int fr_y_pb=y;

   for(int i=1; i<11; i++)
     {
      LabelCreate(0,OBJPREFIX+"PB#"+IntegerToString(i)+" - "+_Symb,0,x,fr_y_pb,CORNER_LEFT_UPPER,"0","Webdings",25,clrNONE,0,ANCHOR_RIGHT,false,false,true,0,"\n");
      fr_y_pb-=Dpi(5);
     }

  }

void UpdateProBar(string _Symb,double Percent)
  {

   for(int i=1; i<11; i++)
      ObjectSetInteger(0,OBJPREFIX+"PB#"+IntegerToString(i)+" - "+_Symb,OBJPROP_COLOR,SelectedTheme==0?clrGainsboro:C'80,80,80');

   if(Percent>=0)
      ObjectSetInteger(0,OBJPREFIX+"PB#"+"1"+" - "+_Symb,OBJPROP_COLOR,C'255,0,0');

   if(Percent>10)
      ObjectSetInteger(0,OBJPREFIX+"PB#"+"2"+" - "+_Symb,OBJPROP_COLOR,C'255,69,0');

   if(Percent>20)
      ObjectSetInteger(0,OBJPREFIX+"PB#"+"3"+" - "+_Symb,OBJPROP_COLOR,C'255,150,0');

   if(Percent>30)
      ObjectSetInteger(0,OBJPREFIX+"PB#"+"4"+" - "+_Symb,OBJPROP_COLOR,C'255,165,0');

   if(Percent>40)
      ObjectSetInteger(0,OBJPREFIX+"PB#"+"5"+" - "+_Symb,OBJPROP_COLOR,C'255,215,0');

   if(Percent>50)
      ObjectSetInteger(0,OBJPREFIX+"PB#"+"6"+" - "+_Symb,OBJPROP_COLOR,C'255,255,0');

   if(Percent>60)
      ObjectSetInteger(0,OBJPREFIX+"PB#"+"7"+" - "+_Symb,OBJPROP_COLOR,C'173,255,47');

   if(Percent>70)
      ObjectSetInteger(0,OBJPREFIX+"PB#"+"8"+" - "+_Symb,OBJPROP_COLOR,C'124,252,0');

   if(Percent>80)
      ObjectSetInteger(0,OBJPREFIX+"PB#"+"9"+" - "+_Symb,OBJPROP_COLOR,C'0,255,0');

   if(Percent>90)
      ObjectSetInteger(0,OBJPREFIX+"PB#"+"10"+" - "+_Symb,OBJPROP_COLOR,C'0,255,0');

  }

void CreateMinWindow()
  {

   RectLabelCreate(0,OBJPREFIX+"MIN"+"BCKGRND[]",0,Dpi(1),Dpi(20),Dpi(163),Dpi(25),COLOR_BORDER,BORDER_FLAT,CORNER_LEFT_LOWER,COLOR_BORDER,STYLE_SOLID,1,false,false,true,0,"\n");

   LabelCreate(0,OBJPREFIX+"MIN"+"CAPTION",0,Dpi(140)-Dpi(64),Dpi(18),CORNER_LEFT_LOWER,"MultiTrader","Arial Black",8,C'59,41,40',0,ANCHOR_UPPER,false,false,true,0,"\n",false);

   LabelCreate(0,OBJPREFIX+"MIN"+"MAXIMIZE",0,Dpi(156),Dpi(23),CORNER_LEFT_LOWER,"1","Webdings",10,C'59,41,40',0,ANCHOR_UPPER,false,false,true,0,"\n",false);

  }

void DelteMinWindow()
  {

   ObjectDelete(0,OBJPREFIX+"MIN"+"BCKGRND[]");
   ObjectDelete(0,OBJPREFIX+"MIN"+"CAPTION");
   ObjectDelete(0,OBJPREFIX+"MIN"+"MAXIMIZE");

  }

int TradeNum(int Type)
  {

   int count=0;

   datetime starttime=0;

   if(Type==1)
      starttime=iTime(_Symbol,PERIOD_D1,0);

   if(Type==2)
      starttime=iTime(_Symbol,PERIOD_W1,0);

   if(Type==3)
      starttime=iTime(_Symbol,PERIOD_MN1,0);

   for(int i=0; i<OrdersHistoryTotal(); i++)
     {

      if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
        {

         if(OrderMagicNumber()==MagicNumber)
           {

            if(OrderType()<=1)
              {

               if(OrderCloseTime()>=starttime)
                  count++;
              }
           }
        }
     }

   return(count);
  }

void ObjectsUpdateAll(string _Symb)
  {

   double bid=MarketInfo(_Symb,MODE_BID),ask=MarketInfo(_Symb,MODE_ASK),avg=(ask+bid)/2;

   double TFHigh=iHigh(_Symb,CalcTF,0),TFLow=iLow(_Symb,CalcTF,0),TFOpen=iOpen(_Symb,CalcTF,0);

   double TFLastHigh=iHigh(_Symb,CalcTF,1),TFLastLow=iLow(_Symb,CalcTF,1),TFLastClose=iClose(_Symb,CalcTF,1);

   long Spread=SymbolInfoInteger(_Symb,SYMBOL_SPREAD);
   int digits = (int)MarketInfo(_Symb,MODE_DIGITS);

   if(OpenPos(_Symb,OP_SELL)>0)
      ObjectSetString(0,OBJPREFIX+"OPENSELL"+" - "+_Symb,OBJPROP_TEXT,DoubleToString(OpenPos(_Symb,OP_SELL),0));
   else
      ObjectSetString(0,OBJPREFIX+"OPENSELL"+" - "+_Symb,OBJPROP_TEXT,"\n");

   if(OpenPos(_Symb,OP_BUY)>0)
      ObjectSetString(0,OBJPREFIX+"OPENBUY"+" - "+_Symb,OBJPROP_TEXT,DoubleToString(OpenPos(_Symb,OP_BUY),0));
   else
      ObjectSetString(0,OBJPREFIX+"OPENBUY"+" - "+_Symb,OBJPROP_TEXT,"\n");

   double pts=MarketInfo(_Symb,MODE_POINT);

   double range=0;

   if(pts!=0)
      range=(TFHigh-TFLow)/pts;

   ObjectSetString(0,OBJPREFIX+"RANGE‿"+" - "+_Symb,OBJPROP_TEXT,DoubleToString(range,0)+"p");
   ObjectSetString(0,OBJPREFIX+"RANGE‿"+" - "+_Symb,OBJPROP_TOOLTIP,"Range "+_Symb+"\n"+"Average: "+DoubleToString(ADR(_Symb),0)+"p");
   ObjectSetInteger(0,OBJPREFIX+"RANGE‿"+" - "+_Symb,OBJPROP_COLOR,COLOR_FONT);

   double pp=(TFLastHigh+TFLastLow+TFLastClose)/3;

   if(PriceRowLeft==0)//Bid
      ObjectSetString(0,OBJPREFIX+"PRICEROW_L"+" - "+_Symb,OBJPROP_TEXT,DoubleToString(bid,digits));

   if(PriceRowLeft==1)//Low
      ObjectSetString(0,OBJPREFIX+"PRICEROW_L"+" - "+_Symb,OBJPROP_TEXT,DoubleToString(TFLow,digits));

   if(PriceRowLeft==2)//Open
      ObjectSetString(0,OBJPREFIX+"PRICEROW_L"+" - "+_Symb,OBJPROP_TEXT,DoubleToString(TFOpen,digits));

   if(PriceRowLeft==3)//Pivot
      ObjectSetString(0,OBJPREFIX+"PRICEROW_L"+" - "+_Symb,OBJPROP_TEXT,DoubleToString(pp,digits));

   if(PriceRowRight==0)//Ask
      ObjectSetString(0,OBJPREFIX+"PRICEROW_R"+" - "+_Symb,OBJPROP_TEXT,DoubleToString(ask,digits));

   if(PriceRowRight==1)//High
      ObjectSetString(0,OBJPREFIX+"PRICEROW_R"+" - "+_Symb,OBJPROP_TEXT,DoubleToString(TFHigh,digits));

   if(PriceRowRight==2)//Open
      ObjectSetString(0,OBJPREFIX+"PRICEROW_R"+" - "+_Symb,OBJPROP_TEXT,DoubleToString(TFOpen,digits));

   if(PriceRowRight==3)//Pivot
      ObjectSetString(0,OBJPREFIX+"PRICEROW_R"+" - "+_Symb,OBJPROP_TEXT,DoubleToString(pp,digits));

   ObjectSetInteger(0,OBJPREFIX+"PRICEROW_R"+" - "+_Symb,OBJPROP_COLOR,COLOR_FONT);
   ObjectSetInteger(0,OBJPREFIX+"PRICEROW_L"+" - "+_Symb,OBJPROP_COLOR,COLOR_FONT);

   if(PriceRowLeft<=1)
     {

      if((bid-TFLow)==0)
         ObjectSetInteger(0,OBJPREFIX+"PRICEROW_L"+" - "+_Symb,OBJPROP_COLOR,COLOR_RED);
     }

   if(PriceRowLeft==3)
     {

      if(avg>pp)
         ObjectSetInteger(0,OBJPREFIX+"PRICEROW_L"+" - "+_Symb,OBJPROP_COLOR,COLOR_BUY);

      if(avg<pp)
         ObjectSetInteger(0,OBJPREFIX+"PRICEROW_L"+" - "+_Symb,OBJPROP_COLOR,COLOR_SELL);
     }

   if(PriceRowRight<=1)
     {

      if((ask-TFHigh)==0)
         ObjectSetInteger(0,OBJPREFIX+"PRICEROW_R"+" - "+_Symb,OBJPROP_COLOR,COLOR_GREEN);
     }

   if(PriceRowRight==3)
     {

      if(avg>pp)
         ObjectSetInteger(0,OBJPREFIX+"PRICEROW_R"+" - "+_Symb,OBJPROP_COLOR,COLOR_BUY);

      if(avg<pp)
         ObjectSetInteger(0,OBJPREFIX+"PRICEROW_R"+" - "+_Symb,OBJPROP_COLOR,COLOR_SELL);
     }

   ObjectSetString(0,OBJPREFIX+"SPREAD"+" - "+_Symb,OBJPROP_TEXT,DoubleToString(MarketInfo(_Symb,MODE_SPREAD),0)+"p");

   if(Spread>=100)
      ObjectSetInteger(0,OBJPREFIX+"SPREAD"+" - "+_Symb,OBJPROP_COLOR,clrOrangeRed);
   else
      ObjectSetInteger(0,OBJPREFIX+"SPREAD"+" - "+_Symb,OBJPROP_COLOR,COLOR_FONT);

   ObjectSetString(0,OBJPREFIX+"OPENLOTS"+" - "+_Symb,OBJPROP_TEXT,DoubleToString(OpenLots(_Symb,OP_ALL),2));

   if(OpenLots(_Symb,OP_BUY)>0 && OpenLots(_Symb,OP_SELL)==0)
      ObjectSetInteger(0,OBJPREFIX+"OPENLOTS"+" - "+_Symb,OBJPROP_COLOR,COLOR_BUY);

   if(OpenLots(_Symb,OP_SELL)>0 && OpenLots(_Symb,OP_BUY)==0)
      ObjectSetInteger(0,OBJPREFIX+"OPENLOTS"+" - "+_Symb,OBJPROP_COLOR,COLOR_SELL);

   color COLOR_HEDGE=(SelectedTheme==0)?clrDarkOrange:clrGold;

   if(OpenLots(_Symb,OP_SELL)>0 && OpenLots(_Symb,OP_BUY)>0)
      ObjectSetInteger(0,OBJPREFIX+"OPENLOTS"+" - "+_Symb,OBJPROP_COLOR,COLOR_HEDGE);

   if(OpenLots(_Symb,OP_ALL)==0)
      ObjectSetInteger(0,OBJPREFIX+"OPENLOTS"+" - "+_Symb,OBJPROP_COLOR,COLOR_FONT);

   double AUD=AUD(),CAD=CAD(),CHF=CHF(),EUR=EUR(),GBP=GBP(),JPY=JPY(),NZD=NZD(),USD=USD();

   double symbol_r=SymbPerc(_Symb);

   ObjectSetString(0,OBJPREFIX+"RANGE%"+" - "+_Symb,OBJPROP_TEXT,DoubleToString(SymbPerc(_Symb),0)+"%");
   ObjectSetInteger(0,OBJPREFIX+_Symb,OBJPROP_COLOR,COLOR_FONT);
   ObjectSetInteger(0,OBJPREFIX+"RANGE%"+" - "+_Symb,OBJPROP_COLOR,COLOR_FONT);

   if(symbol_r>=BuyLevel)
     {

      if(
         (StringFind(_Symb,"AUD",0)!=-1 && (AUD>=BuyLevel || AUD<=SellLevel))
         || 
         (StringFind(_Symb,"CAD",0)!=-1 && (CAD>=BuyLevel || CAD<=SellLevel))
         || 
         (StringFind(_Symb,"CHF",0)!=-1 && (CHF>=BuyLevel || CHF<=SellLevel))
         || 
         (StringFind(_Symb,"EUR",0)!=-1 && (EUR>=BuyLevel || EUR<=SellLevel))
         || 
         (StringFind(_Symb,"GBP",0)!=-1 && (GBP>=BuyLevel || GBP<=SellLevel))
         || 
         (StringFind(_Symb,"JPY",0)!=-1 && (JPY>=BuyLevel || JPY<=SellLevel))
         || 
         (StringFind(_Symb,"NZD",0)!=-1 && (NZD>=BuyLevel || NZD<=SellLevel))
         || 
         (StringFind(_Symb,"USD",0)!=-1 && (USD>=BuyLevel || USD<=SellLevel))
         )
         ObjectSetInteger(0,OBJPREFIX+_Symb,OBJPROP_COLOR,COLOR_GREEN);

      ObjectSetInteger(0,OBJPREFIX+"RANGE%"+" - "+_Symb,OBJPROP_COLOR,COLOR_GREEN);
     }

   if(symbol_r<=SellLevel)
     {

      if(
         (StringFind(_Symb,"AUD",0)!=-1 && (AUD>=BuyLevel || AUD<=SellLevel))
         || 
         (StringFind(_Symb,"CAD",0)!=-1 && (CAD>=BuyLevel || CAD<=SellLevel))
         || 
         (StringFind(_Symb,"CHF",0)!=-1 && (CHF>=BuyLevel || CHF<=SellLevel))
         || 
         (StringFind(_Symb,"EUR",0)!=-1 && (EUR>=BuyLevel || EUR<=SellLevel))
         || 
         (StringFind(_Symb,"GBP",0)!=-1 && (GBP>=BuyLevel || GBP<=SellLevel))
         || 
         (StringFind(_Symb,"JPY",0)!=-1 && (JPY>=BuyLevel || JPY<=SellLevel))
         || 
         (StringFind(_Symb,"NZD",0)!=-1 && (NZD>=BuyLevel || NZD<=SellLevel))
         || 
         (StringFind(_Symb,"USD",0)!=-1 && (USD>=BuyLevel || USD<=SellLevel))
         )
         ObjectSetInteger(0,OBJPREFIX+_Symb,OBJPROP_COLOR,COLOR_RED);

      ObjectSetInteger(0,OBJPREFIX+"RANGE%"+" - "+_Symb,OBJPROP_COLOR,COLOR_RED);
     }

   double currentclose=iClose(_Symb,CalcTF,0);
   double previousclose=iClose(_Symb,CalcTF,1);

   if(previousclose!=0)
     {

      double symbol_p=NormalizeDouble((currentclose-previousclose)/previousclose*100,2);

      if(symbol_p>0)
        {

         if(symbol_r>=75)
            ObjectSetString(0,OBJPREFIX+"SYMBOL?"+" - "+_Symb,OBJPROP_TEXT,0,"?");
         if(symbol_r<75)
            ObjectSetString(0,OBJPREFIX+"SYMBOL?"+" - "+_Symb,OBJPROP_TEXT,0,"?");

         ObjectSetInteger(0,OBJPREFIX+"SYMBOL%"+" - "+_Symb,OBJPROP_COLOR,?Clr(symbol_p));

         ObjectSetString(0,OBJPREFIX+"SYMBOL%"+" - "+_Symb,OBJPROP_TEXT,0,?Str(symbol_p,2)+"%");
         ObjectSetInteger(0,OBJPREFIX+"SYMBOL?"+" - "+_Symb,OBJPROP_COLOR,?Clr(symbol_p));

         if(range>ADR(_Symb))
           {

            if(symbol_r>=BuyLevel)
               ObjectSetInteger(0,OBJPR

Показано первые 50% кода (символов: 128782)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
12 878,20₽ ≈ $157.40