Предпосылки очень просты -- таймер обычно используется для синхронизации (ждем расчета данных) или обсервинга (зацикленный таймером эксперт, имхо, будет гораздо более адекватным).
나는 설명이 여전히 필요하다고 생각하고 거기에 답이 있지만 번져 있고 내 질문에 대한 힌트조차 없습니다.
대기열의 길이나 건너뛸 이벤트에 대한 정확한 표시가 없습니다("일부 이벤트를 건너뛰게 됨"은 무엇을 의미합니까?), 새 부분 또는 이미 대기열에 있는 부분은 무엇입니까? 새로운 이벤트가 대기열에 있는 이벤트보다 더 중요할 수도 있고 그 반대일 수도 있기 때문에 논리는 무력합니다.
말씀하신 대로 하려고 했지만 문제가 남아 있습니다. 보류 중인 주문 이 먼저 삭제된 다음 동일한 주문을 삭제하라는 또 다른 요청이 전송됩니다. 다음은 로그에 있는 줄의 예입니다.
2011.05.12 16:42:57 거래 '726238' : 주문 취소 #4388299 1.41700에서 0.02 EURUSD 매수 정지 완료 - 주문이 성공적으로 삭제됨 2011.05.12 16:42:57 거래 '726238' : 주문 취소 #4388299 1.41700에서 0.02 EURUSD 매수 정지 - 다른 요청 보내기 2011.05.12 16:42:58 Trades '726238' : 주문 취소 실패 #4388299 buy 0.00 at 0.00000 [잘못된 요청] - 어떤 이유로 이미 구매했지만 구매 중지였습니다
이것은 매번 발생하는 것은 아니지만 가끔 발생하며 Expert Advisor의 작동에 영향을 미치지 않습니다. 빈 요청으로 거래 서버를 로드하지 않고 모든 것을 올바르게 수행하고 문제를 파악하고 싶습니다.
답변과 기꺼이 도와주셔서 감사합니다.
------------------ 나는 내 의견을 표현하려고 노력할 것이다. 특정 마법이나 다른 것으로 주문을 삭제해도 문제의 본질은 바뀌지 않으며 주문을 따라 또는 가로로 정렬됩니다. 일반적으로 주문을 기억한 다음 티켓으로 삭제하면 오류가 주기적으로 나타납니다.
내가 상상하는 것처럼, 서버는 로그의 메시지와 서버 응답의 retcode에서 알 수 있듯이 실제로 주문을 삭제했습니다. 그러나 터미널은 아직 그것에 대해 알지 못합니다. 그에게 명령은 여전히 작동 중이고(또는 알고 있지만 조언자에게 오래된 정보를 제공하지만 삭제 주문은 수표를 통과하지 못함) 조언자는 다음 틱에서 삭제 요청을 다시 보내 논리적으로 오류를 수신합니다. 서버.
서버가 구매 중지 주문을 그냥 구매로 재인증했다는 사실은 분명히 서버 오류이며 요청 오류의 경우 이러한 주문을 구별하지 않습니다. 개발자를 위한 메모입니다.
반복되는 요청을 어떻게 피할 수 있습니까? 두 가지 방법밖에 없다고 생각합니다.
1. 삭제 성공 후 마지막 기록을 분석하고 삭제된 주문이 표시될 때까지 기다린 다음 계속합니다.
2. 삭제가 완료된 후 지연 시간(예: 2초)을 입력하십시오. 하나는 충분하지 않을 수 있습니다.
또한 보류 중인 주문뿐만 아니라 시장 주문 및 포지션 변경 시에도 유사한 상황이 발생한다고 덧붙이고 싶습니다. 이것은 아주 드물게 발생하며 데모 계정에서 장기 거래 중에만 알 수 있으며 당연히 테스터에는 표시되지 않습니다. 또한 포지션 변경 후, 변경되기 전의 마진 레벨이 반환되어 다른 계정 매개변수가 확인되지 않은 경우가 발생합니다.
У вас в mql4 стоит проскальзывание 50, а в mql5 10. Попробуйте поставить одинаковое проскальзывание возможно ситуация выровняется тк много приказов с таким слипажем может просто попадать на реквот.
나는 설명이 여전히 필요하다고 생각하고 거기에 답이 있지만 번져 있고 내 질문에 대한 힌트조차 없습니다.
대기열의 길이나 건너뛸 이벤트에 대한 정확한 표시가 없습니다("일부 이벤트를 건너뛰게 됨"은 무엇을 의미합니까?), 새 부분 또는 이미 대기열에 있는 부분은 무엇입니까? 새로운 이벤트가 대기열에 있는 이벤트보다 더 중요할 수도 있고 그 반대일 수도 있기 때문에 논리는 무력합니다.
따라서 이 점을 명확히 하는 것이 좋습니다.
1) " 공통 대기열에 추가 " - 문서의 오류입니다. 실제로 줄이 많습니다. 현재 각 mql5 프로그램 과 각 차트에는 자체 대기열이 있습니다. 큐의 크기는 다르며 일반적으로 작지 않습니다. 올바르게 작성된 프로그램에 대한 큐의 오버플로는 거의 없습니다. 각 대기열의 정확한 크기, 대기열 수 및 내부 구현에 대한 기타 자세한 설명은 문서화하지 않습니다. 그 이유는 매우 분명합니다. 내부 구현이 변경될 수 있습니다.
2) 이 특정 대기열에 공간이 충분하지 않은 모든 새 이벤트는 건너뜁니다.
새로운 틱 및 차트 변경 이벤트는 단일 인스턴스에서만 mql5 프로그램의 수신 이벤트 큐에 존재할 수 있음을 상기시킵니다. 차트에서 그래픽 개체를 생성 및 삭제하기 위한 이벤트 생성을 활성화/비활성화할 수 있습니다.
핸드북에서:
Все возникающие события клиентский терминал складывает в общую очередь.
...이벤트 대기열의 크기가 제한되어 있습니다.
그래서, 누군가가 나를 도울 수 있습니까? 25페이지에 2명의 고문이 있습니다...
꾸짖다 - 꾸짖다. 이제 알아낼 수 있도록 도와주세요. 그들은 내가 문제를 분석하기에 충분한 데이터를 제공하지 않았다고 비난했습니다. 얼마나 더. 원하는 것이 무엇이든 확인하십시오.
아마 모든 사람들이 내 로봇을 테스트하고 있을 것입니다... 글쎄요, 기다릴게요. 오류를 찾는 데 도움이 되도록 돈을 받고 프로그래머를 고용해야 할 수도 있습니다.
그건 그렇고, 스레드의 주제가 무엇인지 기억하는 사람이 있습니까....?
핸드북에서:
이미 여러 번 이벤트 대기열에 대한 대화가 있었지만 정확한 크기에 대해서는 찾지 못했습니다. 이벤트 대기열은 얼마나 깊습니까? 64? 256? ... 이벤트?
나는 그것을 혀에서 떼어냈고, 이벤트 대기열이 누적되어 질식하기 시작하면 어떻게 되는지 묻고 싶었습니다. 새 이벤트가 무시되거나 이미 대기열에 있는 이벤트가 재설정됩니까? 그리고 물론, 언제(어떤 이벤트에서) 이런 일이 일어날 것입니까?
이미 대답했다
https://www.mql5.com/en/forum/1621/43941#comment_43941
이미 대답했다
https://www.mql5.com/en/forum/1621/43941#comment_43941
나는 설명이 여전히 필요하다고 생각하고 거기에 답이 있지만 번져 있고 내 질문에 대한 힌트조차 없습니다.
대기열의 길이나 건너뛸 이벤트에 대한 정확한 표시가 없습니다("일부 이벤트를 건너뛰게 됨"은 무엇을 의미합니까?), 새 부분 또는 이미 대기열에 있는 부분은 무엇입니까? 새로운 이벤트가 대기열에 있는 이벤트보다 더 중요할 수도 있고 그 반대일 수도 있기 때문에 논리는 무력합니다.
따라서 이 점을 명확히 하는 것이 좋습니다.
그래서 누군가가 나를 도울 수 있습니까? 25페이지에 2명의 고문이 있습니다...
꾸짖다 - 꾸짖다. 이제 알아낼 수 있도록 도와주세요. 그들은 내가 문제를 분석하기에 충분한 데이터를 제공하지 않았다고 비난했습니다. 얼마나 더. 원하는 것이 무엇이든 확인하십시오.
아마 모든 사람들이 내 로봇을 테스트하고 있을 것입니다... 글쎄요, 기다릴게요. 오류를 찾는 데 도움이 되도록 돈을 받고 프로그래머를 고용해야 할 수도 있습니다.
그건 그렇고, 스레드의 주제가 무엇인지 기억하는 사람이 있습니까....?
mql4에는 50, mql5에는 10의 슬리피지가 있습니다. 동일한 슬리피지를 설정하려고 하면 상황이 고르게 될 것입니다. 왜냐하면 그러한 슬리피지가 있는 많은 주문이 단순히 다시 인용될 수 있기 때문입니다.
위협 그리고 두 경우 모두 스프레드의 크기에 미끄러짐을 두십시오.
질문을 반복하겠습니다.
특정 마법으로 모든 주문을 삭제하는 방법은 무엇입니까?
...주문 목록을 위에서 아래로 반복해야 합니다. 예를 들면 다음과 같습니다.
말씀하신 대로 하려고 했지만 문제가 남아 있습니다. 보류 중인 주문 이 먼저 삭제된 다음 동일한 주문을 삭제하라는 또 다른 요청이 전송됩니다. 다음은 로그에 있는 줄의 예입니다.
2011.05.12 16:42:57 거래 '726238' : 주문 취소 #4388299 1.41700에서 0.02 EURUSD 매수 정지 완료 - 주문이 성공적으로 삭제됨
2011.05.12 16:42:57 거래 '726238' : 주문 취소 #4388299 1.41700에서 0.02 EURUSD 매수 정지 - 다른 요청 보내기
2011.05.12 16:42:58 Trades '726238' : 주문 취소 실패 #4388299 buy 0.00 at 0.00000 [잘못된 요청] - 어떤 이유로 이미 구매했지만 구매 중지였습니다
이것은 매번 발생하는 것은 아니지만 가끔 발생하며 Expert Advisor의 작동에 영향을 미치지 않습니다. 빈 요청으로 거래 서버를 로드하지 않고 모든 것을 올바르게 수행하고 문제를 파악하고 싶습니다.
답변과 기꺼이 도와주셔서 감사합니다.
------------------
나는 내 의견을 표현하려고 노력할 것이다. 특정 마법이나 다른 것으로 주문을 삭제해도 문제의 본질은 바뀌지 않으며 주문을 따라 또는 가로로 정렬됩니다. 일반적으로 주문을 기억한 다음 티켓으로 삭제하면 오류가 주기적으로 나타납니다.
내가 상상하는 것처럼, 서버는 로그의 메시지와 서버 응답의 retcode에서 알 수 있듯이 실제로 주문을 삭제했습니다. 그러나 터미널은 아직 그것에 대해 알지 못합니다. 그에게 명령은 여전히 작동 중이고(또는 알고 있지만 조언자에게 오래된 정보를 제공하지만 삭제 주문은 수표를 통과하지 못함) 조언자는 다음 틱에서 삭제 요청을 다시 보내 논리적으로 오류를 수신합니다. 서버.
서버가 구매 중지 주문을 그냥 구매로 재인증했다는 사실은 분명히 서버 오류이며 요청 오류의 경우 이러한 주문을 구별하지 않습니다. 개발자를 위한 메모입니다.
반복되는 요청을 어떻게 피할 수 있습니까? 두 가지 방법밖에 없다고 생각합니다.
1. 삭제 성공 후 마지막 기록을 분석하고 삭제된 주문이 표시될 때까지 기다린 다음 계속합니다.
2. 삭제가 완료된 후 지연 시간(예: 2초)을 입력하십시오. 하나는 충분하지 않을 수 있습니다.
또한 보류 중인 주문뿐만 아니라 시장 주문 및 포지션 변경 시에도 유사한 상황이 발생한다고 덧붙이고 싶습니다. 이것은 아주 드물게 발생하며 데모 계정에서 장기 거래 중에만 알 수 있으며 당연히 테스터에는 표시되지 않습니다. 또한 포지션 변경 후, 변경되기 전의 마진 레벨이 반환되어 다른 계정 매개변수가 확인되지 않은 경우가 발생합니다.
У вас в mql4 стоит проскальзывание 50, а в mql5 10. Попробуйте поставить одинаковое проскальзывание возможно ситуация выровняется тк много приказов с таким слипажем может просто попадать на реквот.
위협 그리고 두 경우 모두 스프레드의 크기에 미끄러짐을 두십시오.
노력은 하겠지만 상황이 때때로 나아질 것 같지는 않습니다.
프로그래밍에 문제가 있습니까? 아니면 모든 것이 정상입니까?
나는 설명이 여전히 필요하다고 생각하고 거기에 답이 있지만 번져 있고 내 질문에 대한 힌트조차 없습니다.
대기열의 길이나 건너뛸 이벤트에 대한 정확한 표시가 없습니다("일부 이벤트를 건너뛰게 됨"은 무엇을 의미합니까?), 새 부분 또는 이미 대기열에 있는 부분은 무엇입니까? 새로운 이벤트가 대기열에 있는 이벤트보다 더 중요할 수도 있고 그 반대일 수도 있기 때문에 논리는 무력합니다.
따라서 이 점을 명확히 하는 것이 좋습니다.
1) " 공통 대기열에 추가 " - 문서의 오류입니다. 실제로 줄이 많습니다. 현재 각 mql5 프로그램 과 각 차트에는 자체 대기열이 있습니다. 큐의 크기는 다르며 일반적으로 작지 않습니다. 올바르게 작성된 프로그램에 대한 큐의 오버플로는 거의 없습니다. 각 대기열의 정확한 크기, 대기열 수 및 내부 구현에 대한 기타 자세한 설명은 문서화하지 않습니다. 그 이유는 매우 분명합니다. 내부 구현이 변경될 수 있습니다.
2) 이 특정 대기열에 공간이 충분하지 않은 모든 새 이벤트는 건너뜁니다.
새로운 틱 및 차트 변경 이벤트는 단일 인스턴스에서만 mql5 프로그램의 수신 이벤트 큐에 존재할 수 있음을 상기시킵니다. 차트에서 그래픽 개체를 생성 및 삭제하기 위한 이벤트 생성을 활성화/비활성화할 수 있습니다.
바닥에 있는 이 녹색 줄무늬가 무엇을 의미하는지 말해주세요. MT4에서는 로트의 볼륨을 의미하며 로트가 변경될 때 추첨됩니다. 그땐 왜? 아니면 내 몫이 바뀌고 있습니까? 바꾸지 않는 것 같습니다.