[ARCHIVE!] 포럼을 어지럽히 지 않도록 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 4. - 페이지 559

 
다시 한 번 감사합니다, 죄송합니다!
 

외부 변수의 매개변수에서 엄격하게 정의된 값만 선택할 수 있도록 작성 방법(또는 작성할 내용)을 알려주십시오.

말: 5, 10, 20, 40, 60 등...

작성할 수 없다면 구현하는 가장 좋은 방법은 무엇입니까? 가격과 반올림을 통해? 또는 다른 것?


미리 감사드립니다!

[Deleted]  
TarasBY :

다음과 같이 작동할 수 있습니다.


시도 해봐
 //|                                                         0000.mq4 |
//+------------------------------------------------------------------+
#property copyright ""
#property link       ""
//+------------------------------------------------------------------+
#include     <stdlib.mqh>                 // Библиотека кодов ошибок
string ErrorDescription( int error_code);
//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
int start()
   {
   double ld_Price; int N=23,Ticket=- 1 ;
   for ( int i= OrdersTotal ()- 1 ;i>= 0 ;i--)
      {
       if (! OrderSelect (i,SELECT_BY_POS,MODE_TRADES)) continue ;
       if (OrderSymbol()!= Symbol ()) continue ; 
       if (OrderType()>= 2 )
         {
         if (OrderDelete(OrderTicket())== true ) continue ;
         else Print ( "Error: " ,ErrorDescription( GetLastError ()));
      }
       if (OrderType()==OP_SELL)ld_Price=Ask;
       if (OrderType()==OP_BUY)ld_Price=Bid;
       if (OrderClose(OrderTicket(),OrderLots(), NormalizeDouble (ld_Price, Digits ), 6 ,Red)== true ) continue ;
       else Print ( "Error: " ,ErrorDescription( GetLastError ()));
   }
   for (i= 0 ;i<N;i++)
      {
       if (!IsTradeAllowed()){ Sleep ( 2000 ); continue ;}
      RefreshRates();
      Ticket= OrderSend ( Symbol (),OP_BUY, 0.1 , NormalizeDouble (Ask, Digits ), 6 , 0.0 , 0.0 , "Skript" , 98600 , 0 ,Blue);
       if (Ticket>= 0 ) break ;
       else Print ( "Error: " ,ErrorDescription( GetLastError ())); Sleep ( 2000 );
    }
     if (Ticket< 0 ) Alert ( "Не удалось открыть ордер за " ,N, " попыток" , "Error: " ,ErrorDescription( GetLastError ()), ". Скрипт завершил работу." );
     return ( 0 );
}
//+------------------------------------------------------------------+
[Deleted]  
Chiripaha :

외부 변수의 매개변수에서 엄격하게 정의된 값만 선택할 수 있도록 작성 방법(또는 작성할 내용)을 알려주십시오.

말: 5, 10, 20, 40, 60 등...

작성할 수 없다면 구현하는 가장 좋은 방법은 무엇입니까? 가격과 반올림을 통해? 또는 다른 것?


미리 감사드립니다!


문자열 유형의 외부 변수를 선언하고 명령과 매개변수 세트가 있는 문자열로 초기화합니다 . 속성 창에서 볼 수 있습니다.
 
rigonich :

문자열 유형의 외부 변수를 선언하고 명령과 매개변수 세트가 있는 문자열로 초기화합니다. 속성 창에서 볼 수 있습니다.

:))) 명령이 있는 줄은 무엇입니까? 가능하면 손가락으로 보여주세요. 그리고 스레드에 대한 예제를 작성하는 것이 좋습니다. 비유로 하겠습니다.

그런 다음 - 문자열이면 이 데이터가 데이터로 인식됩니까? 아니면 텍스트처럼 될까요?

또는 계산에서 텍스트 값을 대입하더라도 숫자에서 온 것이라면 숫자로 인식됩니까?

[Deleted]  
Chiripaha :

:))) 명령이 있는 줄은 무엇입니까? 가능하면 손가락으로 보여주세요. 그리고 스레드에 대한 예제를 작성하는 것이 좋습니다. 비유로 하겠습니다.

그런 다음 - 문자열이면 이 데이터가 데이터로 인식됩니까? 아니면 텍스트처럼 될까요?

또는 계산에서 텍스트 값을 대입하더라도 숫자에서 온 것이라면 숫자로 인식됩니까?


변수 앞에 넣기만 하면 됩니다.
 extern string a= "Переменная x может принимать значения: 5;10;и.т.д"
이 라인은 EA, 지표 또는 스크립트(속성에 #property show_inputs가 있는 경우)가 차트에 첨부될 때 나타나는 속성 창에 표시됩니다.
 
TarasBY :

그렇다면?:


감사합니다. 작동합니다!
 
rigonich :
변수 앞에 넣기만 하면 됩니다.
이 라인은 EA, 지표 또는 스크립트(속성에 #property show_inputs가 있는 경우)가 차트에 첨부될 때 나타나는 속성 창에 표시됩니다.

즉, 내가 당신을 올바르게 이해했다면 사용자가이 주석에 나열 될 값을 선택하도록 단순히 주석을 제안합니까?

그리고 아래 줄에 사용자가 원하는 값을 나타내는 변수 자체를 나타냅니다. 그래서?

[Deleted]  
Chiripaha :

즉, 내가 당신을 올바르게 이해했다면 사용자가이 주석에 나열 될 값을 선택하도록 단순히 주석을 제안합니까?

그리고 아래 줄에 사용자가 원하는 값을 나타내는 변수 자체를 나타냅니다. 그래서?



네, 제가 이해한 한 당신은 그것에 대해 질문했습니다.
 
rigonich :

네, 제가 이해한 한 당신은 그것에 대해 질문했습니다.

설마...

메뉴같은게 있어서 만들고 싶었습니다. bool 변수를 선택할 때와 마찬가지로 false 또는 true입니다.
사용자가 잘 정의된 매개변수 값만 클릭할 수 있도록 합니다. 그가 "잘못된"것으로 불필요한 것을 운전하지 않도록, tk. 이 경우 어드바이저가 올바르게 작동하지 않습니다.

사용자는 나 자신입니다. 왜냐하면 구체적인 변수에 대한 매개변수가 있어야 하는 것을 잊어버릴 수 있습니다.