mql5 언어의 특징, 미묘함 및 작업 방법 - 페이지 17

 
결합기 :
어, 당신이 어쨌든 그것을 볼 수 없다면 왜?

표시기를 표시하지 않으려면 이러한 옵션을 생략할 수 있습니다.

그리고 이전 코드와의 호환성은 깨지지 않습니다. 테스트 시에는 항상 표시기 가 표시됩니다.‌

 
슬라바 :

표시기 핸들(계산부)을 통한 표시 속성(도면부) 설정이 불가능하기 때문입니다. 버그는 한 가지 방식으로 작성되었지만 완전히 다른 방식으로 작동하는 경우입니다.

여기에는 다른 접근 방식이 필요합니다. ChartIndicatorXXX 기능 그룹에서와 같이 짧은 이름으로 표시기에 액세스합니다. ChartIndicatorSetInteger ( chart_id,sub_window,indicator_name ,PROP_COLOR,mod,value)와 같은 것

우리는 이미 그것에 대해 생각했지만 아직까지 손이 닿지 않았습니다‌

프로그래밍 방식으로 전달되는 표시기를 위한 것이라면 선택한 항목을 표시기 핸들로 교체하는 것이 좋지 않을까요?
 

거래, 자동 거래 시스템 및 거래 전략 테스트에 관한 포럼

mql5 언어의 특징, 미묘함 및 작업 방법

fxsaber , 2017.02.25 16:02

   static bool HistoryDealSelect ( MqlTradeResult &Result )
  {
     if ((Result.deal == 0 ) && (Result.order != 0 ))
    {
       if (:: HistorySelectByPosition (:: HistoryOrderGetInteger (Result.order, ORDER_POSITION_ID )))
         for ( int i = :: HistoryDealsTotal () - 1 ; i >= 0 ; i--)
        {
           const ulong DealTicket = :: HistoryDealGetTicket (i);

           if (Result.order == :: HistoryDealGetInteger (DealTicket, DEAL_ORDER ))
          {
            Result.deal = DealTicket;

             break ;
          }
        }
    }

     return (:: HistoryDealSelect (Result.deal));
  }
   // Учтены MT5-нюансы: Result.deal == 0
   static bool OrderSendSync( const MqlTradeRequest &Request, MqlTradeResult &Result )
동기화는 더 이상 관련이 없습니다. 수정 Result.deal을 담당하는 부분만 선택했습니다.
 
fxsaber :
동기화는 더 이상 관련이 없습니다. Result.deal 수정을 담당하는 부분만 선택했습니다.
그리고 "수정 Result.deal"은 무엇입니까?
 
알렉세이 빅토로프 :
프로그래밍 방식으로 전달되는 표시기를 위한 것이라면 선택한 항목을 표시기 핸들로 교체하는 것이 좋지 않을까요?
하지 않는 것이 좋습니다. 아키텍처를 변경하지 않고는 불가능하기 때문입니다. 그 이유를 아주 자세히 설명했습니다.
 
Artyom Trishkin :
그리고 "수정 Result.deal"은 무엇입니까?

거래, 자동 거래 시스템 및 거래 전략 테스트에 관한 포럼

오류, 버그, 질문

fxsaber , 2017.02.23 15:34

SD에서

결과 거래의 티켓 완료는 보장되지 않습니다. 채우기 여부는 도구의 실행 모드와 특정 서버의 설정에 따라 다릅니다.

0이 아닌 Result.deal에 베팅한 사람 - 조치를 취하십시오.

 
로프필드 :

표시기를 표시하지 않으려면 이러한 옵션을 생략할 수 있습니다.

표시해야 하는 경우 매개변수에서 이러한 설정을 지정할 수 있습니다.
 
fxsaber :

음... 0이 아닌 Result.deal에 베팅하는 것이 불가능하다는 것을 알았습니다. 그러면 이 줄은 무엇을 말합니까?‌

 // Учтены MT5-нюансы: Result.deal == 0

‌그들은 어디에 속합니까?

 
Artyom Trishkin :

음... 0이 아닌 Result.deal에 베팅하는 것이 불가능하다는 것을 알았습니다. 그러면 이 줄은 무엇을 말합니까?‌

‌그들은 어디에 속합니까?


OrderSendSync는 오버로드된(위 참조) HistoryDealSelect 를 호출합니다.
 

fxsaber :

 static bool OrderSendSync( const MqlTradeRequest &Request, MqlTradeResult &Result )

동기화는 더 이상 관련이 없습니다. Result.deal 수정을 담당하는 부분만 선택했습니다.

정적 입니까?