MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 1290

 
ANDREY :

게시물에 쓴 내용과 관련하여 EA가 무엇인지 알려주십시오. 더 자세히 알고 싶습니다...
고맙습니다.

EA = 전문가 고문

고문

이 포럼에서 처음으로 누군가가 약어를 이해하지 못하는 것을 보았습니다.

논의 된 내용에 대해 - 전체 요청 구조를 작성하여 MT5에서 주문을 시도하지 않았습니다. SB가 있습니다. 파악한 다음 한 줄로 주문을 여십시오.

trade.Buy( 0.1 );

https://www.mql5.com/ru/articles/481

 
MakarFX :

인쇄


M5로 전환하는 이유는 명확하지 않습니다.

bylot 및 Selllot은 글로벌 또는 로컬입니까?
 
Alexey Viktorov :

더 나은 것은 무엇입니까?

(0 == 0 및 1 == 0) - 조건이 충족되지 않음

(0 + 1 == 0) - 조건도 충족되지 않음

이 특정 예에서 AND는 덧셈과 어떻게 다른가요?

코드가 더 읽기 쉽습니다.
 
Alexey Viktorov :

TF가 전환되면 EA가 다시 시작됩니다.

문제는 이렇게 해결되었습니다

 int     CountOrder( int Order_Type) 
 {
   int Orders= 0 ;
   for ( int a= OrdersTotal ()- 1 ;a>= 0 ;a--)
   {
     if ( OrderSelect (a, SELECT_BY_POS, MODE_TRADES)== false ) continue ;
     if (OrderSymbol()!= _Symbol ) continue ;
     if (Order_Type == OrderType() || Order_Type == - 1 ) Orders++;
   }
   return Orders;
 }
int     OrOfSy;
//+------------------------------------------------------------------+
void OnTimer ( void )
  {
//----
   OrOfSy=CountOrder(- 1 );
   if (OrOfSy!= 0 )
   if ( ChartPeriod ()!= PERIOD_M15 )
     if ( ChartSetSymbolPeriod ( 0 , Symbol (), PERIOD_M15 ))
     { Print ( ChartPeriod ());}
   if (OrOfSy== 0 )
   if ( ChartPeriod ()!= PERIOD_M5 )
     if ( ChartSetSymbolPeriod ( 0 , Symbol (), PERIOD_M5 ))
     { Print ( ChartPeriod ());}
//----
  }
모든 것이 작동합니다)
 
MakarFX :

문제는 이렇게 해결되었습니다

모든 것이 작동합니다)
전역 영역의 OrOfSai.
 
Igor Makanu :

EA = 전문가 고문

고문

이 포럼에서 처음으로 누군가가 약어를 이해하지 못하는 것을 보았습니다.

논의 된 내용에 대해 - 전체 요청 구조를 작성하여 MT5에서 주문을 시도하지 않았습니다. SB가 있습니다. 파악한 다음 한 줄로 주문을 여십시오.

https://www.mql5.com/en/articles/481

이해했다. 고맙습니다.

 
SanAlex :

오류 발생 - 이 줄을 삭제해야 합니다( double const = 0; )

모든 것이 작동할 것입니다



안녕 산 알렉스! 2020.10.29_06:54 GMT+3. 당신의 팁을 주셔서 감사합니다. BrainTrend1Sig.mq4 표시기가 유용할 것입니다. 그렇지 않으면 나 자신이 .mq5 에서 .mq4 로의 코드 번역에 대처할 수 없었습니다. 이 지표를 바탕으로 수익성 있는 Expert Advisor를 만들도록 노력하겠습니다.

 
Valeriy Yastremskiy :
코드가 더 읽기 쉽습니다.

모두에게 똑같지는 않습니다...

 

버튼 누름을 비활성화하는 방법

   //--- обработка кнопки Создать трендовую линию Buy
   if (sparam== "Button 3" )
      {
       if (trigger_greateB== true )
         {
         Sleep ( 100 );
         trigger_greateB= false ;
         ObjectSetInteger ( 0 , "Button 3" , OBJPROP_STATE , true );
         //--- Определяем координаты
         ChartXYToTimePrice ( 0 ,xn,yn+ 20 ,window,dt_1,price_1);
         ChartXYToTimePrice ( 0 ,xn+ 100 ,yn- 20 ,window,dt_2,price_2);
         //--- Создаем трендовую линию Buy
         TrendCreate( 0 ,( "OrderBuy: " + Symbol ()), 0 ,dt_1,price_1,dt_2,price_2,ColorUP, 0 , 1 , false , true , false , false , 0 );
         return ;
         }
      }

누르는 것을 차단해야 하는 경우

 if (ObjectGet( "OrderBuy: " + Symbol (),OBJPROP_PRICE1)!= 0 )
 
MakarFX :

버튼 클릭을 차단하는 방법을 알려주세요

누르는 것을 차단해야 하는 경우

조건에 추가하면 됩니다.

 if (sparam== "Button 3" && ObjectGet( "OrderBuy: " + Symbol (),OBJPROP_PRICE1) != 0 )

또는 == 0일 가능성이 더 큽니다. 또는 이름으로 개체를 검색하는 것이 더 낫습니다. 그러한 개체가 없으면 생성하십시오. 버튼을 눌렀는지 안 눌렀는지가 중요하지 않습니다.