버그 및 기능 장애 - 페이지 2

 
angevoyageur :

설명서 에 설명된 것과 다른 것을 기대할 필요는 없습니다.

표시기의 버퍼 수는 컴파일러 지시문 을 사용하여 미리 선언해야 합니다. 예를 들면 다음과 같습니다.

#특성   Indicator_buffers 3 // 버퍼 수
#특성   Indicator_plots 2 // 플롯 수

플롯에 사용되는 버퍼의 수는 표시기 유형 에 따라 다릅니다. 이 유형은 동적으로 설정할 수 있습니다. 따라서 컴파일러는 버퍼의 올바른 사용을 결정할 방법이 없습니다. 위의 선언은 1 버퍼의 2개의 플롯, INDICATOR_CALCULATIONS의 세 번째 플롯, 또는 1 버퍼의 1 플롯 및 2 버퍼 중 1 또는...

MQL5는 뛰어난 유연성을 제공합니다. 버퍼를 표시기와 논리적으로 바인딩하는 것은 사용자에게 달려 있습니다. 이것은 버그가 아닙니다 .

나는 이것을 버그라고 부르지 않을 것입니다. 이것은 기능 장애입니다. 신고가 버그인지 기능 장애인지 지금부터 지정하겠습니다.

#pragma 개념을 이해하지만 #pragma를 통해 선언하면

 #property indicator_buffers 3
#property indicator_plots   3

이것은 내가 3개의 버퍼와 3개의 플롯을 사용한다는 것을 의미하지 않으며, 시스템이 예약해야 하는 메모리 및/또는 기타 리소스의 양을 알 수 있도록 리소스 사용량을 최대 3개의 플롯으로 최대 3개의 버퍼로 제한했음을 의미합니다. 내 표시기를 시작할 때.

따라서 내가 선언한 최대값에 관계없이 실제 사용량은 동적 할당을 통해 결정됩니다.
그래서 내가 선언할 때   INDICATOR_CALCULATIONS 버퍼 표시기 버퍼, 그래프에 표시될 것으로 예상하지 않습니다.

 

 
angevoyageur :

어떤 개체를 그리고 있습니까? 처음에는 추세선처럼 보이지만 두 번째에는 앵커 포인트 가 2개뿐입니까?

자석 감도에 대한 설정은 무엇입니까?

이것은 피보나치 확장, 자석 감도가 50으로 설정되어 있습니다. 그러나 20과 같은 더 낮은 값에서도 올바르게 작동하지 않습니다.

추세선과 같은 다른 유형의 개체도 있습니다.

 
graziani :

지 #4

자석(도구->옵션->차트->자석 감도)이 양초와 함께 올바르게 작동하지 않습니다.

선택한 포인트는 일반적인 캔들 포인트(높음/낮음/...)가 아니라 그 사이의 공간에 배치됩니다.

이 외에도 한 점만 움직이면 다른 점들도 같이 이동하지만, 한 점만 이동하고 싶었습니다.

드래그하는 동안이 아니라 앵커 포인트 를 놓을 때만 스냅이 작동한다고 생각합니다. 예를 들어 Ninja에서는 다르게 작동한다는 것을 알고 있지만 이것이 MetaTrader의 일반적인 동작이라고 생각합니다.
Documentation on MQL5: Standard Constants, Enumerations and Structures / Objects Constants / Methods of Object Binding
Documentation on MQL5: Standard Constants, Enumerations and Structures / Objects Constants / Methods of Object Binding
  • www.mql5.com
Standard Constants, Enumerations and Structures / Objects Constants / Methods of Object Binding - Documentation on MQL5
 
RaptorUK :
드래그하는 동안이 아니라 앵커 포인트 를 놓을 때만 스냅이 작동한다고 생각합니다. 예를 들어 Ninja에서는 다르게 작동한다는 것을 알고 있지만 이것이 MetaTrader의 일반적인 동작이라고 생각합니다.
아니요, MT4에서는 올바르게 작동합니다.
 
graziani :

나는 이것을 버그라고 부르지 않을 것입니다. 이것은 기능 장애입니다. 신고가 버그인지 기능 장애인지 지금부터 지정하겠습니다.

#pragma 개념을 이해하지만 #pragma를 통해 선언하면

