초보자의 질문 MQL4 MT4 MetaTrader 4 - 페이지 68

 
코드를 삽입해야 하고 표시되지 않는 코드를 삽입하고 싶습니다.
 

//|                                          9.1.4.5 OrderDelete.mq4 |
//|                        Copyright 2016, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link        "https://www.mql5.com"
#property version    "1.00"
#property strict
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+1
void OnStart ()
{
   string Symb= Symbol ();         //Финансовый инструмент
   double Dist= 1000000.0 ;       //Предустановка
   double Price;
   int   Limit_Stop=- 1 ;           // Пока отложенных нет
   int Tip;
   double Win_Price= WindowPriceOnDropped ();     //Здесь брошен скрипт
   //-------------------------------------------------------------------+2
   for ( int i= 1 ; i<= OrdersTotal (); i++)         // Цикл выбора ордеров
  {  
     if ( OrderSelect (i- 1 , SELECT_BY_POS )== true )     //Eсли ордер выбран
      {
         //------------------------------------------------------------------+3      
         if ( OrderSymbol ()!=Symb) continue    //не ваш фин. инструмент
         int Tip= OrderType ();               //Тип ордера
         if (Tip< 2 ) continue                  //Рыночный ордер
      
         //------------------------------------------------------------+4
         double Price= OrderOpenPrice ();     //Цена откр. отлож. ордера
           if ( NormalizeDouble ( MathAbs (Price-Win_Price), Digits )<
             NormalizeDouble (Dist, Digits ))
            {
            Dist= MathAbs (Price-Win_Price);     // Новое значение
            Limit_Stop=Tip;                     //Есть отложенный ордер
             int Ticket= OrderTicket ();             // номер ордера
            }
      }
  
  
   //+---------------------------------------------------------------+5
   switch (Limit_Stop)
  {
   case 2 : string Texst= "BuyLimint " ;
         break ;
   case 3 : Texst= "SellLimint " ;
         break ;
   case 4 Texst= "BuyStop " ;
         break ;
   case 5 Texst= "SellStop " ;
         break ;
  }
  
   //------------------------------------------------------------------+6
   //ЦИКЛ ЗАКРЫТИЯ  ОРДЕРА
   //--------------------------------------------------------------------
   while ( true )               // цикл закрытия ордера
  {
   if (Limit_Stop==- 1 )       //если отложенных нет
    {
     Alert ( "по " ,Symb, "отложенных ордеров" );   //если отложенных нет
     break ;
    }
     //-----------------------------------------------------------------+7
     Alert ( "Попытка удалить " , "" ,Ticket, "ожидание ответа.." );
     bool   Ans= OrderDelete (Ticket);               //Удаление ордера
     //---------------------------------------------------------------------
     if (Ans== true )
    {
     Alert ( "Удалён ордер " ,Text, "" ,Ticket);
     break ;
    }
     int Error= GetLastError ();
     switch (Error)
    {
     case 4 : Alert ( "Торговый сервер занят. Пробуем ещё раз.." );
     Sleep ( 3000 );                                 //Обновим данные
     continue ;                                     //На следующую итерацию
     case 137 : Alert ( "Брокер занят. Пробуем ещё раз..." );
             Sleep ( 3000 );
             continue ;
     case 146 : Alert ( "Подсистема торговли занята. Пробуем ещё раз..." );
             Sleep ( 500 );
             continue ;                             // На следующую итерацию
    }
     switch (Error)                                   //Критические ошибки
     {
     case 2 : Alert ( "Oбщая ошибка." );
             break ;                               //Выход из switch
  
     case 64 : Alert ( "Счёт заблокирован." );
             break ;                               //Выход из switch                                    
     case 133 : Alert ( "Торговля заблакирована." );
             break ;
     case 139 : Alert ( " Ордер заблакирован и уже обрабатывается." );
             break ;
     case 145 : Alert ( "Модификация запрещена.Ордер слишком близок к рынку" );
             break ;      
     default : Alert ( "Возникла ошибка." ,Error);     //Другие варианты                                                               //Выход из switch      
     }
     break ;                                
   }
   //---------------------------------------------------------------------+
   Alert ( "Скрипт законччил работу-----------------------." );
   return ;
}

  
얘들아 봐
 
대괄호 onstart의 두 가지 오류가 강조 표시되었습니다. for 루프에 대괄호가 충분하지 않은 것 같습니다. 11 오류, 기적을 강조 표시합니다 !!!
 
 
FOTOGRAF14 :
대괄호 onstart의 두 가지 오류가 강조 표시되었습니다. for 루프에 괄호가 충분하지 않은 것 같습니다. 11 오류, 기적을 강조 표시합니다 !!!
오류 수의 증가가 사실이 아니라고 생각하지 마십시오! for의 괄호는 정말 필요합니다. 이 버그만 먼저 수정해야 합니다. 수정한 후에도 여전히 오류가 있는 것 같습니다. :)
 
FOTOGRAF14 :
대괄호 onstart의 두 가지 오류가 강조 표시되었습니다. for 루프에 괄호가 충분하지 않은 것 같습니다. 11 오류, 기적을 강조 표시합니다 !!!
기적은 없습니다... " ')' - 프로그램의 예기치 않은 종료 " - 예기치 않은 종료 ... " '{' - 불균형 괄호 " - 닫히지 않은 괄호 ... = 불완전한 괄호, '{' 누락 또는 추가 . . 코드를 잘 확인하고 필요에 따라 추가하거나, 초과하는 부분은 제거해야 합니다. ...
 
FOTOGRAF14 :

페이지 25, 27, - 세미콜론이 없습니다.

페이지 44, 48, 50, 69, - Textst, 컴파일러는 그것이 무엇인지 이해하지 못합니다. 'Text'는 선언된 식별자가 아닙니다 = 처리해야 합니다.

페이지 48, 50, - 피연산자 예상 = 콜론이 생략되었을 가능성이 큽니다.

페이지 64 - 티켓 = 선언되지 않은 식별자입니다.

등은 실수를 정리합니다.

 
FOTOGRAF14 :
코드를 삽입해야 하고 표시되지 않는 코드를 삽입하고 싶습니다.

삽입된 코드 뒤에 다음과 같이 입력해야 합니다.

***

포럼 결함

 
FOTOGRAF14 :

  
얘들아 봐

설계상 마지막 주문을 건너뛰는 이유는 무엇입니까?

for ( int i = 1 ; i<= OrdersTotal (); i++)         // Цикл выбора ордеров
  {  
     if ( OrderSelect ( i- 1 , SELECT_BY_POS )== true )     //Eсли ордер выбран
      {


 
터미널에서 - 뉴스 탭. 팝업 창의 크기와 그 안의 글꼴 크기 를 변경하여 터미널 및 후속 항목을 종료한 후 이러한 변경 사항이 저장되도록 하는 방법은 무엇입니까?