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

 
Vitaly Muzichenko :

잘 작동합니다!

스크린샷에서 볼 수 있듯이 두 위치, 즉 11번째 막대에서 후자를 선택했습니다.


확인 코드

포지션 진입 조건을 변경하기로 하고 한도를 낮음[2]으로 설정하고 작동했지만 오늘 첫 번째 호출에서와 같이 조건이 작동하지 않으면 문제가 조건에 있음을 의미합니다. 함수 호출 전에 자신

 
Вадим Мотеюнас :

포지션 진입 조건을 변경하기로 하고 한도를 낮음[2]으로 설정 하고 작동했지만 오늘 첫 번째 호출에서와 같이 조건이 작동하지 않으면 문제가 조건에 있음을 의미합니다. 함수 호출 전에 자신

포지션 진입(매도, 매수)이 아니라 오더를 설정한 것은 바로 당신이었습니다.

좋아, 알아냈어 - 좋은 뜻이야.

 
Vitaly Muzichenko :

포지션 진입(매도, 매수)이 아니라 오더를 설정한 것은 바로 당신이었습니다.

좋아, 알아냈어 - 좋은 뜻이야.

처음에는 입력 조건이 if ( Open [ 2 ]> Close [ 2 ] && Open [ 1 ]> Close [ 1 ] && Close [ 1 ]< Low [2]

그런 다음 이 함수를 호출하여 막대 인덱스를 반환하고 이제 방금 제거하고 OrderSend 에 Low[2]를 입력하면 작동했습니다.

네, 그래도 이것에 하루를 보낸 것이 헛되지 않았습니다. 나는 약간의 땅을 벗어났습니다.

 
모든 것, 피드백을 주신 모든 분들 덕분에 이 문제를 해결했습니다.
 
if(takelimit=OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))
      Print(takelimit,GetLastError());//здесь возвращает число 11, получается ошибка код 11, но не нашел расшифровку нигде?
      {if(iBarShift(Symbol(),0,OrderOpenTime())==1)
        
      deletelimit=OrderDelete(ticket);
      if(!deletelimit)
         Comment(GetLastError());
         }
 
Вадим Мотеюнас :

아마도 1과 1?/즉. 참 및 오류 코드 1

ERR_NO_RESULT 하나 오류는 없지만 결과를 알 수 없음
 bool takelimit ;

if (takelimit= OrderSelect (ticket, SELECT_BY_TICKET , MODE_TRADES ))
       Print ( string (takelimit) +"   :", GetLastError ()); //здесь возвращает число 11, получается ошибка код 11, но не нашел расшифровку нигде?
      { if ( iBarShift ( Symbol (), 0 , OrderOpenTime ())== 1 )
        
      deletelimit= OrderDelete (ticket);
       if (!deletelimit)
         Comment ( GetLastError ());
         }
 
Вадим Мотеюнас :

모든 코드가 잘못되었습니다.

 bool takelimit;

if ( takelimit? = OrderSelect ( ticket , SELECT_BY_TICKET , MODE_TRADES ))
       Print ( string (takelimit)+ "   :" , GetLastError ()); //здесь возвращает число 11, получается ошибка код 11, но не нашел расшифровку нигде?
      { if ( iBarShift ( Symbol (), 0 , OrderOpenTime ())== 1 ) // <<< что это, почему сравнивать с единицей? OrderOpenTime () может вернуть "1"???
        
      deletelimit= OrderDelete (ticket);
       if (!deletelimit)
         Com
 
Vitaly Muzichenko :

모든 코드가 잘못되었습니다.

그것은 거기 까지 바 번호를 확인합니다 ...

 int ticket;

void Fn()
  {
   ResetLastError ();
   if (! OrderSelect (ticket, SELECT_BY_TICKET , MODE_TRADES )){ Print ( GetLastError ());}
   else
     {
       if ( iBarShift ( Symbol (), 0 , OrderOpenTime ())== 1 && ! OrderDelete (ticket)){ Comment ( GetLastError ());}
     }
  }
 
Nikolay Gaylis :

그것은 거기까지 바 번호를 확인합니다 ...

예, 괄호를 눈치채지 못했습니다.

 
Nikolay Gaylis :

그것은 거기까지 바 번호를 확인합니다 ...

니콜라스 게일리스 :

아마도 1과 1?/즉. 참 및 오류 코드 1

ERR_NO_RESULT 하나 오류는 없지만 결과를 알 수 없음

첫 번째 변수가 bool 유형이고 GetLastError가 필요하지 않기 때문에 Print (takelimit, GetLastError ())라는 문구는 두 개의 값을 반환합니다. 쉼표가 있습니까? GetLastError는 GetLastError가 호출되었을 때 코드의 마지막 오류를 반환합니까?

사유: