찻주전자의 질문 - 페이지 217

 
G001 :
바르게. 이것은 조언자가 작동을 멈출 때 프로그래밍 방식으로 찾는 방법에 대한 나의 요청이었습니다.
:))) 응.

그리고 그것을 "모두에게 감사합니다. 문제를 해결했습니다."라고 부릅니다.

결정한 것이 아니라 직접 만든 것입니다.)

 
G001 : 나도 비동기식 옵션을 쓸까 생각했는데 브로커가 거래를 계산하지 않을런지 모르겠다.
뭐라고요? OrderSendAsync() 함수 사용으로 인해 "브로커가 거래를 계산하지 않을" 가능성이 있습니까?
 
G001 :

테스트에 무한 루프를 사용하지 마십시오. 대부분 이것이 문제입니다.
 
sergeev :
:))) 응.

그리고 그것을 "모두에게 감사합니다. 문제를 해결했습니다."라고 부릅니다.

결정한 것이 아니라 직접 만든 것입니다.)

글쎄, 나는 다른 조언을받지 못했습니다. :)
지금까지는 이것이 유일한 작동 옵션입니다.
그리고 5년 동안 실생활에서 많은 "기적"을 보았고 실생활의 모든 "기적"에 대한 해결책이 우리 가까이에 있다고 생각하지 않습니다.
 

갠적으로 아쉽네요 2가지 기능을 가진 어드바이저를 만들려고 합니다 (포지션 설정과 TP나 SL로 닫았다가 다시 오픈 포지션 인데 반대 포지션과 같이 열어야 함)

그런 간단한 고문조차도 작동하지 않으며 포럼에서도 어려움을 물었습니다 (((

 
G001 :
글쎄, 나는 다른 조언을받지 못했습니다. :)

받았지만 무시합니다. ;)

인쇄물과 주석을 주기에 넣지 말고 잡지를 주지 마십시오.

터미널에서 죄를 짓지 말고 여기서 이야기해야 합니다.

Клуб Телепатов - MQL4 форум
  • www.mql5.com
Клуб Телепатов - MQL4 форум
 
tol64 : 테스트에 무한 루프를 사용하지 마십시오. 대부분 이것이 문제입니다.

코드의 이 부분에 주의하십시오.

      request.action = TRADE_ACTION_PENDING ;
      request.magic = Magic;
      request.symbol = Symbol ();
      request.volume = Volume();
      request.price= NormalizeDouble (Ask+OrderDrive* _Point , _Digits );
      request.sl = NormalizeDouble (request.price - StopLoss* _Point , _Digits );
      request.tp = NormalizeDouble (request.price + TakeProfit* _Point , _Digits );
      request.type= ORDER_TYPE_BUY_STOP ;
      request.type_filling= ORDER_FILLING_RETURN ;
      request.comment=Coments;
       int ResBull = - 1 ;
       while (ResBull < 1 )
      {
         if ( OrderCheck (request,check))
          {
          ResBull = OrderSend (request,result);
          }
         if (( MQL5InfoInteger ( MQL5_TESTING )|| MQL5InfoInteger ( MQL5_OPTIMIZATION ))) break ;
      }
       Print ( "BuyStop Order Set " );
       if (UseSound == true ){ PlaySound (OrderSound);}
       Print (ResultRetcodeDescription(result.retcode));

어떤 단계에서 OrderCheck (요청, 확인) 함수가 false를 반환하면 어떻게 됩니까(저자에게 질문)? 예를 들어 request.volume에 잘못된 볼륨 을 지정했기 때문입니다.

 
Yedelkin :

코드의 이 부분에 주의하십시오.

어떤 단계에서 OrderCheck (요청, 확인) 함수가 false를 반환하면 어떻게 됩니까(저자에게 질문)? 예를 들어 request.volume에 잘못된 볼륨을 지정했기 때문입니다.

tol64 를 보고 올바르게 알아차렸을 수 있습니다. 고맙습니다.
영원한 순환을 질적으로 확인하고 제거하는 방법에 대한 옵션을 알려주십시오.
 
G001 :
글쎄, 나는 다른 조언을받지 못했습니다. :)
지금까지는 이것이 유일한 작동 옵션입니다.
그리고 5년 동안 실생활에서 많은 "기적"을 보았고 실생활의 모든 "기적"에 대한 해결책이 우리 가까이에 있다고 생각하지 않습니다.
그리고 이 기사 에서처럼 주문을 보내기 위해 CTrade 클래스를 시도한다면 .
 
G001 : 영원한 루프를 질적으로 확인하고 제거하는 방법에 대한 옵션을 알려주세요.

많은 옵션이 있을 수 있습니다. 반복 횟수를 제한하고, 루프 체크인을 전혀 거부하고, 응답 코드를 분석하는 등 그런데 어떤 이유로 서버 가 거래 요청을 거부하는 경우에도 무한 루프가 발생합니다. 저것들. 여기에서 검사 논리를 완전히 변경할 필요가 있습니다.

나 자신도 반환 코드에 대해 두 번 이상 확인하지 않으며 주문에 실패하면 새 틱이 도착할 때까지 기다립니다.

Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура торгового запроса
Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура торгового запроса
  • www.mql5.com
Стандартные константы, перечисления и структуры / Структуры данных / Структура торгового запроса - Документация по MQL5