질문이 제기되었는지는 모르겠지만! 빌드 600에서 최적화 프로그램이 비뚤어지게 작동합니다! Expert Advisor의 매개변수를 최적화하고 그 중 가장 좋은 것을 선택하여 최적화된 영역에서 실행하여 오프닝이 발생한 위치를 확인하고 실행이 끝날 때 완전히 다른 결과의 결과를 관찰합니다! 예를 들어 최적화된 결과는 $80의 수익을 제공하지만 이 결과를 테스터에서 실행한 후 수익은 절반이 될 수 있습니다!!! 어떻게 이럴 수있어? 고칠 곳을 알려주세요!
조언 해주셔서 감사합니다! CTrad를 통해 모든 것이 예상대로 작동합니다. 그러나 문서화된 기능이 예상대로 작동하지 않는 것은 여전히 즐겁지 않습니다. ((((어제 Expert Advisor 를 올바르게 작동시키려고 4시간을 허비했습니다. 이것은 일종의 왼손잡이 라이브러리가 아닙니다. 이것은 문서화된 기본 기능입니다. 매우 이상합니다!
99.9%의 확률로
아니 아니. 얘들아. 터미널의 작동 버전이 이 시스템에 설치되어 있습니다. 그녀는 이 차에 태워졌다.
글쎄, 당신은 터미널이 설치되어 있지 않을 때이 문제를 알고 있으며 운영 체제를 다시 설치하면 모든 것이 작동합니다.
그러나이 실패의 이유는 무엇입니까? 무엇을 볼 것인가? 디버깅 또는 이름이 무엇입니까? 충돌의 원인을 찾기 위해 메모리 덤프를 읽으시겠습니까?
시스템 로그의 데이터는 다음과 같습니다.
이벤트 유형: 실수
이벤트 소스: 응용 프로그램 오류
이벤트 카테고리: 결석하다
이벤트 코드: 1000
날짜: 2014년 2월 5일
시간: 21:17:04
사용자: 해당 없음
컴퓨터: 바니아
설명:
응용 프로그램 오류 mt4setup(2).exe, 버전 5.0.0.883, 모듈 mt4setup(2).exe, 버전 5.0.0.883, 주소 0x0001ec1a.
데이터:
0000: 41 70 70 6c 69 63 61 74 신청
0008: 69 6f 6e 20 46 61 69 6c 이온 실패
0010: 75 72 65 20 20 6d 74 34 ure mt4
0018: 73 65 74 75 70 20 28 32 설정(2
0020: 29 2e 65 78 65 20 35 2e ).exe 5.
0028: 30 2e 30 2e 38 38 33 20 0.0.883
0030: 69 6e 20 6d 74 34 73 65 in mt4se
0038: 74 75 70 20 28 32 29 2e tup(2).
0040: 65 78 65 20 35 2e 30 2e 실행 5.0.
0048: 30 2e 38 38 33 20 61 74 0.883에서
0050: 20 6f 66 66 73 65 74 20 오프셋
0058: 30 30 30 31 65 63 31 61 0001ec1a
0060:0d0a..
아니 아니. 얘들아. 터미널의 작동 버전이 이 시스템에 설치되어 있습니다. 그녀는 이 차에 태워졌다.
1) 어떤 작업 버전의 터미널이 이미 설치되어 있습니까?
2) 그리고 어떤 종류의 프로세서가 있습니까? SSE2는 명령어를 지원합니까?
테스트 중에 이 유형의 메시지 로깅을 비활성화할 수 있습니까? :
MQL4 참조/시계열 및 표시기 액세스/배열의 인덱싱 방향 및 CopyBuffer 함수 의 시계열. 그리고 MetaEditor 빌드 883 의 MQL4 컴파일러는 함수가 정의되지 않았음을 보여줍니다.
나중에 기능이 제공될 예정이며 얼마나 빨리 제공됩니까?
업데이트된 MQL4 도움말을 다운로드했고 섹션을 보게 되어 기뻤습니다.
MQL4 참조/시계열 및 표시기 액세스/배열의 인덱싱 방향 및 CopyBuffer 함수 의 시계열. 그리고 MetaEditor 빌드 883 의 MQL4 컴파일러는 함수가 정의되지 않았음을 보여줍니다.
나중에 기능이 제공될 예정이며 얼마나 빨리 제공됩니까?
도움말의 이 섹션에서 CopyBuffer가 있는 예제는 실수로 남겨두었습니다. 수정하겠습니다. MQL4에는 CopyBuffer 기능 이 없습니다(표시기 핸들 작업을 기반으로 하기 때문에 MQL4에는 존재하지 않음).
MK4에 대한 질문을 이 스레드에 병합하지 마십시오.
별도의 분기를 만드십시오.
MT5에서 위치를 열려면 다음 코드를 사용합니다.
요청.액션 = TRADE_ACTION_PENDING ;
request.symbol = "EURUSD";
요청 볼륨 = 0.1;
request.price=NormalizeDouble(Ask+30*_Point,_Digits);
request.sl = NormalizeDouble(request.price - SL*_Point,_Digits);
request.tp = NormalizeDouble(request.price + TP*_Point,_Digits);
요청.편차=3;
request.type=ORDER_TYPE_BUY_STOP;
request.type_filling=ORDER_FILLING_FOK;
request.type_time=ORDER_TIME_SPECIFIED;
request.expiration=TimeTradeServer()+6*PeriodSeconds(PERIOD_H1);
OrderSend(요청, 결과);
나는 이 모든 사업을 테스터로 시도한다. 가격이 필요한 수준에 도달하지 않으면 주문이 삭제되지 않지만 6시간 이내에 삭제됩니다. 지정된 시간이 지나도 주문이 삭제되지 않는 이유는 무엇입니까?
MT5에서 위치를 열려면 다음 코드를 사용합니다.
...나는 테스터에서 이 모든 사업을 시도한다. 가격이 필요한 수준에 도달하지 않으면 주문이 삭제되지 않지만 6시간 이내에 삭제됩니다. 지정된 시간이 지나도 주문이 삭제되지 않는 이유는 무엇입니까?
"CTrade - 거래 작업을 위한 편리한 클래스" 섹션 에서 MQL5의 거래 작업은 쉽습니다 .