존경 받고 숙련 된 프로그래머는 5 자리 숫자의 "문제 해결"을 위해 놀라운 "접근 방식"을 사용합니다. 그리고 이제이 "접근 방식"은 교육, 문학에서 초보자 사이에서도 배양됩니다.
저자가 제시 한 "접근 방식"은 5 자리 숫자의 모든 이점을 완전히 무효화합니다. 초보자에게 5자리 호가를 도입하면 예를 들어 10핍이 아닌 10.5핍으로 이익 실현을 설정할 수 있다고 설명하는 대신 5자리 호가를 도입하면 이익 실현을 10핍으로 설정할 수 있다고 설명합니다. 또한 5자리 호가가 있는 전문가 자문을 사용할 때는 10핍이 아닌 100핍으로 테이크프로핏을 지정해야 한다고 설명합니다. 이러한 설명 대신 프로그램 코드에 5자리 호가의 장점을 프로그래밍적으로 사용할 수 없도록 하는 줄이 도입되었습니다.
"우리는 EA가 모든 브로커에서 올바르게 작동하는지 확인해야합니다.". 글쎄, 우리는 확신하고 그 다음에는 무엇입니까? 프로그래밍적으로 전문가 조언자가 "올바르게 제공하도록 선고"한 경우 지금 5 자리 견적의 이점을 어떻게 사용할 수 있습니까?
//--- 막대 수가 작동하기에 충분한지 여부if(Bars(_Symbol,_Period)<60) // 차트의 총 막대 수가 60개 미만인가요?
{
Alert("60개 미만의 막대가 있는 차트에서는 EA가 작동하지 않습니다!!!");
return;
}
그리고 조금 더 멀리
//--- 차트에 작업할 막대가 충분합니까?int Mybars=Bars(_Symbol,_Period);
if(Mybars<60) // 총 막대 수가 60개 미만인 경우
{
Alert("60개 미만의 막대가 있는 차트에서는 EA가 작동하지 않습니다!!!");
return;
}
시계열 및 표시기 값의 복사가 자주 수행되어야하는 경우 (예 : Expert Advisor에서 OnTick () 을 호출 할 때마다 또는 표시기에서 OnCalculate ( )를 호출 할 때마다) 동적 배열에 대한 메모리 할당 작업에추가 시간이 필요하고 Expert Advisor의 테스트 및 최적화에 영향을 미치기때문에이 경우 정적으로 분산 된 배열을 사용하는 것이 좋습니다.
mql4에서는 아무런 학습 없이 며칠 만에 몇 개의 ea를 프로그래밍했습니다. 저는 수십 가지 프로그래밍 언어(자바, C, PHP, 기타 사소하거나 오래된 언어)를 알고 있습니다. mql5 언어는 mql4만큼 직관적이지 않습니다. 언어 간 변환기가 없는 것이 아쉽습니다. 심호흡을 하고 공부를 시작해야겠어요...
이 기사에 감사드립니다.
MQL5 예제를 보기 시작했을 때 길을 잃은 느낌이 들었는데... 기사를 보고 나니 모든 것이 훨씬 더 쉽게 이해가 됩니다.
오티마 스피치 :-) 그라치오 :-)
훌륭한 기사 탱크 유 :-)
좋은 기사입니다,
그것은 3 개월 이상을 절약하는 데 도움이됩니다, 감사합니다, 나는 당신의 다음 관련 기사 (OOP)로 가고 있습니다.
머니 마킹 전문가를 만나고 당신과 공유하기를 바라며, 나는 그런 기사를 기대합니다,
다시 한번 감사드립니다,
샘에게,
나는 이미 당신의; "my_first_ea"를 다운로드하고 나는 시도했습니다.
당신의 EA 때문에, 나는 내 논리 이유에 의해 EA를 만드는 데 관심이 있습니다, 그것은 스스로 거래 할 수 없습니다. 미안 해요 나는 초보자이고 mql 기본에서 어떤 코드를 모르는지 모르겠습니다.
참고로; 이 EA는 컴파일 할 때 오류 및 경고가 아니지만 거래를 실행할 수 없습니다.
저를 도와 주시겠습니까?
도와 주셔서 대단히 감사합니다
존경 받고 숙련 된 프로그래머는 5 자리 숫자의 "문제 해결"을 위해 놀라운 "접근 방식"을 사용합니다. 그리고 이제이 "접근 방식"은 교육, 문학에서 초보자 사이에서도 배양됩니다.
저자가 제시 한 "접근 방식"은 5 자리 숫자의 모든 이점을 완전히 무효화합니다. 초보자에게 5자리 호가를 도입하면 예를 들어 10핍이 아닌 10.5핍으로 이익 실현을 설정할 수 있다고 설명하는 대신 5자리 호가를 도입하면 이익 실현을 10핍으로 설정할 수 있다고 설명합니다. 또한 5자리 호가가 있는 전문가 자문을 사용할 때는 10핍이 아닌 100핍으로 테이크프로핏을 지정해야 한다고 설명합니다. 이러한 설명 대신 프로그램 코드에 5자리 호가의 장점을 프로그래밍적으로 사용할 수 없도록 하는 줄이 도입되었습니다.
"우리는 EA가 모든 브로커에서 올바르게 작동하는지 확인해야합니다.". 글쎄, 우리는 확신하고 그 다음에는 무엇입니까? 프로그래밍적으로 전문가 조언자가 "올바르게 제공하도록 선고"한 경우 지금 5 자리 견적의 이점을 어떻게 사용할 수 있습니까?
그리고 만약
_Digits==3
그렇다면 어떻게 되나요 ?
STP = STP*10;
TKP = TKP*10;
그리고 우리는 무엇을 얻게 되나요? 그냥 쓰는 것이 더 정확하지 않을까요?
STP = STP/10;
TKP = TKP/10;
OnTick 함수에서 같은 코드가 두 번 반복되는 이유는 무엇인가요?
그리고 조금 더 멀리
그리고 최적화를 위해 동적 배열에 ArrayResize를 사용하는 것이 좋을 것입니다: https://www.mql5.com/ko/docs/array/arrayresize
그리고 문서에서 또 다른 흥미로운 것을 읽었습니다:
시계열 및 표시기 값의 복사가 자주 수행되어야하는 경우 (예 : Expert Advisor에서 OnTick () 을 호출 할 때마다 또는 표시기에서 OnCalculate ( )를 호출 할 때마다) 동적 배열에 대한 메모리 할당 작업에추가 시간이 필요하고 Expert Advisor의 테스트 및 최적화에 영향을 미치기때문에이 경우 정적으로 분산 된 배열을 사용하는 것이 좋습니다.
https://www.mql5.com/ko/docs/series