찻주전자의 질문 - 페이지 7 1234567891011121314...277 새 코멘트 Victor Kirillin 2011.06.01 13:30 #61 kPVT : 사건을 처리하려고 노력하는 전문가가 있습니다. 액션에 해당하지 않는 이벤트를 받습니다. 차트 클릭과 버튼 누름과 정확히 일치 예를 들어 차트가 이동할 때 생성되는 논쟁의 여지가 있는 이벤트 ID=9(CHARTEVENT_CUSTOM)이고 스트림에 약 10개의 동일한 이벤트가 있습니다 . CHARTEVENT_OBJECT_ENDEDIT 이벤트를 확인하지 않았습니다. 나머지는 명확하지 않습니다. 설명이 이벤트 번호와 일치하지 않거나, 수동으로 개체를 생성할 때 개체 생성과 같은 이벤트가 잘못 생성됩니다. 일반적으로 도움을 요청합니다. 다음과 같이 더 좋습니다. //+------------------------------------------------------------------+ //| Expert chart event function | //+------------------------------------------------------------------+ void OnChartEvent ( const int id, // идентификатор события const long & lparam, // параметр события типа long const double & dparam, // параметр события типа double const string & sparam) // параметр события типа string { string str_id= "" ; switch (id) { case CHARTEVENT_KEYDOWN : str_id= "KEYDOWN" ; break ; case CHARTEVENT_OBJECT_CREATE: str_id= "OBJECT_CREATE" ; break ; case CHARTEVENT_OBJECT_CHANGE: str_id= "OBJECT_CHANGE" ; break ; case CHARTEVENT_OBJECT_DELETE: str_id= "OBJECT_DELETE" ; break ; case CHARTEVENT_CLICK : str_id= "CLICK" ; break ; case CHARTEVENT_OBJECT_CLICK : str_id= "OBJECT_CLICK" ; break ; case CHARTEVENT_OBJECT_DRAG : str_id= "OBJECT_DRAG" ; break ; case CHARTEVENT_OBJECT_ENDEDIT : str_id= "OBJECT_ENDEDIT" ; break ; case CHARTEVENT_CHART_CHANGE : str_id= "CHART_CHANGE" ; break ; default : if (id> CHARTEVENT_CUSTOM ) str_id= "CUSTOM+" + IntegerToString (id- CHARTEVENT_CUSTOM ); else str_id= "UNKNOWN" ; } //--- для отладки printf ( "ChartEvent :id=%s, l=%d d=%f s=%s" ,str_id,lparam,dparam,sparam); //--- ExtExpertPrg.ChartEvent(id,lparam,dparam,sparam); } Pavel Tsatsenko 2011.06.01 14:41 #62 제가 뭔가 잘못하고 있는건 확실하지만 제가 왜 오해를 했는지 좀 더 자세히 설명하려고 합니다. AlexSTAL : 처음에는 이미 할당된 숫자 상수 CHARTEVENT_XXXXXXXX에 숫자 상수를 할당합니다... CHARTEVENT_XXXXXXX 상수의 숫자 값은 어디에서 확인할 수 있습니까? 나는 그것을 찾지 못했기 때문에 실험을 통해 CHARTEVENT_KEYDOWN = 0 및 CHARTEVENT_CLICK = 4임을 알게 되었으며 , 이는 도움말에서 이러한 상수가 설명된 순서에 해당합니다. 나머지 이벤트에 각각 숫자를 할당했는데 이벤트[10] 배열이 이렇게 되었습니다. 로쉬 : 불행히도 귀하의 질문은 명확하지 않습니다. 정확히 작동하지 않는 것은 무엇입니까? 내 이벤트 번호 매기기 및 이전 게시물의 EA 사용을 기반으로: 예를 들어 추세선 -> 이벤트 CHARTEVENT_OBJECT_CHANGE 를 그립니다. 이 줄을 이동 -> 이벤트도 CHARTEVENT_OBJECT_CHANGE , 메뉴 -> 2개의 이벤트 CHARTEVENT_CHART_CHANGE 및 CHARTEVENT_CUSTOM 을 통해 속성을 변경합니다. Del -> event only CHARTEVENT_KEYDOWN 을 눌러 삭제합니다 (이벤트 번호 지정이 올바르지 않은 경우 삭제 및 버튼 누름의 2개의 이벤트가 여전히 있어야 함). 이 모든 것은 제 번호를 기준으로 합니다. 더 나아가... 나는 삼촌 EA 를 사용합니다 : 추세선 그리기 -> ChartEvent :id=OBJECT_DRAG, l=0 d=0.000000 s=H1 추세선 40716 이 줄 이동 -> ChartEvent :id=OBJECT_DRAG, l=0 d=0.000000 s=H1 추세선 40716 메뉴를 통해 속성 변경 -> ChartEvent :id=OBJECT_CHANGE, l=0 d=0.000000 s=H1 추세선 40716 및 ChartEvent :id=CHART_CHANGE, l=0 d=0.000000 s= Del -> ChartEvent :id=KEYDOWN, l=46 d=0.000000 s=를 눌러 삭제하십시오. 상황이 정리되지 않았습니다. 만일을 대비하여: MT5 64x - 빌드 458. 시스템 - W7 64x 홈 확장. 응답해주셔서 감사합니다)) Документация по MQL5: Стандартные константы, перечисления и структуры / Константы графиков / Типы событий графика www.mql5.com Стандартные константы, перечисления и структуры / Константы графиков / Типы событий графика - Документация по MQL5 Questions from a "dummy" 아이폰/아이패드용 MetaTrader 5: 대량 [아카이브] 순수수학, 물리학, 화학 Aleksandr Chugunov 2011.06.01 14:57 #63 kPVT : 제가 뭔가 잘못하고 있는건 확실하지만 제가 왜 오해를 했는지 좀 더 자세히 설명하려고 합니다. CHARTEVENT_XXXXXXX 상수의 숫자 값은 어디에서 확인할 수 있습니까? 나는 그것을 찾지 못했기 때문에 실험을 통해 CHARTEVENT_KEYDOWN = 0 및 CHARTEVENT_CLICK = 4임을 알게 되었으며 , 이는 도움말에서 이러한 상수가 설명된 순서에 해당합니다. 나머지 이벤트에 각각 숫자를 할당했는데 이벤트[10] 배열이 이렇게 되었습니다. 이것은 어떤 경우에도 해서는 안됩니다! 숫자 값은 개발자가 할당하며 언제든지 변경할 수 있습니다. 문자 상수만 사용할 수 있습니다. -------------- uncleVic 은 올바른 사용법의 예를 제공했습니다(글쎄, 또는 도움말에서 내 부분) -------------- 그럼 뭐해? 숫자 표현이 필요한 이유는 무엇입니까? Pavel Tsatsenko 2011.06.01 15:08 #64 AlexSTAL : 이것은 어떤 경우에도 해서는 안됩니다! 숫자 값은 개발자가 할당하며 언제든지 변경할 수 있습니다. 문자 상수만 사용할 수 있습니다. 확인. 나는 이것이 불가능하다는 데 동의합니다. 내 자위는 잊어 버려). 더 가자.. 알렉스스탈 : uncleVic 은 올바른 사용법의 예를 제공했습니다(글쎄, 또는 도움말에서 내 부분) 위에서 쓴 것처럼 uncleVic 예제를 사용하여 액션에 해당하지 않는 이벤트도 얻습니다. kPVT : 추세선 그리기 -> ChartEvent :id=OBJECT_DRAG, l=0 d=0.000000 s=H1 추세선 40716 대신 CHARTEVENT_OBJECT_CREATE . ..... Del -> ChartEvent :id=KEYDOWN, l=46 d=0.000000 s= CHARTEVENT_OBJECT_DELETE 대신 CHARTEVENT_KEYDOWN을 눌러 삭제합니다. 알렉스스탈 : 그럼 뭐해? 숫자 표현이 필요한 이유는 무엇입니까? 설명하기에는 너무 길지만 중요하지 않습니다. 내 번호 매기기는 잊어 버리자. 가장 중요한 것은 이벤트를 파악하려고 하지만 uncleVic 예제를 사용해도 생성된 이벤트와 취한 조치 간의 불일치를 이해하지 못한다는 것입니다. Aleksandr Chugunov 2011.06.01 15:13 #65 kPVT : 확인. 나는 이것이 불가능하다는 데 동의합니다. 내 자위는 잊어 버려). 더 가자.. 위에서 쓴 것처럼 uncleVic 예제를 사용하여 액션에 해당하지 않는 이벤트도 얻습니다. kPVT : 초기화에 추가: ChartSetInteger ( 0 , CHART_EVENT_OBJECT_CREATE, true ); ChartSetInteger ( 0 , CHART_EVENT_OBJECT_DELETE, true ); 모든 것이 최고입니다. Создание: DS 0 _err (EURUSD,M30) 17 : 13 : 18 ChartEvent :id=OBJECT_CREATE, l= 0 d= 0.000000 s=M30 Horizontal Line 58241 DG 0 _err (EURUSD,M30) 17 : 13 : 18 ChartEvent :id=OBJECT_DRAG, l= 0 d= 0.000000 s=M30 Horizontal Line 58241 Удаление кл. Del: EH 0 _err (EURUSD,M30) 17 : 13 : 21 ChartEvent :id=OBJECT_DELETE, l= 0 d= 0.000000 s=M30 Horizontal Line 58241 QD 0 _err (EURUSD,M30) 17 : 13 : 21 ChartEvent :id=KEYDOWN, l= 46 d= 0.000000 s= Pavel Tsatsenko 2011.06.02 03:35 #66 Alex가 해결해 주셔서 감사합니다. AlexSTAL : 초기화에 추가: .... 전문가에게 블록을 추가했습니다. void OnInit () { ChartSetInteger ( 0 , CHART_EVENT_OBJECT_CREATE, true ); ChartSetInteger ( 0 , CHART_EVENT_OBJECT_DELETE, true ); } 모든 것이 제자리에 떨어졌습니다. 나는 도움말을 보기 시작했는데, 나머지는 모두 올바르게 하기 위해 이 두 이벤트를 "초기화"해야 한다는 내용이 어디에도 기록되어 있지 않습니다. 나는 그것을 주석 처리했고 작동합니다. Expert/Indicator에 OnInit 블록이 없으면 비어 있어도 이벤트에 혼동이 있는 것으로 판명되었습니다. 이것은 아마도 의도한 방식일 수 있지만 mql5로 작성하는 사람들은 그것에 대해 알아야 합니다. Europa 2011.06.02 09:32 #67 마법사에서 전문가를 생성했는데 테스터가 OnInit 치명적인 오류로 인해 Core 1 테스터가 중지됨 오류를 표시하는 동안 누구든지 이를 경험했습니까? 어떻게 해결되나요? 결국, 마법사, 좋아, 내가 거기에서 뭔가를 엉망으로 만들 것입니다 ... Victor Kirillin 2011.06.02 09:41 #68 Europa : 마법사에서 전문가를 생성했는데 테스터가 OnInit 치명적 오류로 인해 Core 1 테스터가 중지됨 오류를 표시하는 동안 누구든지 이를 경험했습니까? 어떻게 해결되나요? 결국, 마법사, 좋아, 내가 거기에서 뭔가를 엉망으로 만들 것입니다 ... 받은 소스를 첨부합니다. 및 테스트 매개변수. Europa 2011.06.02 10:01 #69 uncleVic : 받은 소스를 첨부합니다. 및 테스트 매개변수. 파일: TheFirst.mq5 7 kb Victor Kirillin 2011.06.02 10:45 #70 Europa : 재생산하지 않았습니다. 더 많은 테스트 매개변수를 요청했습니다. 필요: 상징, 기간, 간격, 거래 모드 . 그리고 MT5의 버전과 비트. 1234567891011121314...277 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
사건을 처리하려고 노력하는 전문가가 있습니다.
액션에 해당하지 않는 이벤트를 받습니다.
차트 클릭과 버튼 누름과 정확히 일치
예를 들어 차트가 이동할 때 생성되는 논쟁의 여지가 있는 이벤트 ID=9(CHARTEVENT_CUSTOM)이고 스트림에 약 10개의 동일한 이벤트가 있습니다 .
CHARTEVENT_OBJECT_ENDEDIT 이벤트를 확인하지 않았습니다.
나머지는 명확하지 않습니다. 설명이 이벤트 번호와 일치하지 않거나, 수동으로 개체를 생성할 때 개체 생성과 같은 이벤트가 잘못 생성됩니다.
일반적으로 도움을 요청합니다.
다음과 같이 더 좋습니다.
제가 뭔가 잘못하고 있는건 확실하지만 제가 왜 오해를 했는지 좀 더 자세히 설명하려고 합니다.
처음에는 이미 할당된 숫자 상수 CHARTEVENT_XXXXXXXX에 숫자 상수를 할당합니다...
CHARTEVENT_XXXXXXX 상수의 숫자 값은 어디에서 확인할 수 있습니까?
나는 그것을 찾지 못했기 때문에 실험을 통해 CHARTEVENT_KEYDOWN = 0 및 CHARTEVENT_CLICK = 4임을 알게 되었으며 , 이는 도움말에서 이러한 상수가 설명된 순서에 해당합니다.
나머지 이벤트에 각각 숫자를 할당했는데 이벤트[10] 배열이 이렇게 되었습니다.
불행히도 귀하의 질문은 명확하지 않습니다. 정확히 작동하지 않는 것은 무엇입니까?
내 이벤트 번호 매기기 및 이전 게시물의 EA 사용을 기반으로:
예를 들어 추세선 -> 이벤트 CHARTEVENT_OBJECT_CHANGE 를 그립니다.
이 줄을 이동 -> 이벤트도 CHARTEVENT_OBJECT_CHANGE ,
메뉴 -> 2개의 이벤트 CHARTEVENT_CHART_CHANGE 및 CHARTEVENT_CUSTOM 을 통해 속성을 변경합니다.
Del -> event only CHARTEVENT_KEYDOWN 을 눌러 삭제합니다 (이벤트 번호 지정이 올바르지 않은 경우 삭제 및 버튼 누름의 2개의 이벤트가 여전히 있어야 함).
이 모든 것은 제 번호를 기준으로 합니다.
더 나아가...
나는 삼촌 EA 를 사용합니다 :
추세선 그리기 -> ChartEvent :id=OBJECT_DRAG, l=0 d=0.000000 s=H1 추세선 40716
이 줄 이동 -> ChartEvent :id=OBJECT_DRAG, l=0 d=0.000000 s=H1 추세선 40716
메뉴를 통해 속성 변경 -> ChartEvent :id=OBJECT_CHANGE, l=0 d=0.000000 s=H1 추세선 40716 및 ChartEvent :id=CHART_CHANGE, l=0 d=0.000000 s=
상황이 정리되지 않았습니다.
만일을 대비하여:
MT5 64x - 빌드 458.
시스템 - W7 64x 홈 확장.
응답해주셔서 감사합니다))
제가 뭔가 잘못하고 있는건 확실하지만 제가 왜 오해를 했는지 좀 더 자세히 설명하려고 합니다.
CHARTEVENT_XXXXXXX 상수의 숫자 값은 어디에서 확인할 수 있습니까?
나는 그것을 찾지 못했기 때문에 실험을 통해 CHARTEVENT_KEYDOWN = 0 및 CHARTEVENT_CLICK = 4임을 알게 되었으며 , 이는 도움말에서 이러한 상수가 설명된 순서에 해당합니다.
나머지 이벤트에 각각 숫자를 할당했는데 이벤트[10] 배열이 이렇게 되었습니다.
이것은 어떤 경우에도 해서는 안됩니다!
숫자 값은 개발자가 할당하며 언제든지 변경할 수 있습니다.
문자 상수만 사용할 수 있습니다.
--------------
uncleVic 은 올바른 사용법의 예를 제공했습니다(글쎄, 또는 도움말에서 내 부분)
--------------
그럼 뭐해? 숫자 표현이 필요한 이유는 무엇입니까?
이것은 어떤 경우에도 해서는 안됩니다!
숫자 값은 개발자가 할당하며 언제든지 변경할 수 있습니다.
문자 상수만 사용할 수 있습니다.
확인. 나는 이것이 불가능하다는 데 동의합니다.
내 자위는 잊어 버려).
더 가자..
uncleVic 은 올바른 사용법의 예를 제공했습니다(글쎄, 또는 도움말에서 내 부분)
위에서 쓴 것처럼 uncleVic 예제를 사용하여 액션에 해당하지 않는 이벤트도 얻습니다.
kPVT :
추세선 그리기 -> ChartEvent :id=OBJECT_DRAG, l=0 d=0.000000 s=H1 추세선 40716 대신 CHARTEVENT_OBJECT_CREATE .
.....
그럼 뭐해? 숫자 표현이 필요한 이유는 무엇입니까?
설명하기에는 너무 길지만 중요하지 않습니다. 내 번호 매기기는 잊어 버리자.
가장 중요한 것은 이벤트를 파악하려고 하지만 uncleVic 예제를 사용해도 생성된 이벤트와 취한 조치 간의 불일치를 이해하지 못한다는 것입니다.
확인. 나는 이것이 불가능하다는 데 동의합니다.
내 자위는 잊어 버려).
더 가자..
위에서 쓴 것처럼 uncleVic 예제를 사용하여 액션에 해당하지 않는 이벤트도 얻습니다.
kPVT :
초기화에 추가:
모든 것이 최고입니다.
Alex가 해결해 주셔서 감사합니다.
초기화에 추가:
....
전문가에게 블록을 추가했습니다.
모든 것이 제자리에 떨어졌습니다.
나는 도움말을 보기 시작했는데, 나머지는 모두 올바르게 하기 위해 이 두 이벤트를 "초기화"해야 한다는 내용이 어디에도 기록되어 있지 않습니다.
나는 그것을 주석 처리했고 작동합니다.
Expert/Indicator에 OnInit 블록이 없으면 비어 있어도 이벤트에 혼동이 있는 것으로 판명되었습니다.
이것은 아마도 의도한 방식일 수 있지만 mql5로 작성하는 사람들은 그것에 대해 알아야 합니다.
마법사에서 전문가를 생성했는데 테스터가 OnInit 치명적 오류로 인해 Core 1 테스터가 중지됨 오류를 표시하는 동안 누구든지 이를 경험했습니까? 어떻게 해결되나요? 결국, 마법사, 좋아, 내가 거기에서 뭔가를 엉망으로 만들 것입니다 ...
받은 소스를 첨부합니다. 및 테스트 매개변수.
재생산하지 않았습니다.
더 많은 테스트 매개변수를 요청했습니다. 필요:
그리고 MT5의 버전과 비트.