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

 
Artyom Trishkin :

날짜 시간은 ulong입니다

정말 감사합니다!
 
Vitaly Gorbunov :

헛되이 그를 위해 코드를 즉시 수정했습니다. 사람은 단순히 컴파일러의 기본 키를 이해하지 못했으며 일반 코드를 작성하려면 이러한 미묘함과 문서 사용을 알아야합니다!

나는 그에게 비디오의 고대를 지적했고, 그가 비디오에 있는 그대로 정확하게 복사했다 하더라도 그는 성공했을 것입니다. 그러나 그는이 게시물에 대해 화를 내고 분명히 불평 한 결과 삭제되었으며 그 자신도 그것을 알아낼 생각조차하지 않을 것입니다!

완전히 헛되지 않은 것으로 나타났습니다. 그는 제시된 코드의 차이점을 이해하려고 시도조차하지 않았으며 그에게도 작동하지 않습니다.

일반적으로 코드를 수정하여 프롬프트를 표시하는 것도 좋아하지 않습니다. 그러나 여기에서는 "사실이 아닙니다"로 밝혀졌습니다. 나는 아주 오랫동안 도서관에 관심을 가져왔고 심지어 도서관도 갖고 있었습니다. 하지만 어드바이저나 인디케이터의 코드와 함께 전체 라이브러리를 옮겨야 하고, 어디에 무엇을 넣어야 하는지도 설명해야 한다는 사실을 깨닫고... 모두가 이것을 완벽하게 이해하는 것은 아니며 거부하기로 결정했습니다. 이것은 복제본에 대한 답변입니다.

그리고 여기에서 모든 것을 고치기 위해 나는 그것을 스스로 알아 내고 단단히 잊혀진 것을 기억해야했습니다. 다음은 완성된 코드입니다.
 
Sergey Maksiutenko :

귀찮게 하지마.

당신이 나를 도울 수 없다는 것을 깨달았습니다.

#property strict 제거, #property 라이브러리 를 제외한 모든 속성 제거

아무것도 도움이되지 않습니다.

내 디자인을 집에서 연결해 보고, 오류를 찾아보고,

문제가 있는 경우 올바른 코드를 게시하세요.

거래, 자동 거래 시스템 및 거래 전략 테스트에 관한 포럼

MQL4에 대한 모든 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론

알렉세이 빅토 로프 , 2018.10.03 11:56


그리고 여기에서 모든 것을 고치기 위해 나는 그것을 스스로 알아 내고 단단히 잊어 버린 것을 기억해야했습니다 . 다음은 완성된 코드입니다.
작업 코드가 남아 있습니다.
 
하, 문제를 알아 냈습니다! 나는 왜 모든 것이 나에게 효과가 있고 그는 그렇지 않은지 궁금합니다! 만약 그가 \Include \Libraries \Experts \Scripts에 어떤 파일을 가지고 있는지 보여 준다면, 서비스 데스크에 그것을 오류로 기록하는 것도 가능할 것입니다!
 
Sergey Maksitutenko 글쎄요, 필요한 폴더의 내용을 게시할 준비가 되었습니다. 그렇지 않으면 당신을 트롤로 간주하겠습니다! 이 문제를 재현하고 당신에게 무슨 일이 일어났는지 알고 있기 때문에!
 

저는 XP, MT4 1090을 사용 중이므로 업데이트가 없습니다.

MT4에서 시간 눈금을 변경하면 차트 가 계속 왼쪽 또는 오른쪽으로 이동합니다. 큰 눈금에서 작은 눈금으로(예: 매일에서 시간 단위로) 전환하면 반년 전의 데이터가 화면에 나타납니다. . 더 작은 것에서 더 큰 것으로 전환하면 마지막 10개의 양초만 그립니다. 일정을 받아들일 수 있는 형태로 만들기 위해서는 끊임없이 몸을 움직여야 하기 때문에 짜증이 난다.

편의를 위해 키보드에서 눈금을 전환하고 차트를 끝으로 이동하는 코드를 작성했습니다.


무효 OnChartEvent(const int id,

const long &lparam,

const 이중 &dparam,

const 문자열(&sparam)

{

문자열 키1_값="1";

문자열 키2_값="2";

문자열 키3_값="3";


if(StringGetChar(Key1_Value,0)==lparam)

ChartSetSymbolPeriod(0, NULL, 5);

if(StringGetChar(Key2_Value,0)==lparam)

ChartSetSymbolPeriod(0, NULL, 60);

if(StringGetChar(Key3_Value,0)==lparam)

ChartSetSymbolPeriod(0,NULL,1440);

ChartNavigate(0,CHART_END,0);

}


모든 것이 작동하지만 ChartNavigate는 차트를 제자리에 "고정"하고 왼쪽으로 스크롤하는 것을 방지합니다. 어떻게 이기나요?

 
psyman :

저는 XP, MT4 1090을 사용 중이므로 업데이트가 없습니다.

MT4에서 시간 눈금을 변경하면 차트 가 계속 왼쪽 또는 오른쪽으로 이동합니다. 큰 눈금에서 작은 눈금으로(예: 매일에서 시간 단위로) 전환하면 반년 전의 데이터가 화면에 나타납니다. . 더 작은 것에서 더 큰 것으로 전환하면 마지막 10개의 양초만 그립니다. 일정을 받아들일 수 있는 형태로 만들기 위해서는 끊임없이 몸을 움직여야 하기 때문에 짜증이 난다.

편의를 위해 키보드에서 눈금을 전환하고 차트를 끝으로 이동하는 코드를 작성했습니다.

그래프 자체를 이동하는 버튼이 있습니다

하나

 


예를 들어 추세선을 작성해야 하는 경우 자동 스크롤을 사용하면 차트를 왼쪽으로 스크롤할 수 없습니다.

또한 새로운 진드기가 도착할 때만 작동합니다.

 
psyman :


예를 들어 추세선을 작성해야 하는 경우 자동 스크롤을 사용하면 차트를 왼쪽으로 스크롤할 수 없습니다.

또한 새로운 진드기가 도착할 때만 작동합니다.

그럼

 void OnChartEvent ( const int id,
                   const long &lparam,
                   const double &dparam,
                   const string &sparam)
{
if (id== CHARTEVENT_KEYDOWN )
   {
   if (lparam== '1' )
       ChartSetSymbolPeriod ( 0 , _Symbol , PERIOD_M5 );

   if (lparam== '2' )
       ChartSetSymbolPeriod ( 0 , _Symbol , PERIOD_H1 );

   if (lparam== '3' )
       ChartSetSymbolPeriod ( 0 , _Symbol , PERIOD_D1 );

     ChartNavigate ( 0 , CHART_END , 0 );
   }
}
 
정말 감사합니다.