솔직히 조금 혼란스럽습니다. CExpertSignal 클래스에는 CheckOpenShort/CheckOpenLong 함수가 있습니다. 신호에 다른 함수를 사용하는데, 이 함수가 CExpert에서 어디에서 호출되는지 모르겠습니다. 문제는 내 신호 모듈 작성에 대한 기사에서 기성 신호를 가져 와서 마법사가 볼 수 있도록하고 (새 형식에 대한 기사를 변경할 수 있음)이 신호로 전문가 조언자를 얻었지만 1 년 동안 테스터에서 단일 거래가 아닌 거래가 이루어지지 않는다는 것입니다.
새 버전의 MQL5 마법사에서는 신호 모듈의 형식이 변경되었습니다. 자세한 내용은 여기를 참조하세요 - https://www.mql5.com/ru/forum/3724/66962#comment_66962.
신호 폴더에서 준비된 여러 신호의 코드를 살펴 보았지만 CheckOpenShort / CheckOpenLong 함수가 구현되어 있지 않습니다. 대신 이 함수가 올바르게 사용되나요?
네, 맞습니다.
솔직히 조금 혼란스럽습니다. CExpertSignal 클래스에는 CheckOpenShort/CheckOpenLong 함수가 있습니다. 신호에 다른 함수를 사용하는데, 이 함수가 CExpert에서 어디에서 호출되는지 모르겠습니다. 문제는 내 신호 모듈 작성에 대한 기사에서 기성 신호를 가져 와서 마법사가 볼 수 있도록하고 (새 형식에 대한 기사를 변경할 수 있음)이 신호로 전문가 조언자를 얻었지만 1 년 동안 테스터에서 단일 거래가 아닌 거래가 이루어지지 않는다는 것입니다.
함수는 생성자에서 호출됩니다 - 분명하지만 표준 함수를 사용하지 않는 이유는 무엇입니까?무엇이 문제인지 확인해 주세요. 테스터에서 거래되지 않습니다.
이 모듈은 거래 중입니다.
귀하의 경우, 롱으로 대체하세요.
if( High(1) > High(2) && Low(2)>Low(3) && High(2)<High(3) && Close(3)>Open(3) ){ return(100); } //--- условие не выполнено return(0); }로
숏의 경우 - 직접 찾아보세요.
이 모듈은 거래
의 경우, 롱을
를
로 바꾸면 직접 찾을 수 있습니다.
네, 감사합니다! 나는 하루를 보냈고, 나는 기사에서와 같이 모든 것을 한 것 같아요, 내 실수는 무엇입니까?
이전 마법사와 비교하여 새로운 마법사에서는 매우 큰 변화가 있습니다,
가상 블 CheckOpenLong(double& price,double& sl,double& tp,datetime& expiration);
가상 불 CheckOpenShort(double& price,double& sl,double& tp,datetime& expiration);
나는 다음과 같이 이해했습니다 : 주요 속성을 가진 Expert Advisor에서 사용되는 여러 객체 중 CExpertSignal 클래스의 객체가 있어야하며, 이러한 함수를 사용할 수 있습니다. 다른 객체는 함수를 통해 포지션을 여는 데 참여합니다.
가상 int ShortCondition(); //매도 개시 조건 확인
가상 int LongCondition(); //매수 포지션 개시 조건 확인
새 마법사에서 신호 모듈을 직접 작성하는 방법에 대한 글이 필요하므로 이를 기다리고 있습니다.