이것은 내가 3개의 버퍼와 3개의 플롯을 사용한다는 것을 의미하지 않으며, 시스템이 예약해야 하는 메모리 및/또는 기타 리소스의 양을 알 수 있도록 리소스 사용량을 최대 3개의 플롯으로 최대 3개의 버퍼로 제한했음을 의미합니다. 내 표시기를 시작할 때.

따라서 내가 선언한 최대값에 관계없이 실제 사용량은 동적 할당을 통해 결정됩니다.
그래서 내가 선언할 때   INDICATOR_CALCULATIONS 버퍼 표시기 버퍼, 그래프에 표시될 것으로 예상하지 않습니다.

해당 "기능 장애"에 사용한 코드 스니펫을 보여줄 수 있습니까?
 
RaptorUK :
드래그하는 동안이 아니라 앵커 포인트 를 놓을 때만 스냅이 작동한다고 생각합니다. 예를 들어 Ninja에서는 다르게 작동한다는 것을 알고 있지만 이것이 MetaTrader의 일반적인 동작이라고 생각합니다.
아 알겠습니다. X축의 스냅은 MT4에서 움직일 때 작동하지만 MT5에서는 작동하지 않습니다.
 
graziani :

이것은 피보나치 확장, 자석 감도가 50으로 설정되어 있습니다. 그러나 20과 같은 더 낮은 값에서도 올바르게 작동하지 않습니다.

추세선과 같은 다른 유형의 개체도 있습니다.

나는 이런 종류의 도구에 익숙 하지 않지만 작동하는 것 같습니다. 아니요?

자석 감도

 
angevoyageur :
해당 "기능 장애"에 사용한 코드 스니펫을 보여줄 수 있습니까?

좋아요, 우리는 이제 이 "기능 장애"를 보고하는 제 생각에서 벗어나고 있는 것 같습니다.

요점은 SetIndexBuffer(int, double, ENUM_INDEXBUFFER_TYPE 을 사용하여 동적 배열을 정의할 때   ), 논리적으로 가정하는 것이 (문서에 명시되지 않았기 때문에) 다음을 정의함으로써

   SetIndexBuffer ( 0 , all, INDICATOR_DATA );
   SetIndexBuffer ( 1 , up, INDICATOR_DATA );
   SetIndexBuffer ( 2 , down, INDICATOR_CALCULATIONS );

그래프, 표시기 속성 또는 이 표시기를 사용하는 EA 등 어디에서나 세 번째 버퍼의 존재를 볼 수 없습니다.
특히 동적으로 할당된 이 배열의 사용 특성을 정의해야 하는 경우에는 더욱 그렇습니다.
(한번 더 반복하자면 #pragmas를 통해 버퍼와 플롯의 수를 정의한다고 해서 모두 사용한다는 의미는 아닙니다. )

그러나 이것이 사실이 아닌 것 외에도 이것은 숙련 된 프로그래머에게도 분명하지 않은 것 같아서 현재로서는 이와 같은 '기능 장애'를보고하는 것이 의미가 없습니다.

그래서... 이런 일을 신고해야 하나 말아야 하나?

나는 비슷한 것을 염두에두고 한 번 더 시도 할 것이지만 현재 이것은 (내뿐만 아니라) 시간 낭비처럼 보입니다 ;)

 
angevoyageur :

나는 이런 종류의 도구에 익숙 하지 않지만 작동하는 것 같습니다. 아니요?


나는 당신이 첫 번째 시도에서 이 실패를 재현할 수 없다는 것을 믿을 수 없습니다.

감도를 20/50으로 설정하고 추세선, fibo 또는 기타 개체의 기준점 을 이동해 보십시오.

Documentation on MQL5: Standard Constants, Enumerations and Structures / Objects Constants / Methods of Object Binding
Documentation on MQL5: Standard Constants, Enumerations and Structures / Objects Constants / Methods of Object Binding
  • www.mql5.com
Standard Constants, Enumerations and Structures / Objects Constants / Methods of Object Binding - Documentation on MQL5
 
RaptorUK :
아 알겠습니다. X축의 스냅은 MT4에서 움직일 때 작동하지만 MT5에서는 작동하지 않습니다.

네!

그리고 그것은 잘못된 수준에서 스냅합니다!

그리고 다른 점을 이동하면 스냅되지 않은 모든 점도 이동합니다.

내가 이걸 어떻게 처음 알았지?

6개월 전에 MT5를 10분 동안 사용한 후 이러한 짜증나는 행동을 목격했습니다.