MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 42

 

Artyom Trishkin :

... 우리는 옳은 것을 얻었지만 잘못된 바에서 왔습니다. 이것을 알고 고려해야 합니다.

즉, 데이터를 여러 번 수신할 때 시간에 의존하여 원하는 TF의 막대 번호로 다시 계산해야 합니다.

설명 감사합니다.

이렇게 EA의 지표 를 호출하면

ozy_verh= NormalizeDouble ( iCustom ( NULL , 240 , "Ozy" , Amplitude, 3 , 1 ), Digits );

H1에서 어드바이저를 실행하면 첫 번째 막대의 H4에서 표시기 판독값이 수신되지 않습니다.

그런 다음 표시기 판독값을 얻는 방법은 무엇이며 수석 ph에서 올바른 판독값을 얻기 위해 올바르게 수행하는 방법은 무엇입니까?

int TimeFrame = 240;

ozy_verh=NormalizeDouble(iCustom(NULL, TimeFrame, "Ozy", Amplitude,3, iBarShift ( Symbol (),TimeFrame, iTime ( Symbol (),TimeFrame,1)) ), Digits);


그렇다면 H4의 표시기 값이 정확할까요?



 
mila.com :

설명 감사합니다.

이렇게 EA의 지표를 호출하면

ozy_verh= NormalizeDouble ( iCustom ( NULL , 240 , "Ozy" , Amplitude, 3 , 1 ), Digits );

H1에서 어드바이저를 실행하면 첫 번째 막대의 H4에서 표시기 판독값이 수신되지 않습니다.

그런 다음 표시기 판독값을 얻는 방법은 무엇이며 수석 ph에서 올바른 판독값을 얻기 위해 올바르게 수행하는 방법은 무엇입니까?

int TimeFrame = 240;

ozy_verh=NormalizeDouble(iCustom(NULL, TimeFrame, "Ozy", Amplitude,3, iBarShift ( Symbol (),TimeFrame, iTime ( Symbol (),TimeFrame,1)) ), Digits);


그렇다면 H4의 표시기 값이 정확할까요?



당신이 쓴대로 지표를 호출하는 경우 :

ozy_verh= NormalizeDouble ( iCustom ( NULL , 240 , "Ozy" , Amplitude, 3 , 1 ), Digits );

그러면 표시기 데이터는 현재 기호, PERIOD_H4 기간, 네 번째 버퍼 및 H4 시간 프레임의 첫 번째 막대에서 수신됩니다.

당신은 아마도 내가 말하는 것을 잘못 이해했을 것입니다.

그리고 나는 이것에 대해 이야기하고 있었습니다. 어드바이저가 M5에서 시작되고 막대 1에서 M5까지 데이터를 수신한 경우, 예를 들어 H1에서와 같이 이전 TF에서 어떤 일이 발생하는지 확인하려면 다음을 얻습니다. 더 높은 TF H1의 값과 막대 1의 값은 현재 tf H1에 있는 현재 값이 아니라 지난 시간에 있는 값을 얻습니다. M5의 막대 1이 H1의 막대 0 안에 있기 때문입니다.

이것이 당신이 고려해야 할 사항이며, 이것이 제가 방금 말한 것입니다.

 
Vitaly Muzichenko :

테스터의 로그에 대해 이야기하고 있습니다.

추가됨: 코드를 정상 상태로 빌드하고 검토한 다음 테스터에서 실행하고 오류 로그를 읽습니다. 여기에 코드 스니펫을 게시하고 있습니다.

여기. 나는 수표에 대해 이해하지만 그것이 어디에서 왔는지 이해하지 못합니다.

파일:
count.mq4  17 kb
 
Artyom Trishkin :

이것이 당신이 고려해야 할 사항이며, 이것이 제가 방금 말한 것입니다.

어드바이저를 M 5에 놓고 첫 번째 막대의 H1에서 지표 값을 얻으려면 다음 항목이 맞습니까?

ozy_verh= NormalizeDouble ( iCustom ( NULL , 60 , "Ozy" , Amplitude, 3 , 1 ), Digits );
 
mila.com :

어드바이저를 M 5에 놓고 첫 번째 막대의 H1에서 지표 값을 얻으려면 다음 항목이 맞습니까?

ozy_verh= NormalizeDouble ( iCustom ( NULL , 60 , "Ozy" , Amplitude, 3 , 1 ), Digits );

아니요. 1 대신:

datetime _time1 = iTime ( Symbol (), PERIOD_H1 , 1 );
int       _n     = iBarShift ( Symbol (), PERIOD_CURRENT , _time1);
// ваша формула
ozy_verh= NormalizeDouble ( iCustom ( NULL , 60 , "Ozy" , Amplitude, 3 , _n), Digits );
단, 어드바이저를 서버에서 사용하거나 단독으로 사용하지만 H1 차트가 열려 있지 않은 경우에는 다른 추가 작업을 수행해야 합니다. 확인하다.
 

Oksana Berenko :

... 하지만 H1 차트가 아직 열리지 않은 경우 추가 작업을 수행해야 합니다. 확인하다.

고맙습니다.

한 개의 M5 차트가 열려 있고, 작성하신 대로 H1이 있는 호출 표시기가 있는 Expert Advisor 가 설치되어 있습니다.

어떤 다른 검사가 필요합니까?

 
mila.com :

어드바이저를 M 5에 놓고 첫 번째 막대의 H1에서 지표 값을 얻으려면 다음 항목이 맞습니까?

ozy_verh= NormalizeDouble ( iCustom ( NULL , 60 , "Ozy" , Amplitude, 3 , 1 ), Digits );

베르나. 첫 번째 막대의 데이터가 필요한 TF에 따라 ...

제 말을 이해 못하신듯...

 
안녕하세요, mt4와 mt5의 주요 차이점이 무엇인지 알려주세요. 큰 차이는 보이지 않습니다.
 

안녕하세요 ..

if (OrderType()==OP_SELL) CloseOpBuySell("구매");

if (OrderType()==OP_BUY) CloseOpBuySell("판매");

구매가 열리면 판매가 닫히고 그 반대의 경우도 마찬가지입니다. 이 글을 쓰면 작동할까요?

나는 OrderType()==OP_SELL의 왼쪽에 관심이 있습니다.

올바른 신호는 신호를 대체할 때 작동합니다.

질문: "이러한 폐쇄가 효과가 있습니까?"

 
elektrik777 :
안녕하세요, mt4와 mt5의 주요 차이점이 무엇인지 알려주세요. 큰 차이는 보이지 않습니다.
스크립트 및 지표 고문을 위한 프로그래밍 언어의 차이점, 다른 모든 것은 동일합니다. MT5를 제외하고는 증권 거래소에서 거래할 수 있고 MT4에서는 거래할 수 없습니다.