Автор Тема: Робот по параболик сар  (Прочитано 779 раз)

0 Пользователей и 1 Гость просматривают эту тему.

13 Январь 2016, 14:44:32
Прочитано 779 раз

Phyton

  • Новичок

  • Оффлайн
  • *

  • 16
  • Репутация:
    5
опять в ступоре.>:(
идея такова.
написать робота в который открывает позиции по показаниям индикатора parabolic sar.
если параболик больше аск то открыть ордер на продажу, если параболик меньше бид, то закрыть имеющуюся позицию и открыть ордер на покупку. и наоборот. если была отрыта продажа и настали условия для покупки, то продажу закрыть и открыть покупку.
стоп и профит пока что не ставятся. все открывается и закрывается только по параболику.
лот задается вручную.


пока что не понимаю почему по моим условиям всегда открывает только покупку
вот условия открытия и закрытия
Торговые критерии: продажа если параболик больше аск, покупка если параболик меньше бид.
   if((nul && one) < Bid)    // покупка
     {
      pok=true; //(покупка)
      zprod=true; //(закрытие продажи)
     }
   if((nul && one) > Ask)   //продажа
     {
      prod=true; //(продажа)
      zpok=true; //(закрытие покупки)
     }
« Последнее редактирование: 13 Январь 2016, 16:38:49 от Trading-Go »

13 Январь 2016, 16:39:49
Ответ #1

Trading-Go

  • Администратор
  • Ветеран

  • Оффлайн
  • *****

  • 2 011
  • Репутация:
    493
  • Пол
    Мужской

    Мужской
опять в ступоре.>:(
идея такова.
написать робота в который открывает позиции по показаниям индикатора parabolic sar.
если параболик больше аск то открыть ордер на продажу, если параболик меньше бид, то закрыть имеющуюся позицию и открыть ордер на покупку. и наоборот. если была отрыта продажа и настали условия для покупки, то продажу закрыть и открыть покупку.
стоп и профит пока что не ставятся. все открывается и закрывается только по параболику.
лот задается вручную.


пока что не понимаю почему по моим условиям всегда открывает только покупку
вот условия открытия и закрытия
Торговые критерии: продажа если параболик больше аск, покупка если параболик меньше бид.
   if((nul && one) < Bid)    // покупка
     {
      pok=true; //(покупка)
      zprod=true; //(закрытие продажи)
     }
   if((nul && one) > Ask)   //продажа
     {
      prod=true; //(продажа)
      zpok=true; //(закрытие покупки)
     }

Приложите Весь код пожалуйста..
ВАЖНО НОВОСТЬ О ПЕРЕЕЗДЕ ФОРУМА
Своей помощью я стараюсь не давать готовое, я стараюсь натолкнуть Вас на понимание и на правильные мысли, что бы Вы сами решили свою задачу и получили знания... Как то так...

14 Январь 2016, 12:56:22
Ответ #2

Phyton

  • Новичок

  • Оффлайн
  • *

  • 16
  • Репутация:
    5
вот


//+------------------------------------------------------------------+
//|                                                       159847.mq4 |
//|                        Copyright 2016, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016 Phyton"
#property link      "http://vk.com/evilheadbanger"
#property version   "1.00"
#property strict
extern int stop=200;
extern int profit=200;
extern double lot = 0.01;
string Symb="EURUSD";
bool Work = true;
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void start()
  {
double nul = iSAR(NULL,0,0.02,0.2,0);
double one = iSAR(NULL,0,0.02,0.2,1);
bool pok = false; //продажа
bool prod = false; //покупка
bool zpok = false; //закрытие покупки
bool zprod = false; //закрытие продажи
bool Ans = false;
double SL;
double TP;
int Ticket;
int tip = OrderType();
//--------------------------------------------------------------- 3 --
//--------------------------------------------------------------------
// Торговые критерии: продажа если параболик больше аск, покупка если параболик меньше бид.
   if((nul && one) < Bid)    // покупка
     {
      pok=true;
      zprod=true;
     }
   if((nul && one) > Ask)   //продажа
     {
      prod=true;
      zpok=true;
     }
//--------------------------------------------------------------------
//--------------------------------------------------------------------
// Открытие ордеров
   if(Fun_New_Bar()==true)
     {
      if(OrdersTotal()<1 && pok ==true)
        {
         RefreshRates();
         SL=Bid-New_Stop(stop)*Point;     
         TP=Bid+New_Stop(profit)*Point;                     
         Alert("Попытка открыть Buy. Ожидание ответа..");
         Ticket=OrderSend(Symb,OP_BUY,lot,Ask,2,SL,TP); 
         if(Ticket>0) // Получилось :)
            Alert("Открыт ордер Buy ",Ticket);
        }
      if(OrdersTotal()<1 && prod ==true)
        {
         RefreshRates();
         SL=Ask+New_Stop(stop)*Point;     
         TP=Ask-New_Stop(profit)*Point;                     
         Alert("Попытка открыть Sell. Ожидание ответа..");
         Ticket=OrderSend(Symb,OP_SELL,lot,Bid,2,SL,TP);
         if(Ticket>0)
            Alert("Открыт ордер Sell ",Ticket);
        }
     }
//--------------------------------------------------------------------
//--------------------------------------------------------------------
// Закрытие ордеров

if (tip == 0 && zpok == true)
     {                                     
     Alert("Попытка закрыть Buy ", Ticket ,"Ожидание ответа..");
     RefreshRates();                        // Обновление данных
     Ans=OrderClose(Ticket,lot,Bid,2);      // Закрытие Buy
     if (Ans==true)                         // Получилось :)
         {
          Alert ("Закрыт ордер Buy ",Ticket);
         }
         if (Fun_Error(GetLastError())==1)      // Обработка ошибок
         return;                                // Выход из start()
     }
if (tip == 1 && zprod == true)
     {                                     
     Alert("Попытка закрыть Sell ", Ticket ,"Ожидание ответа..");
     RefreshRates();                        // Обновление данных
     Ans=OrderClose(Ticket,lot,Ask,2);      // Закрытие Buy
     if (Ans==true)                         // Получилось :)
         {
          Alert ("Закрыт ордер Sell ",Ticket);
         }
         if (Fun_Error(GetLastError())==1)      // Обработка ошибок
         return;                                // Выход из start()
     }
   
   
   
 }



//-------------------------------------------------------------- 11 --
int New_Stop(int Parametr) // Проверка стоп-прик.
  {
   int Min_Dist=(int)MarketInfo(Symb,MODE_STOPLEVEL);// Миним. дистанция
   if(Parametr<Min_Dist) // Если меньше допуст.
     {
      Parametr=Min_Dist;                        // Установим допуст.
      Alert("Увеличена дистанция стоп-приказа.");
     }
   return(Parametr);                            // Возврат значения
  }
//+------------------------------------------------------------------+

//-------------------------------------------------------------- 10 --
bool Fun_New_Bar()                              // Ф-ия обнаружения ..
  {                                             // .. нового бара
   static datetime Prev_Time=0;                  // Время текущего бара
   if(Prev_Time==0)
     {
      Prev_Time=Time[0];
      return(false);
     }
   if(Prev_Time!=Time[0])                         // Сравниваем время
     {
      Prev_Time=Time[0];                         // Теперь время такое
      return(true);                             // Поймался новый бар
     }
   return(false);
  }
//-------------------------------------------------------------- 10 --
int Fun_Error(int Error)                        // Ф-ия обработ ошибок
  {
   switch(Error)
     {                                          // Преодолимые ошибки           
      case  4: Alert("Торговый сервер занят. Пробуем ещё раз..");
         Sleep(3000);                           // Простое решение
         return(1);                             // Выход из функции
      case 135:Alert("Цена изменилась. Пробуем ещё раз..");
         RefreshRates();                        // Обновим данные
         return(1);                             // Выход из функции
      case 136:Alert("Нет цен. Ждём новый тик..");
         while(RefreshRates()==false)           // До нового тика
            Sleep(1);                           // Задержка в цикле
         return(1);                             // Выход из функции
      case 137:Alert("Брокер занят. Пробуем ещё раз..");
         Sleep(3000);                           // Простое решение
         return(1);                             // Выход из функции
      case 146:Alert("Подсистема торговли занята. Пробуем ещё..");
         Sleep(500);                            // Простое решение
         return(1);                             // Выход из функции
         // Критические ошибки
      case  2: Alert("Общая ошибка.");
         return(0);                             // Выход из функции
      case  5: Alert("Старая версия терминала.");
         Work=false;                            // Больше не работать
         return(0);                             // Выход из функции
      case 64: Alert("Счет заблокирован.");
         Work=false;                            // Больше не работать
         return(0);                             // Выход из функции
      case 133:Alert("Торговля запрещена.");
         return(0);                             // Выход из функции
      case 134:Alert("Недостаточно денег для совершения операции.");
         return(0);                             // Выход из функции
      default: Alert("Возникла ошибка ",Error); // Другие варианты   
         return(0);                             // Выход из функции
     }
  }

14 Январь 2016, 14:19:17
Ответ #3

Trading-Go

  • Администратор
  • Ветеран

  • Оффлайн
  • *****

  • 2 011
  • Репутация:
    493
  • Пол
    Мужской

    Мужской
вот

Честно скажу советник не проверял в тестере поправил и внес изменения с комментариями
//+------------------------------------------------------------------+
//|                                                       159847.mq4 |
//|                        Copyright 2016, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016 Phyton"
#property link      "http://vk.com/evilheadbanger"
#property version   "1.00"
#property strict
extern int stop=200;
extern int profit=200;
extern double lot= 0.01;
string Symb="EURUSD";
bool Work=true;
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int Ticket=-1; // Переменная должна быть статичная то есть меняет значение только при условиях
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void start()
  {
   double nul = iSAR(NULL,0,0.02,0.2,0);
   double one = iSAR(NULL,0,0.02,0.2,1);
   bool BUY  = false; //покупка
   bool SELL = false; //продажа
   bool zpok = false; //закрытие покупки
   bool zprod= false; //закрытие продажи
   bool Ans=false;
   double SL;
   double TP;
// int Ticket;  // На каждом новом тике в переменную попадает хлам или 0

// int tip=OrderType(); // Так нельзя, OrderType() можно вызвать только после вызова OrderSelect(........)
//--------------------------------------------------------------- 3 --
//--------------------------------------------------------------------
// Торговые критерии: продажа если параболик больше аск, покупка если параболик меньше бид.
// Вы проводите булевскую операцию nul && one которая значит если nul больше нуля и one больше нуля и меньше Бид
// Результат булевских операций только 0 или 1 других значений быть не может
// По этому условие нужно писать иначе
   if(nul!=EMPTY_VALUE && one!=EMPTY_VALUE) // Проверка индикаторных буфферов на значение обратите внимание что если буфер пустой one==EMPTY_VALUE то он имеет значение 2147483647
     {                                      // Это число 2147483647 в буфере означает что буфер пустой )))) Посмотрите справку EMPTY_VALUE Пустое значение в индикаторном буфере 2147483647 (0x7FFFFFFF)
      if(Bid>nul && Bid>one) // покупка
        {
         BUY  = true;
         SELL = false;
        }
      if(Ask<nul && Ask<one) //продажа
        {
         SELL = true;
         BUY  = false;
        }
     }
//--------------------------------------------------------------------
//--------------------------------------------------------------------
// Открытие ордеров
   if(Fun_New_Bar()==true)
     {
      if(Ticket==-1) // Ордеров нет тиккет обнулен после закрытия ордера или на старте программы
        {
         if(OrdersTotal()<1 && BUY==true)
           {
            RefreshRates();
            SL=Bid-New_Stop(stop)*Point;
            TP=Bid+New_Stop(profit)*Point;
            Alert("Попытка открыть Buy. Ожидание ответа..");
            Ticket=OrderSend(Symb,OP_BUY,lot,Ask,2,SL,TP);
            if(Ticket>0) // Получилось :)
               Alert("Открыт ордер Buy ",Ticket);
           }
         if(OrdersTotal()<1 && SELL==true)
           {
            RefreshRates();
            SL=Ask+New_Stop(stop)*Point;
            TP=Ask-New_Stop(profit)*Point;
            Alert("Попытка открыть Sell. Ожидание ответа..");
            Ticket=OrderSend(Symb,OP_SELL,lot,Bid,2,SL,TP);
            if(Ticket>0)
               Alert("Открыт ордер Sell ",Ticket);
           }
        }
     }
//--------------------------------------------------------------------
//--------------------------------------------------------------------
// Закрытие ордеров

   if(BUY==false && Ticket!=-1)
     {
      Alert("Попытка закрыть Buy ",Ticket,"Ожидание ответа..");
      RefreshRates();                        // Обновление данных
      Ans=OrderClose(Ticket,lot,Bid,2);      // Закрытие Buy
      if(Ans==true) // Получилось :)
        {
         Ticket=-1;// закрыли ордер обнуляем тиккет
         Alert("Закрыт ордер Buy ",Ticket);
        }
      else
      if(Fun_Error(GetLastError())==1)       // Обработка ошибок
      return;                                // Выход из start()
     }
   if(SELL==false && Ticket!=-1)
     {
      Alert("Попытка закрыть Sell ",Ticket,"Ожидание ответа..");
      RefreshRates();                        // Обновление данных
      Ans=OrderClose(Ticket,lot,Ask,2);      // Закрытие Buy
      if(Ans==true) // Получилось :)
        {
         Ticket=-1;// закрыли ордер обнуляем тиккет
         Alert("Закрыт ордер Sell ",Ticket);
        }
      else
      if(Fun_Error(GetLastError())==1) // Обработка ошибок
      return;                                // Выход из start()
     }

  }
//-------------------------------------------------------------- 11 --
int New_Stop(int Parametr) // Проверка стоп-прик.
  {
   int Min_Dist=(int)MarketInfo(Symb,MODE_STOPLEVEL);// Миним. дистанция
   if(Parametr<Min_Dist) // Если меньше допуст.
     {
      Parametr=Min_Dist;                        // Установим допуст.
      Alert("Увеличена дистанция стоп-приказа.");
     }
   return(Parametr);                            // Возврат значения
  }
//+------------------------------------------------------------------+

//-------------------------------------------------------------- 10 --
bool Fun_New_Bar()                              // Ф-ия обнаружения ..
  {                                             // .. нового бара
   static datetime Prev_Time=0;                  // Время текущего бара
   if(Prev_Time==0)
     {
      Prev_Time=Time[0];
      return(false);
     }
   if(Prev_Time!=Time[0]) // Сравниваем время
     {
      Prev_Time=Time[0];                         // Теперь время такое
      return(true);                             // Поймался новый бар
     }
   return(false);
  }
//-------------------------------------------------------------- 10 --
int Fun_Error(int Error) // Ф-ия обработ ошибок
  {
   switch(Error)
     {                                          // Преодолимые ошибки           
      case  4: Alert("Торговый сервер занят. Пробуем ещё раз..");
      Sleep(3000);                           // Простое решение
      return(1);                             // Выход из функции
      case 135:Alert("Цена изменилась. Пробуем ещё раз..");
      RefreshRates();                        // Обновим данные
      return(1);                             // Выход из функции
      case 136:Alert("Нет цен. Ждём новый тик..");
      while(RefreshRates()==false)           // До нового тика
         Sleep(1);                           // Задержка в цикле
      return(1);                             // Выход из функции
      case 137:Alert("Брокер занят. Пробуем ещё раз..");
      Sleep(3000);                           // Простое решение
      return(1);                             // Выход из функции
      case 146:Alert("Подсистема торговли занята. Пробуем ещё..");
      Sleep(500);                            // Простое решение
      return(1);                             // Выход из функции
                                             // Критические ошибки
      case  2: Alert("Общая ошибка.");
      return(0);                             // Выход из функции
      case  5: Alert("Старая версия терминала.");
      Work=false;                            // Больше не работать
      return(0);                             // Выход из функции
      case 64: Alert("Счет заблокирован.");
      Work=false;                            // Больше не работать
      return(0);                             // Выход из функции
      case 133:Alert("Торговля запрещена.");
      return(0);                             // Выход из функции
      case 134:Alert("Недостаточно денег для совершения операции.");
      return(0);                             // Выход из функции
      default: Alert("Возникла ошибка ",Error); // Другие варианты   
      return(0);                             // Выход из функции
     }
  }
//+------------------------------------------------------------------+
ВАЖНО НОВОСТЬ О ПЕРЕЕЗДЕ ФОРУМА
Своей помощью я стараюсь не давать готовое, я стараюсь натолкнуть Вас на понимание и на правильные мысли, что бы Вы сами решили свою задачу и получили знания... Как то так...

15 Январь 2016, 18:57:26
Ответ #4

Phyton

  • Новичок

  • Оффлайн
  • *

  • 16
  • Репутация:
    5
он открывает ордер на каждой свече, и после одного тика его закрывает
минуя условие
OrdersTotal()<1

15 Январь 2016, 19:46:01
Ответ #5

Trading-Go

  • Администратор
  • Ветеран

  • Оффлайн
  • *****

  • 2 011
  • Репутация:
    493
  • Пол
    Мужской

    Мужской
он открывает ордер на каждой свече, и после одного тика его закрывает
минуя условие
OrdersTotal()<1
Я в каждом видео все обьясню детально, про сбор информации про то как правильно работать и программировать, так же я в каждом видео говорю что работа с тиккетами не самая лучшая и простая идея.. Посмтрите на моем канале плей лист уроки программирования ...   ;)
//+------------------------------------------------------------------+
//|                                                       159847.mq4 |
//|                        Copyright 2016, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016 Phyton"
#property link      "http://vk.com/evilheadbanger"
#property version   "1.00"
#property strict
extern int stop=200;
extern int profit=200;
extern double lot= 0.01;
string Symb="EURUSD";
bool Work=true;
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int Ticket=-1; // Переменная должна быть статичная то есть меняет значение только при условиях
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void start()
  {
   double nul = NormalizeDouble(iSAR(NULL,0,0.02,0.2,0),Digits());
   double one = NormalizeDouble(iSAR(NULL,0,0.02,0.2,1),Digits());
   static bool BUY  = false; //покупка
   static bool SELL = false; //продажа
                             //  bool zpok = false; //закрытие покупки
//  bool zprod= false; //закрытие продажи
   bool Ans=false;
   double SL;
   double TP;

   int b=0,s=0;

   for(int i=OrdersTotal()-1; i>=0; i--)
      if(OrderSelect(i,SELECT_BY_POS))
         if(OrderSymbol()==Symbol())
           {
            if(OrderType()==OP_BUY)b++;
            if(OrderType()==OP_SELL)s++;
           }
// int Ticket;  // На каждом новом тике в переменную попадает хлам или 0

// int tip=OrderType(); // Так нельзя, OrderType() можно вызвать только после вызова OrderSelect(........)
//--------------------------------------------------------------- 3 --
//--------------------------------------------------------------------
// Торговые критерии: продажа если параболик больше аск, покупка если параболик меньше бид.
// Вы проводите булевскую операцию nul && one которая значит если nul больше нуля и one больше нуля и меньше Бид
// Результат булевских операций только 0 или 1 других значений быть не может
// По этому условие нужно писать иначе
   if(nul!=EMPTY_VALUE && one!=EMPTY_VALUE) // Проверка индикаторных буфферов на значение обратите внимание что если буфер пустой one==EMPTY_VALUE то он имеет значение 2147483647
     {                                      // Это число 2147483647 в буфере означает что буфер пустой )))) Посмотрите справку EMPTY_VALUE Пустое значение в индикаторном буфере 2147483647 (0x7FFFFFFF)
      if(Bid>nul && Bid>one) // покупка
        {
         BUY  = true;
         SELL = false;
        }
      if(Ask<nul && Ask<one) //продажа
        {
         SELL = true;
         BUY  = false;
        }

     }
//--------------------------------------------------------------------
//--------------------------------------------------------------------
// Открытие ордеров
   if(Fun_New_Bar()==true)
     {
      if(BUY==true && b==0)
        {
         RefreshRates();
         SL=Bid-New_Stop(stop)*Point;
         TP=Bid+New_Stop(profit)*Point;
         Alert("Попытка открыть Buy. Ожидание ответа..");
         Ticket=OrderSend(Symb,OP_BUY,lot,Ask,2,SL,TP);
         if(Ticket>0) // Получилось :)
            Alert("Открыт ордер Buy ",Ticket);
        }
      if(SELL==true && s==0)
        {
         RefreshRates();
         SL=Ask+New_Stop(stop)*Point;
         TP=Ask-New_Stop(profit)*Point;
         Alert("Попытка открыть Sell. Ожидание ответа..");
         Ticket=OrderSend(Symb,OP_SELL,lot,Bid,2,SL,TP);
         if(Ticket>0)
            Alert("Открыт ордер Sell ",Ticket);
        }
     }
//--------------------------------------------------------------------
//--------------------------------------------------------------------
// Закрытие ордеров

   if(BUY==false && b>0)
     {
      Alert("Попытка закрыть Buy ",Ticket,"Ожидание ответа..");
      RefreshRates();                        // Обновление данных
      Ans=OrderClose(Ticket,lot,Bid,2);      // Закрытие Buy
      if(Ans==true) // Получилось :)
        {
         Ticket=-1;// закрыли ордер обнуляем тиккет
         Alert("Закрыт ордер Buy ",Ticket);
        }
      else
      if(Fun_Error(GetLastError())==1)       // Обработка ошибок
      return;                                // Выход из start()
     }
   if(SELL==false && s>0)
     {
      Alert("Попытка закрыть Sell ",Ticket,"Ожидание ответа..");
      RefreshRates();                        // Обновление данных
      Ans=OrderClose(Ticket,lot,Ask,2);      // Закрытие Buy
      if(Ans==true) // Получилось :)
        {
         Ticket=-1;// закрыли ордер обнуляем тиккет
         Alert("Закрыт ордер Sell ",Ticket);
        }
      else
      if(Fun_Error(GetLastError())==1) // Обработка ошибок
      return;                                // Выход из start()
     }

  }
//-------------------------------------------------------------- 11 --
int New_Stop(int Parametr) // Проверка стоп-прик.
  {
   int Min_Dist=(int)MarketInfo(Symb,MODE_STOPLEVEL);// Миним. дистанция
   if(Parametr<Min_Dist) // Если меньше допуст.
     {
      Parametr=Min_Dist;                        // Установим допуст.
      Alert("Увеличена дистанция стоп-приказа.");
     }
   return(Parametr);                            // Возврат значения
  }
//+------------------------------------------------------------------+

//-------------------------------------------------------------- 10 --
bool Fun_New_Bar()                              // Ф-ия обнаружения ..
  {                                             // .. нового бара
   static datetime Prev_Time=0;                  // Время текущего бара
   if(Prev_Time==0)
     {
      Prev_Time=Time[0];
      return(false);
     }
   if(Prev_Time!=Time[0]) // Сравниваем время
     {
      Prev_Time=Time[0];                         // Теперь время такое
      return(true);                             // Поймался новый бар
     }
   return(false);
  }
//-------------------------------------------------------------- 10 --
int Fun_Error(int Error) // Ф-ия обработ ошибок
  {
   switch(Error)
     {                                          // Преодолимые ошибки           
      case  4: Alert("Торговый сервер занят. Пробуем ещё раз..");
      Sleep(3000);                           // Простое решение
      return(1);                             // Выход из функции
      case 135:Alert("Цена изменилась. Пробуем ещё раз..");
      RefreshRates();                        // Обновим данные
      return(1);                             // Выход из функции
      case 136:Alert("Нет цен. Ждём новый тик..");
      while(RefreshRates()==false)           // До нового тика
         Sleep(1);                           // Задержка в цикле
      return(1);                             // Выход из функции
      case 137:Alert("Брокер занят. Пробуем ещё раз..");
      Sleep(3000);                           // Простое решение
      return(1);                             // Выход из функции
      case 146:Alert("Подсистема торговли занята. Пробуем ещё..");
      Sleep(500);                            // Простое решение
      return(1);                             // Выход из функции
                                             // Критические ошибки
      case  2: Alert("Общая ошибка.");
      return(0);                             // Выход из функции
      case  5: Alert("Старая версия терминала.");
      Work=false;                            // Больше не работать
      return(0);                             // Выход из функции
      case 64: Alert("Счет заблокирован.");
      Work=false;                            // Больше не работать
      return(0);                             // Выход из функции
      case 133:Alert("Торговля запрещена.");
      return(0);                             // Выход из функции
      case 134:Alert("Недостаточно денег для совершения операции.");
      return(0);                             // Выход из функции
      default: Alert("Возникла ошибка ",Error); // Другие варианты   
      return(0);                             // Выход из функции
     }
  }
//+------------------------------------------------------------------+
ВАЖНО НОВОСТЬ О ПЕРЕЕЗДЕ ФОРУМА
Своей помощью я стараюсь не давать готовое, я стараюсь натолкнуть Вас на понимание и на правильные мысли, что бы Вы сами решили свою задачу и получили знания... Как то так...

16 Январь 2016, 18:56:28
Ответ #6

Phyton

  • Новичок

  • Оффлайн
  • *

  • 16
  • Репутация:
    5
я вас понял
сейчас же займусь этим)

22 Апрель 2016, 07:51:36
Ответ #7

Trading-Go

  • Администратор
  • Ветеран

  • Оффлайн
  • *****

  • 2 011
  • Репутация:
    493
  • Пол
    Мужской

    Мужской
Уважаемые друзья, мы переехали на новый более интересный и многофункциональный форум!
Теперь для пользователей появилось больше возможностей и удобств.
С удовольствием приглашаем Вас на новый более технологичный форум!

Перейти
Данный форум доступен только для чтения!
Регистрация, новые записи запрещены!
Все учетные данные перенесены на новый форум, повторная регистрация не требуется!
ВАЖНО НОВОСТЬ О ПЕРЕЕЗДЕ ФОРУМА
Своей помощью я стараюсь не давать готовое, я стараюсь натолкнуть Вас на понимание и на правильные мысли, что бы Вы сами решили свою задачу и получили знания... Как то так...