Эта статья предназначена для начинающих, для тех, кто хочет научиться написанию простых советников на новом языке MQL5. Сначала мы определимся с тем, что требуется от нашего советника, а затем приступим к написанию того, каким образом он будет это делать. 1. Торговая стратегия Он будет следить за некоторыми индикаторами и при определенном...
이 기사는 매수 신호가 있는 경우에만 매수 주문 을 해야 하고 오픈 롱 포지션이 없는 EA의 예를 제공합니다. 유사하게, 판매의 경우 - 판매 조건 및 오픈 숏 포지션의 부재.
첫 번째 테스트에서 한 위치가 아니라 여러 위치가 열린 것으로 나타났습니다. 질문 - 왜?
어드바이저 코드를 읽고 원인을 이해하고 찾으려고 노력했지만 모든 것이 괜찮은 것 같습니다.
안녕 이반! 아무도 여기에 새로 온 사람들을 꾸짖지 않지만 반대로 그들은 도우려고 노력합니다. 나 자신은 초보자입니다. 이제 귀하의 질문에 대해. 포지션 개설에 대한 체크가 이루어졌기 때문에 여러 포지션이 개설되었지만 체크를 중지하는 것을 잊었습니다. return 문 은 호출 프로그램에 제어를 반환합니다(MQL5 참조에서 가져옴).
EA 코드에 반환 을 추가해야 합니다(노란색으로 강조 표시됨):
//--- есть ли открытые позиции?bool Buy_opened= false ; // переменные, в которых будет храниться информация bool Sell_opened= false ; // о наличии соответствующих открытых позицийif ( PositionSelect ( _Symbol )== true ) // есть открытая позиция
{
if ( PositionGetInteger ( POSITION_TYPE )== POSITION_TYPE_BUY )
{
Buy_opened= true ; //это длинная позицияreturn ;
}
elseif ( PositionGetInteger ( POSITION_TYPE )== POSITION_TYPE_SELL )
{
Sell_opened= true ; // это короткая позицияreturn ;
}
}
또한 컴파일러가 경고를 발행하지 않도록 매수 및 매도 포지션을 여는 조건에서 OrderSend(mrequest,mresult) 를 확인하는 조건을 하나 더 추가해야 합니다. 이 조건은 if 문 에 의해 설정되며 다음과 같이 표시됩니다.
그리고 한 가지 더 고려해야 할 사항이 있습니다. 23:59:59에 한 거래일에서 다른 거래일로 전환하면 이전에 열린 포지션이 닫히고 00:00:00에 새 포지션이 즉시 열립니다. 이것은 특정 외환 딜러와 그의 거래 조건에 따라 달라지는 이른바 롤오버 마감 및 롤오버 오픈입니다. 포럼에서 검색하면 어딘가에 관련 정보가 있습니다.
안녕하세요.
저는 초보자입니다. 그러니 너무 저를 괴롭히지 마세요. )
https://www.mql5.com/en/articles/100
이 기사는 매수 신호가 있는 경우에만 매수 주문 을 해야 하고 오픈 롱 포지션이 없는 EA의 예를 제공합니다. 유사하게, 판매의 경우 - 판매 조건 및 오픈 숏 포지션의 부재.
첫 번째 테스트에서 한 위치가 아니라 여러 위치가 열린 것으로 나타났습니다. 질문 - 왜?
어드바이저 코드를 읽고 원인을 이해하고 찾으려고 노력했지만 모든 것이 괜찮은 것 같습니다.
안녕하세요.
저는 초보자입니다. 그러니 너무 저를 괴롭히지 마세요. )
https://www.mql5.com/en/articles/100이 기사는 매수 신호가 있는 경우에만 매수 주문 을 해야 하고 오픈 롱 포지션이 없는 EA의 예를 제공합니다. 유사하게, 판매의 경우 - 판매 조건 및 오픈 숏 포지션의 부재.
첫 번째 테스트에서 한 위치가 아니라 여러 위치가 열린 것으로 나타났습니다. 질문 - 왜?
어드바이저 코드를 읽고 원인을 이해하고 찾으려고 노력했지만 모든 것이 괜찮은 것 같습니다.
교체 시도
if (Buy_opened)
에
같은 판매
교체 시도
에
같은 판매
도움이 되지 않습니다. 더 많은 문서를 읽어보세요.
추세를 "그리다", 미래로"
직선 위의 두 점으로 미래를 포함하여 이 직선에서 임의의 세 번째 점의 가격을 찾을 수 있습니다(반대의 경우도 마찬가지).
안녕하세요.
" 체차코 "에 주목해주세요.
코드의 오류를 지적해야 하기 때문에 테스터에서 EA는 주문을 열지 않습니다 ...
동시에 컴파일러는 오류 및 경고를 발행하지 않으며 로그는 유사합니다. 오류가 없습니다 ...
안녕하세요.
저는 초보자입니다. 그러니 너무 저를 괴롭히지 마세요. )
https://www.mql5.com/en/articles/100
이 기사는 매수 신호가 있는 경우에만 매수 주문 을 해야 하고 오픈 롱 포지션이 없는 EA의 예를 제공합니다. 유사하게, 판매의 경우 - 판매 조건 및 오픈 숏 포지션의 부재.
첫 번째 테스트에서 한 위치가 아니라 여러 위치가 열린 것으로 나타났습니다. 질문 - 왜?
어드바이저 코드를 읽고 원인을 이해하고 찾으려고 노력했지만 모든 것이 괜찮은 것 같습니다.
안녕 이반! 아무도 여기에 새로 온 사람들을 꾸짖지 않지만 반대로 그들은 도우려고 노력합니다. 나 자신은 초보자입니다. 이제 귀하의 질문에 대해. 포지션 개설에 대한 체크가 이루어졌기 때문에 여러 포지션이 개설되었지만 체크를 중지하는 것을 잊었습니다. return 문 은 호출 프로그램에 제어를 반환합니다(MQL5 참조에서 가져옴).
EA 코드에 반환 을 추가해야 합니다(노란색으로 강조 표시됨):
또한 컴파일러가 경고를 발행하지 않도록 매수 및 매도 포지션을 여는 조건에서 OrderSend(mrequest,mresult) 를 확인하는 조건을 하나 더 추가해야 합니다. 이 조건은 if 문 에 의해 설정되며 다음과 같이 표시됩니다.
그리고 한 가지 더 고려해야 할 사항이 있습니다. 23:59:59에 한 거래일에서 다른 거래일로 전환하면 이전에 열린 포지션이 닫히고 00:00:00에 새 포지션이 즉시 열립니다. 이것은 특정 외환 딜러와 그의 거래 조건에 따라 달라지는 이른바 롤오버 마감 및 롤오버 오픈입니다. 포럼에서 검색하면 어딘가에 관련 정보가 있습니다.
안부 인사를 전합니다. 블라디미르.
안녕하세요. 사람들은 당신의 도움이 필요합니다. 매개변수가 다른 두 개의 지그재그를 하나의 표시기에 연결했습니다(오류 또는 경고 없음). 문제는 두 번째 지그재그가 잘못 그려지는 것입니다.
다음은 코드 자체입니다(MQL5).
안녕하세요. 사람들은 당신의 도움이 필요합니다. 매개변수가 다른 두 개의 지그재그를 하나의 표시기에 연결했습니다(오류 또는 경고 없음). 문제는 두 번째 지그재그가 잘못 그려지는 것입니다.
다음은 코드 자체입니다(MQL5).
모든 것이 당신을 위해 작동합니다 - 숫자 위에 약간 수정
모든 것이 당신을 위해 작동합니다 - 상단의 숫자를 약간 수정하십시오
도와 주셔서 감사합니다. 하나만 더 말해봐, 왜 하나의 지그재그는 평소와 같이 (최대, 최소) 형성되고 두 번째는 최대로만 형성되는지.