오류, 버그, 질문 - 페이지 1392

 
Ilya Malev :

...

일반적으로 여기에서는 OnTimer에서 OnCalculate에 대한 호출이 작동하는 곡선으로 표시됩니다)

시계열에 올바른 값의 전송을 추가해야 합니다.

기사에서는 이 예만 보여줍니다. )

다음은 동일한 방법을 사용한 테스트의 또 다른 예입니다. MQL5 레시피 - 가격 다이버전스를 분석하기 위한 다중 통화 지표 개발 >>>

 
Karputov Vladimir :

OnCalculate()를 종료하기 전에 count 변수를 늘려야 합니다. 이 경우 이 변수는 OnCalculate의 모든 항목을 올바르게 계산합니다.

거기에서 모든 것이 아니라 Ichimoku의 계산까지만 계산해야했습니다. 이 모든 시간 동안 count는 0보다 크거나 같으며 -1입니다. 그것은 정말 중요하지 않습니다. 중요한 것은

1) 최초 실행 시 표시기는 1회(OnCalculate) 실행되었으며 "업데이트" 버튼을 클릭하지 않으면 다음 틱(주말 및 공휴일에는 최대 며칠)까지 실행되지 않습니다.

2) 이 첫 번째 호출 동안 Ichimoku 지표는 계산할 시간이 없었습니다(더 복잡한 지표는 말할 것도 없고)

3) OnCalculate 대신 OnTimer를 사용하는 경우(또는 OnTimer에서 OnCalculate를 호출하는 경우) 사용자는 자체적으로 빌드되는 표시기를 시작할 수 있습니다. 그렇지 않으면 새로 고침(아마도 여러 번)을 클릭하거나 다음 틱을 기다려야 합니다. 동일한 MT4와 비교하면 명백한 불편입니다.

아나톨리 카자르스키 :
간단한 지표에서는 아주 정상입니다. 그러나 더 복잡한 것들에서는 어떤 이유로 때때로 멈춥니다. )
제 생각에는 가장 쉬운 방법은 OnCalculate 대신 OnTimer를 사용하는 것입니다.
 
Ilya Malev :

거기에서 모든 것이 아니라 Ichimoku의 계산까지만 계산해야했습니다. 이 모든 시간 동안 count는 0보다 크거나 같으며 -1입니다. 그것은 정말 중요하지 않습니다. 중요하다

...

아이디어는 사용자가 OnCalculate의 항목 수를 보는 것입니다. 동시에 OnCalculate 자체에서 CopyBuffer 연산의 결과가 0 이상 이면 버퍼에 값을 성공적으로 수신했다는 메시지가 표시됩니다. 결과적으로 OnCalculate에서 성공한 항목의 수를 시각적으로 볼 수 있습니다.
 
Karputov Vladimir :
아이디어는 사용자가 OnCalculate의 항목 수를 보는 것입니다. 동시에 OnCalculate 자체에서 CopyBuffer 연산의 결과가 0 이상 이면 버퍼에 값을 성공적으로 수신했다는 메시지가 표시됩니다. 결과적으로 OnCalculate에서 성공한 항목의 수를 시각적으로 볼 수 있습니다.

이해합니다. 우리는 이 예에서 조금 더 나아갔습니다. 사용하고 정리하여 본론으로 돌아왔습니다. 예제는 첫 번째 실행부터 계산이 주말에 발생하지 않음을 확인했습니다. 암튼 확인했습니다. 계속해서 "업데이트"를 클릭해야 합니다. 저는 개인적으로 이것이 사용자에게 용납될 수 없다고 생각합니다. 그래서 OnTimer를 통해 해보겠다.

 

OnCalculate에서 시계열이 준비될 때까지 기다리는 것은 불가능합니다. 모든 것이 중단됩니다. 따라서 준비되지 않은 경우 밀리초 동안 EventTimer를 만들고 OnTimer에서 준비 상태를 확인합니다. 시계열이 준비되는 즉시 OnCalculate를 호출 하고 KillTimer를 통해 타이머를 종료합니다.

제 질문은 이제 필요한 모든 시계열이 준비되었는지 여부를 100% 확신할 수 있습니까?

 

다른 표시기에서 호출된 표시기의 OnTimer가 전혀 실행되지 않는 것 같습니다. 따라서 OnTimer를 통해 업데이트할 수 없습니다. MT4에 비해 프로세스에서 "업데이트" 차트를 수십 번 더 클릭해야 하는 것 같습니다.

도구 모음에도 이 옵션이 없고 바로 가기 키도 없기 때문에 메뉴에서 마우스로 매번 이 작업을 수행해야 하는 번거로움이 있습니다. 그리고 표시기는 1초보다 훨씬 긴 "무거운" 것입니다.

 
Ilya Malev :

... 그리고 1초보다 훨씬 긴 "무거운" 표시기가 있습니다.

"무거운"지표 문제에 직면했습니다. 링크를 순서대로 살펴보십시오. 관심이 있을 것입니다.

1. 무거운 표시기 문제를 보여주는 비디오 . 요점은 심볼당 하나의 무거운 표시기가 이 심볼에 대한 모든 Expert Advisor의 작업을 느리게 한다는 것입니다. 다른 채팅에서도! 무거운 지표는 악입니다 :)

2. 문제 해결을 위한 설명 및 옵션이 포함된 주제

3. 시장 내 문제 해결

 
Andrey Miguzov :

"무거운"지표 문제에 직면했습니다. 링크를 순서대로 살펴보십시오. 관심이 있을 것입니다.

나는 Expert Advisors와 지표 사이에 데이터를 교환할 필요가 없으며 지표 자체는 다소 "무거워도" 처음에 전체 이력을 계산하는 순간에만 비교적 긴 계산을 수행합니다.

내가 지금 가지고 있는 문제 는 OnCalculate 처음 시작할 때 이 표시기에 사용된 다른 모든 표시기의 계산을 기다리는 것이 불가능하지만 OnCalculate 자체는 예를 들어 존재하지 않는 다음 틱에서만 다시 호출된다는 것입니다. 주말에 전혀. OnTimer는 OnCalculate 대신(또는 함께) 사용할 수 없습니다. 왜냐하면 OnTimer는 사용자가 호출하지 않은 표시기에서는 전혀 호출되지 않지만 예를 들어 iCustom을 사용하여 다른 표시기에서 호출되기 때문입니다(지금까지 내 테스트에 따르면, 그것은 그렇게 밝혀졌습니다). 표시기가 출시 후 자동으로 사용된 모든 표시기의 계산을 기다리고 사용자 개입 없이 정보를 제공할 수 있도록 솔루션을 찾고 싶습니다(차트의 드롭다운 메뉴에서 "업데이트" 버튼을 정기적으로 누르지 않고) , 새 틱의 도착 빈도가 이에 충분하지 않은 경우).

 
Ilya Malev :

나는 Expert Advisors와 지표 사이에 데이터를 교환할 필요가 없으며 지표 자체는 다소 "무거워도" 처음에 전체 이력을 계산하는 순간에만 비교적 긴 계산을 수행합니다.

내가 지금 가지고 있는 문제 는 OnCalculate 처음 시작할 때 이 표시기에 사용된 다른 모든 표시기의 계산을 기다리는 것이 불가능하지만 OnCalculate 자체는 예를 들어 존재하지 않는 다음 틱에서만 다시 호출된다는 것입니다. 주말에 전혀. OnTimer는 OnCalculate 대신(또는 함께) 사용할 수 없습니다. 왜냐하면 OnTimer는 사용자가 호출하지 않은 표시기에서는 전혀 호출되지 않지만 예를 들어 iCustom을 사용하여 다른 표시기에서 호출되기 때문입니다(지금까지 내 테스트에 따르면, 그것은 그렇게 밝혀졌습니다). 표시기가 출시 후 자동으로 사용된 모든 표시기의 계산을 기다리고 사용자 개입 없이 정보를 제공할 수 있도록 솔루션을 찾고 싶습니다(차트의 드롭다운 메뉴에서 "업데이트" 버튼을 정기적으로 누르지 않고) , 새 틱의 도착 빈도가 이에 충분하지 않은 경우).

이런 식으로 작업을 설정하면 실제로 그러한 필요가 없습니다.

그러나 지표를 생성하고, 지표로부터 데이터를 수신하고, 이 데이터를 처리하고, 결과를 지표 시각화기로 전송할 전문가를 생성할 수 있습니다. 그러면 귀하가 설명한 모든 문제가 없을 것입니다. 그리고 다른 많은 사람들도...

솔루션은 그다지 아름답지는 않지만 설명된 문제를 제거하는 데 도움이 됩니다.

 

안녕하세요, MT5에서 라이브 계정 을 개설할 때 회사 직원이 몇 시에 전화를 걸어 계좌 개설 절차를 완료해야 하는지 알려주세요.

사유: