Подскажите как оптимизировать код

 
Друзья, посмотрите, пожалуйста! Я немного разбираюсь в программировании, подскажите, может как-то можно это оптимизировать?
Файлы:
9r51jp.mq4  12 kb
 
Не из Одессы, но не могу не ответить вопросом на вопрос... Вы какой смысл вкладываете в понятие "оптимизировать"?
 
denkir:
Не из Одессы, но не могу не ответить вопросом на вопрос... Вы какой смысл вкладываете в понятие "оптимизировать"?
Я вижу, что там много повторений. Вот нужен опытный взгляд, как бы их не расписывать, а загнать в массив или функцию.
 
agluhenko:
Я вижу, что там много повторений. Вот нужен опытный взгляд, как бы их не расписывать, а загнать в массив или функцию.

чтобы не было дублирования можно использовать массив структур, 1 структура - одна валютная пара, тогда кучки IF заменятся на один цикл. Вот как-то так :

extern string InpSymbols = "EURUSD,USDCHF";

struct SDeals
{
    int mEntry;
    int mDirection;
    string mName;
    double mPrice;
    double mSummary;
    datetime mTime;
};

SDeals iDeals[];
int iCount;

start() 
{
   string s[];
   iCount = StringSplit(InpSymbols, ",", s);

   ArrayResize(DS, pairs);

   for (int k = 0; k < iCount; k++)
   {
       DS.mName = s[k];
   }
}

calculate(...)
{
   for (int k = 0; k < iCount; k++)
   {
       if (...)
       {
           DoSomething(DS.mName);
       }
   }
}
 
Оптимизиоровать код я считаю надо когда он долго ооптимизируется. Пользуйтесь профилировщиком
 
Код как код, зачем там что то оптимизировать ? Каждый пишет как удобнее или вам на диссертацию ?
 
artemiusgreat:

чтобы не было дублирования можно использовать массив структур, 1 структура - одна валютная пара, тогда кучки IF заменятся на один цикл. Вот как-то так :

Видимо, еще мой мозг и опыт не дошел до понимания этого ))) но, спасибо, что показали как это может быть....
 
Kino:
Код как код, зачем там что то оптимизировать ? Каждый пишет как удобнее или вам на диссертацию ?
Нет, только для внутреннего развития, поднятия своего интеллектуального уровня )
 
Нормальный код. Хорошо читается. Разбираться в нем - одно удовольствие. Не тестировал.
Причина обращения: