포럼을 어지럽히 지 않도록 모든 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 6. - 페이지 594

 
DiPach :
P./S.: 만일의 경우를 대비하여 NormalizeDouble 에 대한 도움말에서 "참고"에 귀하의 질문에 대한 부분적인 답변이 있음을 언급하겠습니다.

그 자체로 DoubleToS 처방을 잊어 버리곤 ... 그리고 나서 점 뒤에 많은 숫자를 보고 깜짝 놀랐다. :)


네, 물론, 도움말에 이에 대해 쓰여져 있습니다. 답변 해주셔서 감사합니다.
 

안녕하세요! 다른 통화 쌍의 데이터로 테스터에서 표시기를 작동시키는 방법을 알려주십시오.

이 그림은 "GBPUSD" 기호가 있는 일반적인 MACD를 보여줍니다. "EURUSD" 차트에서는 모든 것이 "GBPUSD" 차트와 정확히 동일하게 그려집니다.

그러나 테스터에서 작동하고 싶지 않습니다. 테스터가 일시 중지되면 "EURUSD"차트에 표시기를 설정하면 처음에는 모든 것이 올바르게 그려지지만 테스트를 시작하자마자

그림과 같이 직선이 그려집니다. 또는 작동하는 다른 지표를 제안할 수 있습니다. 중요한 것은 MACD가 아니라 쓰기의 원칙이다.

파일:
 
테스터에서 누가 석유 선물(#BRNM4)을 사용할 수 있습니까? 오류 4107이 발생합니다.
 

글로벌 변수 GlobalVariableSet에 쓰는 방법을 알려주세요. 현재 시간을 말씀해 볼까요? 그것은 날짜가 아니라 일련의 숫자를 제공합니다 ...

 
ClanVi :

글로벌 변수 GlobalVariableSet에 쓰는 방법을 알려주세요. 현재 시간을 말씀해 볼까요? 그것은 날짜가 아니라 일련의 숫자를 제공합니다 ...


시간은 정수 값으로 저장됩니다.
 

안녕하세요. 모두 행복한 승리의 날!

빌드의 새 릴리스에서는 오른쪽 아래 모서리에 있는 개체가 오른쪽으로 크롤링되었습니다. 그 안의 텍스트를 모두 읽을 수 있도록 약간 왼쪽으로 이동해야 합니다.

어떻게 되었고 어떻게 했는지:

바로 지금 그들은 기어갔습니다.

코드:

 #include <stdlib.mqh>
#include <stderror.mqh>
#include <WinUser32.mqh>
//--------------------------------------------------------------- 3 --
#include <Variables_AU.mqh>           // Описание переменных 
#include <Terminal.mqh>               // Учёт ордеров
#include <Events.mqh>                 // Функция слежения за событиями, обновлен.
#include <Inform.mqh>                 // Информационная функция
#include <Trade.mqh>                 // Торговая функция
#include <Open_Ord.mqh>               // Открытие одного ордера заданного типа
#include <Open_Ord_balance_line.mqh> //Доливка по линии баланса -  установка одного отложенного ордера  
#include <Close_All.mqh>             // Закрытие  всех ордеров заданного типа
#include <Tral_Stop_All.mqh>         // Модификация лимитного ордера
#include <Lot_MM.mqh>                 // Вычисление количества лотов
#include <Criterion.mqh>             // Торговые критерии
#include <Errors.mqh>                 // Функция обработки ошибок.
//--------------------------------------------------------------- 4 --
int init()                             // Спец. функция init
  {
  
   IsExpertStopped = false ;
   if (! IsTradeAllowed ())  { Comment ( "Необходимо разрешить советнику торговать" );IsExpertStopped = true ; return ( 0 );}      
   // if (!IsTesting()){if (IsExpertEnabled())    Comment("Советник запустится следующим тиком");else  Comment("Отжата кнопка \"Разрешить запуск советников\"");}   
      
   // Определяем переменные окружения
   Level_old= MarketInfo ( Symbol (), MODE_STOPLEVEL ); //Миним. дистаниция 
   Level_Freeze = MarketInfo ( Symbol (), MODE_FREEZELEVEL ); 
   Spread = MarketInfo ( Symbol (), MODE_SPREAD );
   Tick = MarketInfo ( Symbol (), MODE_TICKSIZE );     //Mинимальный тик   
   // Пересчеты пунктов для пятизначного ДЦ   
   if (( Digits == 3 ) || ( Digits == 5 )){SlipPips = SlipPips* 10 ; indent_Hight = indent_Hight * 10 ; indent_Low = indent_Low * 10 ;}    
  
   Terminal();                         // Функция учёта ордеров 
//----------------------------------------------Мониторинг---------------------  
   if (Monitor== true )
    {
     int a,y;
     for (a= 0 ,y= 5 ;a<= 4 ;a++)
      {
       string N= DoubleToStr (a, 0 );
  
       ObjectCreate (N, OBJ_LABEL , 0 , 0 , 0 , 0 , 0 , 0 , 0 );
       ObjectSet (N, OBJPROP_CORNER , 3 );
       ObjectSet (N, OBJPROP_XDISTANCE , 5 );
       ObjectSet (N, OBJPROP_YDISTANCE ,y);
      y+= 20 ;
      }  
    }
      
   return ( 0 );                             // Выход из init() 
  }
//-----------------------------------------------------------------------------
int start()                             // Спец. функция start
  {  
     
//------------- Вызов ф-ий учёта ордеров, принятия торговых решений и информации ----------   
  Terminal();                         // Функция учёта ордеров 
  Events();                           // Информация о событиях
  Trade (Criterion());                 // Торговая функция
  Inform( 0 );                           // Для перекрашивания объектов
   
//-------------  МОНИТОРИНГ  --------------------------------------------------------------
   if (Monitor== true )
    {
     string str= "Balance: " + DoubleToStr ( AccountBalance (), 2 )+ " $" ;
     ObjectSetText ( "0" ,str, 10 , "Arial Black" ,DarkOrange);
    
     str= "Profit: " + DoubleToStr ( AccountProfit (), 2 )+ " $" ;
     ObjectSetText ( "1" ,str, 10 , "Arial Black" ,Salmon);
    
     str= "Free Margine: " + DoubleToStr ( AccountFreeMargin (), 2 )+ " $" ;
     ObjectSetText ( "2" ,str, 10 , "Arial Black" ,Gold);
    
     str= "OrdersTotal: " + DoubleToStr ( OrdersTotal (), 0 );
     ObjectSetText ( "3" ,str, 10 , "Arial Black" ,MediumAquamarine);
    
     if (Lot_MM()== false )               // Средств не хватает на миним.
             return ( 0 );                   // Выход из пользов. функции 
     str= "Lots_Next: " + DoubleToStr (Lots_New, 2 );
     ObjectSetText ( "4" ,str, 10 , "Arial Black" ,Olive);
    }
   
   return ( 0 );                             // Выход из start()
  }
//-------------------------------------------------------------------------------------------
int deinit()                           // Спец. функция deinit()
  {
   Inform(- 1 );                         // Для удаления объектов
   //----------------------------------------------------------------------------------------
   if (Monitor== true )
    {
     for ( int a= 0 ;a<= 4 ;a++)
      {
       string N= DoubleToStr (a, 0 );
       ObjectDelete (N);
      } 
    }
//-------------------------------------------------------------------------------------------
   return ( 0 );                             // Выход из deinit()
  }
//-------------------------------------------------------------------------------------------
 

앵커 각도 를 변경하고 좌표 거리를 설정하여 직접 했습니다.

 //----------------------------------------------Мониторинг---------------------  
   if (Monitor== true )
    {
     int a,y;
     for (a= 0 ,y= 50 ;a<= 4 ;a++)
      {
       string N= DoubleToStr (a, 0 );
  
       ObjectCreate (N, OBJ_LABEL , 0 , 0 , 0 , 0 , 0 , 0 , 0 );
       ObjectSet (N, OBJPROP_CORNER , 0 );
       ObjectSet (N, OBJPROP_XDISTANCE , 50 );
       ObjectSet (N, OBJPROP_YDISTANCE ,y);
      y+= 20 ;
      }  
    }
      
   return ( 0 );                             // Выход из init() 
  }
 

그리고 개체 주석의 크기와 글꼴(아마도 거의 색상이 아님)을 변경하는 방법은 무엇입니까?


글쎄, 그림에서 시작 # 티켓 번호 - 여기 있습니다.

기능:

 //+------------------------------------------------------------------+
   void SetTLine( color cl, long chartID, int wnd, string nm,
                 datetime t1, double p1, datetime t2, double p2,
                 bool ry= False , int st= 0 , int wd= 1 , string tx= "" , int sz= 0 ) {
       if (DrawGraphics== 0 ) return ;
       if ( ObjectFind (nm)< 0 ) ObjectCreate (chartID, nm, OBJ_TREND , wnd, 0 , 0 , 0 , 0 );
       ObjectSetInteger (chartID,nm, OBJPROP_TIME1 ,t1);
       ObjectSetDouble (chartID,nm, OBJPROP_PRICE1 ,p1);
       ObjectSetInteger (chartID,nm, OBJPROP_TIME2 ,t2);
       ObjectSetDouble (chartID,nm, OBJPROP_PRICE2 ,p2);
       ObjectSetInteger (chartID,nm, OBJPROP_COLOR ,cl);
       ObjectSetInteger (chartID,nm, OBJPROP_RAY ,ry);
       ObjectSetInteger (chartID,nm, OBJPROP_STYLE ,st);
       ObjectSetInteger (chartID,nm, OBJPROP_WIDTH ,wd);
       ObjectSetString (chartID,nm, OBJPROP_TEXT ,tx);
       ObjectSetString (chartID,nm, OBJPROP_FONT , "Tahoma" );
       ObjectSetInteger (chartID,nm, OBJPROP_FONTSIZE ,sz);
   }
//+------------------------------------------------------------------+

나는 그들이 어떻게든 영향을 미친다고 생각했던 마지막 세 가지 매개변수. 아무것도...

 
pako :


글쎄, 그것은 텍스트 개체입니다. 그리고 OBJ_TREND 에서 변경해야 합니다. 한 개체에서 즉시 가능하고 다른 텍스트 개체를 추세선에 첨부하지 않고 싶습니다.
 

디버거가 작동을 멈췄습니다. 이유가 무엇입니까?

5월 5일 오후 중반부터 Debugger는 중단점에서 변수 값을 내보내는 것을 중단했습니다. 모든 변수에 대한 모든 프로그램에서. 동시에 프로그램 자체는 이전과 같이 작동합니다. 그 당시 (그리고 여전히) 편집자 " ver . 5.00 빌드 934" 및 MetaTrader " 버전 . 4.00 빌드 646" .

다음은 가장 간단한 스크립트이며 디버거가 출력하는 내용입니다. 말해봐, 무슨 일이야?

사유: