목발을 짚고 나왔다.) 시간이 걸리는 수직선 을 수동으로 드래그 한 후 표시기를 업데이트해야했습니다. 오브젝트 드래깅 이벤트 기능을 사용하고 그 안에 TF를 원래대로 되돌리는 기능을 넣었습니다. 어떤 이유로 업데이트가 몇 초 정도 지연되어 트리거됩니다. TF를 전환하는 기능이나 무언가가 너무 느리게 작동하여 이해하지 못했습니다.
khorosh : 목발을 짚고 나왔다.) 시간이 걸리는 수직선 을 수동으로 드래그 한 후 표시기를 업데이트해야했습니다. 오브젝트 드래깅 이벤트 기능을 사용하고 그 안에 TF를 원래대로 되돌리는 기능을 넣었습니다. 어떤 이유로 업데이트가 몇 초 정도 지연되어 트리거됩니다. TF를 전환하는 기능이나 무언가가 너무 느리게 작동하여 이해하지 못했습니다.
이 기능은 비동기식입니다. 이벤트 큐에 명령을 넣은 결과만 반환합니다.
즉각적인 업데이트를 위해 차트 전환 명령 후 ChartRedraw() 명령을 실행합니다.
물론 일반적으로 잘못된 접근 방식입니다. 선이 이동된 후에만 차트를 업데이트해야 하는 경우 표시기 재계산 주기는 OnCalculate()가 아니라 ChartEvent()에서 호출되어야 합니다. 새 데이터가 있는 라인 재계산 주기(일부 데이터에는 라인이 필요합니까?)
아니면 표시기가 단순히 올바르게 만들어지지 않고 현재 데이터의 0 막대를 업데이트하지 않고 이를 깼습니까?
곡선 표시기를 편집합니다. 그는 상황에 맞는 메뉴의 명령에서 발생하는 완전한 재계산을 통해서만 당신을 위해 선을 그릴 수 있습니다.
mql4에도 있습니다.
고맙습니다.
목발을 짚고 나왔다.) 시간이 걸리는 수직선 을 수동으로 드래그 한 후 표시기를 업데이트해야했습니다. 오브젝트 드래깅 이벤트 기능을 사용하고 그 안에 TF를 원래대로 되돌리는 기능을 넣었습니다. 어떤 이유로 업데이트가 몇 초 정도 지연되어 트리거됩니다. TF를 전환하는 기능이나 무언가가 너무 느리게 작동하여 이해하지 못했습니다.
이 기능은 비동기식입니다. 이벤트 큐에 명령을 넣은 결과만 반환합니다.
즉각적인 업데이트를 위해 차트 전환 명령 후 ChartRedraw() 명령을 실행합니다.
물론 일반적으로 잘못된 접근 방식입니다. 선이 이동된 후에만 차트를 업데이트해야 하는 경우 표시기 재계산 주기는 OnCalculate()가 아니라 ChartEvent()에서 호출되어야 합니다. 새 데이터가 있는 라인 재계산 주기(일부 데이터에는 라인이 필요합니까?)
아니면 표시기가 단순히 올바르게 만들어지지 않고 현재 데이터의 0 막대를 업데이트하지 않고 이를 깼습니까?
누군가 MT5에서 어드바이저 코드를 수정하도록 도와줄 수 있습니까?
매뉴얼을 읽었지만 컴파일할 때 2개의 경고를 물리칠 수 없습니다.
'xxx' 선언은 전역 선언을 숨깁니다.
그리고
유형 변환으로 인한 데이터 손실 가능성
방금 바보같이 전역 변수의 이름을 수정하고 유형을 정렬했습니다.
게으름을 극복하기 위해 10,000,000 루블을 지불 할 수 있습니다.
방금 바보같이 전역 변수의 이름을 수정하고 유형을 정렬했습니다.
게으름을 극복하기 위해 10,000,000루블을 지불할 수 있습니다.
정말 감사합니다.
어떻게 고쳤는지 보여드리기 부끄럽습니다)
int CountTrades(긴 PositionID1)
이 기능은 비동기식입니다. 이벤트 큐에 명령을 넣은 결과만 반환합니다.
즉각적인 업데이트를 위해 차트 전환 명령 후 ChartRedraw() 명령을 실행합니다.
물론 일반적으로 잘못된 접근 방식입니다. 선이 이동된 후에만 차트를 업데이트해야 하는 경우 표시기 재계산 주기는 OnCalculate()가 아니라 ChartEvent()에서 호출되어야 합니다. 새 데이터가 있는 라인 재계산 주기(일부 데이터에는 라인이 필요합니까?)
아니면 표시기가 단순히 올바르게 만들어지지 않고 현재 데이터의 0 표시줄을 업데이트하지 않고 이를 깼습니까?
표시기는 마지막으로 계산되지 않은 막대를 계산합니다. 그리고 수직을 드래그한 후 수직의 새로운 시간을 읽은 후 완전히 다시 계산해야 합니다. 여기에서 그것에 대해 쓰고 작동 방식에 대한 스크린샷을 게시했습니다.
감사합니다. 아이디어를 시도해 보겠습니다. 일반적으로 나는 지표에 약하고 항상 고문에 주로 종사했습니다.
이 기능은 비동기식입니다. 이벤트 큐에 명령을 넣은 결과만 반환합니다.
즉각적인 업데이트를 위해 차트 전환 명령 후 ChartRedraw() 명령을 실행합니다.
물론 일반적으로 잘못된 접근 방식입니다. 선이 이동된 후에만 차트를 업데이트해야 하는 경우 표시기 재계산 주기는 OnCalculate()가 아니라 ChartEvent()에서 호출되어야 합니다. 새 데이터가 있는 라인 재계산 주기(일부 데이터에는 라인이 필요합니까?)
아니면 표시기가 단순히 올바르게 만들어지지 않고 현재 데이터의 0 표시줄을 업데이트하지 않고 이를 깼습니까?
조언해주신대로 했습니다. 모든 것이 훌륭했습니다. 이제 드래그 직후 표시기가 완전히 다시 그려집니다. 다시 한번 감사합니다.
조언해주신대로 했습니다. 모든 것이 훌륭했습니다. 이제 드래그 직후 표시기가 완전히 다시 그려집니다. 다시 한번 감사합니다.
별말씀을요. 그러나 그는 OnCalculate() 를 그려야 합니까?
결국 차트에 던졌을 때 그는 여전히 선의 움직임에 대해 알지 못하지만 선을 그려야합니다.
별말씀을요. 그러나 그는 OnCalculate()에서 그려야 합니까, 안 합니까?
결국 차트에 던졌을 때 그는 여전히 선의 움직임에 대해 알지 못하지만 선을 그려야합니다.
지표가 차트에 배치되면 init()에서 수직이 생성되고 일부 시간이 초기에 여기에 설정됩니다(예: Time[10]). OnChartEvent() 및 OnCalculate()에서 코드를 복제했습니다. OnChartEvent에서만 모든 막대에 대해 재계산을 수행했습니다.
지표가 차트에 배치되면 init()에서 수직이 생성되고 일부 시간이 초기에 여기에 설정됩니다(예: Time[10]). OnChartEvent() 및 OnCalculate()에서 코드를 복제했습니다. OnChartEvent에서만 모든 막대에 대해 재계산을 수행했습니다.
예를 들어 필요한 형식 매개 변수로 Refresh() 함수를 만들고 필요할 때 호출하는 것이 더 좋지 않습니까?
그런데 날짜 범위와 함께 Bars()를 사용하여 OnCalculate() 함수 외부의 표시기에서 Rates_total을 가져올 때 표시기가 정지될 수 있습니다.
거래, 자동 거래 시스템 및 거래 전략 테스트에 관한 포럼
iBarShift와 유사함
니콜라이 셈코 , 2018.04.05 23:47
지금은 이 옵션 을 보완하고 싶지만 이미 서비스 데스크 구독을 취소한 Bars 기능 정지 버그 를 우회하도록 하고 있습니다.
이 버그의 핵심은 Bars 함수의 start_time 과 stop_time 이 모두 같은 막대 안에 있거나 미래에 있는 경우(0 막대 오른쪽), 이 함수는 10초 이상 멈춥니다.
아마도 조금 후에 나는 여전히 정확한 더 빠른 버전을 만들 것이지만 더 복잡합니다.