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

 
igorbel :

input datetime test                                =0;

컴파일 중. 0 날짜가 1970.01.01이면 설정에서 시간을 00, 01 또는 02로 설정할 수 없습니다.

이 페이지 는 입력 매개변수에 시간을 입력하는 예입니다 .

 
int     total= OrdersTotal ();      
for ( int i= 0 ;i<total;i++)
        {
         Print ( "i=" ,i);
         if (! OrderSelect (i, SELECT_BY_POS ))
           {
             Print ( "order not selected. Error=" , GetLastError ());
             continue ;
           }
         if ( OrderMagicNumber ()!=magic_number)
           {
             Print ( "magic number not correct." );
             continue ;
           }
         if ( OrderSymbol ()!= Symbol ())
           {
             Print ( "symbol not correct." );
             continue ;
           }
         if ( OrderType ()!= OP_SELL )
           {
             Print ( "order type not correct." );
             continue ;
           }
         if ( OrderCloseTime ()> 0 )
           {
             Print ( "order close time not correct." );
             continue ;
           }
         if (! OrderClose (ticket,lots,price,slippage,clrClose))
              {
               Print ( "order Sell with ticket=" ,ticket, ", was not closed. Error=" , GetLastError ());
              }
             else
              {               
               Print ( "order Sell with ticket=" ,ticket, ", was closed." );
              }
        }

OrderSelect() 에서 오류 4051이 발생하는 이유는 무엇입니까? 첫 번째 열기 주문은 올바르게 닫히고 두 번째 주문은 선택되지 않습니다. 오류=4051. 합계에 대한 올바른 값은 2입니다.

 
igorbel :

OrderSelect()에서 오류 4051이 발생하는 이유는 무엇입니까? 첫 번째 열기 주문은 올바르게 닫히고 두 번째 주문은 선택되지 않습니다. 오류=4051. 합계에 대한 올바른 값은 2입니다.

삭제하고 닫을 때 루프를 반대로 해야 합니다.

 for ( int i=total- 1 ;i>= 0 ;i--)
 
igorbel :

이상한 버그.

입력을 추가합니다.

input datetime test                                =0;

컴파일 중. 0 날짜가 1970.01.01이면 설정에서 시간을 00, 01 또는 02로 설정할 수 없습니다.

입력 변수는 EA에서 변경할 수 없습니다.
외부 변수 - 할 수 있습니다

 
Taras Slobodyanik :

입력 변수는 EA에서 변경할 수 없습니다.
외부 변수 - 할 수 있습니다


EA 코드에는 없습니다. 입력 매개변수 창에서 Expert Advisor를 차트에 첨부할 때.

 
Artyom Trishkin :

삭제하고 닫을 때 루프를 반대로 해야 합니다.


고맙습니다

 

안녕하세요, 다음 질문(2)에 대해 도움을 요청합니다.

1. 테스트 결과를 히스토리로 엑셀파일로 저장해주는 어드바이저가 있나요? 예를 들어, 나는 고문을 테스트했고 나는 고문의 매개변수를 얻고 싶습니다. 이익, 거래 유형, 결과, 요일 등이 있습니다.

또는 자세한 분석을 수행하는 방법에 대한 조언을 제공하거나 경험을 공유하거나 조언자를 테스트하고 그것이 가치가 있다는 것을 이해하는 방법 g.

2. 배열이나 구조체를 함수에 어떻게 전달합니까? 저것들. 나는 많은 변수를 가지고 있습니다. 이러한 변수를 어떤 구조에나 추가하고 함수에 전달합니다.

그런 다음 이 함수에서 이 구조를 열고 필요한 변수를 얻습니다. 변수의 모든 값을 어떤 함수로도 "끌지" 않기 위해 이 작업을 수행합니다(편의상).

고맙습니다.

 
rabanik :

안녕하세요, 다음 질문(2)에 대해 도움을 요청합니다.

1. 테스트 결과를 히스토리로 엑셀파일로 저장해주는 어드바이저가 있나요? 예를 들어, 나는 고문을 테스트했고 나는 고문의 매개변수를 얻고 싶습니다. 이익, 거래 유형, 결과, 요일 등이 있습니다.

또는 자세한 분석을 수행하는 방법에 대한 조언을 제공하거나 경험을 공유하거나 조언자를 테스트하고 그것이 가치가 있다는 것을 이해하는 방법 g.

2. 배열이나 구조체를 함수에 어떻게 전달합니까? 저것들. 나는 많은 변수를 가지고 있습니다. 이러한 변수를 어떤 구조에나 추가하고 함수에 전달합니다.

그런 다음 이 함수에서 이 구조를 열고 필요한 변수를 얻습니다. 변수의 모든 값을 어떤 함수로도 "끌지" 않기 위해 이 작업을 수행합니다(편의상).

고맙습니다.

은 여기에 있습니다 .

 //+------------------------------------------------------------------+
//| передача параметров по ссылке                                    |
//+------------------------------------------------------------------+
double SecondMethod( int &i, int &j)
  {
   double res;
//---
   i*= 2 ;
   j/= 2 ;
   res=i+j;
//---
   return (res);
  }
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart ()
  {
//---
   int a= 14 ,b= 8 ;
   Print ( "a и b перед вызовом:" ,a, " " ,b);
   double d=SecondMethod(a,b);
   Print ( "a и b после вызова:" ,a, " " ,b);
  }
//+------------------------------------------------------------------+
//--- результат выполнения скрипта
//  a и b перед вызовом: 14 8
//  a и b после вызова: 28 4
Передача параметров - Функции - Основы языка - Справочник MQL4
Передача параметров - Функции - Основы языка - Справочник MQL4
  • docs.mql4.com
Передача параметров - Функции - Основы языка - Справочник MQL4
 

신사 숙녀 여러분!

무슨 일이 일어나고 있는지 이해하도록 도와주세요.

사용된 switch(int err) 문

세미콜론이 예상되는 메시지를 받았습니다.

정수 오류 설명()

{

경고 ("오류 설명 요청")


스위치(오류)

{

사례 0: err="오류 없음"; 부서지다;

사례 1: err="오류는 없지만 결과는 알 수 없음"; 부서지다;

사례 2: err="일반 오류"; 부서지다;

사례 3: err="잘못된 매개변수";

무슨 일이야, 세미콜론이 어디에 있어야하는지 알 수 없습니까? 불명...

 
buyanov :

신사 숙녀 여러분!

무슨 일이 일어나고 있는지 이해하도록 도와주세요.

사용된 switch(int err) 문

세미콜론이 예상되는 메시지를 받았습니다.

정수 오류 설명()

{

Alert("오류 설명 요청")


스위치(오류)

{

사례 0: err="오류 없음"; 부서지다;

사례 1: err="오류는 없지만 결과는 알 수 없음"; 부서지다;

사례 2: err="일반 오류"; 부서지다;

사례 3: err="잘못된 매개변수";

무슨 일이야, 세미콜론이 어디에 있어야하는지 알 수 없습니까? 불명...

Alert() 를 돌보았습니까? 정확히 어디에 ";" ?

 int ErrorDescription()
  { 
   Alert ( "beg ErrorDescription" ) ;   // где у вас ";" ???
   switch (err)
   {    
       case 0 :   err= "Нет ошибок" ;                                                     break ;
       case 1 :   err= "Нет ошибки, но результат неизвестен" ;                             break ;
       case 2 :   err= "Общая ошибка" ;                                                   break ;
       case 3 :   err= "Неправильные параметры" ;        
그리고 왜 함수 스텁을 제공합니까?