초보자의 질문 MQL5 MT5 MetaTrader 5 - 페이지 740

 

여기에 질문을 복제하겠습니다. 지표에 아무도 대답하지 않습니다.

MQL5를 배우기 시작했습니다. 프로그래밍 경험이 없기 때문에 몇 가지 질문과 오해가 생깁니다. 그들 중 일부는 예제의 분석과 부분적으로는 타이핑을 통해 독립적으로 해결되지만 일부 요점은 바로 이해할 수 없습니다. 나는 두 줄의 도구로 차트의 기본 창에 출력을 얻기 위해 간단한 것으로 공부하기 시작했습니다. 1000바 전 현재 시간대에 현재 및 추가(관련, 나중에 참고) 계측기 종료를 기반으로 합니다. 관련 상품은 다음 시리즈의 선물이며 유동성이 거의 없으며 항상 데이터에 약간의 격차가 있습니다. 거래 횟수는 주요 선물 시리즈만큼 빈번하지 않습니다. 작업이 완료된 것처럼 보이지만 오류가 있습니다. 스무딩이 나에게 유용한지 말할 수 없기 때문에 iMA를 마침표 1로 사용하여 필요한 경우 변경 없이 매끄럽게 할 수 있도록 했습니다.

질문은 다음과 같습니다.

1. 컴파일할 때 iMA 버퍼를 어레이에 복사할 때 "형식 변환으로 인한 데이터 손실 가능성" 경고가 표시됩니다. 그것은 무엇이며 왜, 어떤 종류의 변환에 대해 이야기하고 있습니까? 선은 정상적으로 그려졌고 아무것도 빠진 것 같지 않았습니다.

2. 메인 차트 창에서 두 종목의 인디케이터와 선 모양을 확인한 후 동기화되지 않은 것을 확인했습니다. 저것들. 첫 번째 도구는 정상이며 메인 창의 촛대 차트에 해당합니다. 두 번째는 틈이 있는 (더 적은 액체)이므로 점차적으로 "압착"되어 동기화되지 않습니다. 그리고 어떻게든 시간을 동기화해야 합니다. 이것은 여전히 나에게 너무 많습니다. 누락된 내용을 이해하려면 편집 내용을 명확하게 볼 필요가 있습니다.

다음은 그것이 어떻게 보이는지 스크린샷입니다. 노란색 선은 녹색 선과 관련하여 동기화해야 하는 것입니다. 날짜에 공백이있는 노란색 선에는 날짜를 건너 뛰는 사전로드가 아니라 이전 값과 다음 값이 단순히 "연결"되었습니다. 애플리케이션 코드.

파일:
 
ottenand :

여기에 질문을 복제하겠습니다. 지표에 아무도 대답하지 않습니다.

MQL5를 배우기 시작했습니다. 프로그래밍 경험이 없기 때문에 몇 가지 질문과 오해가 생깁니다. 그들 중 일부는 예제의 분석과 부분적으로는 타이핑을 통해 독립적으로 해결되지만 일부 요점은 바로 이해할 수 없습니다. 나는 두 줄의 도구로 차트의 기본 창에 출력을 얻기 위해 간단한 것으로 공부하기 시작했습니다. 1000바 전 현재 시간대에 현재 및 추가(관련, 나중에 참고) 계측기 종료를 기반으로 합니다. 관련 상품은 다음 시리즈의 선물이며 유동성이 거의 없으며 항상 데이터에 약간의 격차가 있습니다. 거래 횟수는 주요 선물 시리즈만큼 빈번하지 않습니다. 작업이 완료된 것처럼 보이지만 오류가 있습니다. 스무딩이 나에게 유용한지 말할 수 없기 때문에 iMA를 마침표 1로 사용하여 필요한 경우 변경 없이 매끄럽게 할 수 있도록 했습니다.

질문은 다음과 같습니다.

1. 컴파일할 때 iMA 버퍼를 어레이에 복사할 때 "형식 변환으로 인한 데이터 손실 가능성" 경고가 표시됩니다. 그것은 무엇이며 왜, 어떤 종류의 변환에 대해 이야기하고 있습니까? 선은 정상적으로 그려졌고 아무것도 빠진 것 같지 않았습니다.

2. 메인 차트 창에서 두 종목의 인디케이터와 선 모양을 확인한 후 동기화되지 않은 것을 확인했습니다. 저것들. 첫 번째 도구는 정상이며 메인 창의 촛대 차트에 해당합니다. 두 번째는 틈이 있는 (더 적은 액체)이므로 점차적으로 "압착"되어 동기화되지 않습니다. 그리고 어떻게든 시간을 동기화해야 합니다. 이것은 여전히 나에게 너무 많습니다. 누락된 내용을 이해하려면 편집 내용을 명확하게 볼 필요가 있습니다.

다음은 그것이 어떻게 보이는지 스크린샷입니다. 노란색 선은 녹색 선과 관련하여 동기화해야 하는 것입니다. 날짜에 공백이 있는 노란색 선에는 날짜를 건너뛰는 사전 로드가 아니라 다음 값과 단순히 이전 값의 "연결"이 있었습니다. 애플리케이션 코드.


1. 표시기 핸들은 int 유형이어야 합니다. 여기에서 예를 참조하십시오. CopyBuffer

 int    CopyBuffer ( 
   int        indicator_handle,     // handle индикатора 
   int        buffer_num,           // номер буфера индикатора 
   int        start_pos,             // откуда начнем  
   int        count,                 // сколько копируем 
   double     buffer[]               // массив, куда будут скопированы данные 
   );
 
Vladimir Karputov :


1. 표시기 핸들은 int 유형이어야 합니다. 여기에서 예를 참조하십시오. CopyBuffer

바로 이 순간을 간과하고 컴파일 오류가 사라졌습니다. 감사합니다!

그러나 현재의 주요 문제 - 동기화되지 않은 상태로 유지됩니다. 솔루션이 없으면 예를 들어 내가 테스트할 기기 간에 수학 연산을 수행하는 것이 불가능할 것입니다.

 
ottenand :

바로 이 순간을 간과하고 컴파일 오류가 사라졌습니다. 감사합니다!

그러나 현재의 주요 문제 - 동기화되지 않은 상태로 유지됩니다. 솔루션이 없으면 예를 들어 내가 테스트할 기기 간에 수학 연산을 수행하는 것이 불가능할 것입니다.


내가 당신이라면 코드를 올바르게 작성하는 것으로 시작할 것입니다. 사실 이제 당신의 스타일은 무모한 "4"입니다. 즉, 검사가 없고 모든 것이 무작위입니다.

OnInit() 수정 시작:

  1. 핸들을 받은 후 정확성을 확인해야 합니다.
  2. 모든 것이 정상이면 "0"이 아니라 "INIT_SUCCEEDED"를 반환합니다.
이 모든 것이 iMA 예제에 있습니다. 그래야만 진행이 가능합니다.

 
Vladimir Karputov :


내가 당신이라면 코드를 올바르게 작성하는 것으로 시작할 것입니다. 사실 이제 당신의 스타일은 무모한 "4"입니다. 즉, 검사가 없고 모든 것이 무작위입니다.

OnInit() 수정 시작:

  1. 핸들을 받은 후 정확성을 확인해야 합니다.
  2. 모든 것이 정상이면 "0"이 아니라 "INIT_SUCCEEDED"를 반환합니다.
이 모든 것이 iMA 예제에 있습니다. 그래야만 진행이 가능합니다.

친구야, 누가 상위 5개는 때리고 4개는 아름답게 쓸 수 없다고 말했니?

PLATFORM에 관한 것이 아니라 특정 낙서의 머리에 ...

Preobrazhensky 교수는 폐허가 어디에 있는지에 대해 올바르게 말했습니다 - 옷장이 아니라 머리에 ...


 
Vladimir Karputov :


내가 당신이라면 코드를 올바르게 작성하는 것으로 시작할 것입니다. 사실 이제 당신의 스타일은 무모한 "4"입니다. 즉, 검사가 없고 모든 것이 무작위입니다.

OnInit() 수정 시작:

  1. 핸들을 받은 후 정확성을 확인해야 합니다.
  2. 모든 것이 정상이면 "0"이 아니라 "INIT_SUCCEEDED"를 반환합니다.
이 모든 것이 iMA 예제에 있습니다. 그래야만 진행이 가능합니다.

글쎄, 이제 내 스타일이 무엇인지 알게 될 것입니다) 사실, 나는 처음부터 다섯 번째 버전부터 바로 시작합니다)

감사합니다 1,2점 수정했습니다. 전체 걸림돌은 계산 블록에 있습니다. 시간에 따라 두 악기의 막대 위치를 어떻게 규정할지 고민하겠습니다. 그렇지 않으면 desichron 및 모든 동일한 경고 번호 4806.

파일:
 
ottenand :

글쎄, 이제 내 스타일이 무엇인지 알게 될 것입니다) 사실, 나는 처음부터 다섯 번째 버전부터 바로 시작합니다)

감사합니다 1,2점 수정했습니다. 전체 걸림돌은 계산 블록에 있습니다. 시간에 따라 두 악기의 막대 위치를 어떻게 규정할지 고민하겠습니다 . 그렇지 않으면 desichron 및 모든 동일한 경고 번호 4806.

쯧쯧! 바르게! 예를 들어 M1 선물 "A"에는 13분, 14분 및 15분에 막대가 있기 때문입니다. 그리고 선물 "B"에 따르면 13분 15분, 즉 구멍이 있습니다. 기사가 있던 곳에 "구멍"이라는 단어를 검색하십시오.
 
Vladimir Karputov :
쯧쯧! 바르게! 예를 들어 M1 선물 "A"에는 13분, 14분 및 15분에 막대가 있기 때문입니다. 그리고 선물 "B"에 따르면 13분 15분, 즉 구멍이 있습니다. 기사가 있던 곳에 "구멍"이라는 단어를 검색하십시오.
나는 이것에 대해 이야기하고 있습니다) 오류 번호 4806은 분명히 그런 이유로 옵니다. 알았어, 내가 볼게)
 

안녕하세요.

현재 막대의 추세선 가격을 찾는 방법을 알려주시겠습니까? ObjectGetDouble 을 통해 시도했지만 원하는 결과를 제공하지 않습니다. 코드 예:

   ObjectCreate ( 0 , "O_Resistance" , OBJ_TREND , 0 ,UpTime_2[ 0 ],UpFractal_2,UpTime_1[ 0 ],UpFractal_1);
   ObjectMove ( 0 , "O_Resistance" , 0 ,UpTime_2[ 0 ],UpFractal_2);
   ObjectMove ( 0 , "O_Resistance" , 1 ,UpTime_1[ 0 ],UpFractal_1);
   ObjectSetInteger ( 0 , "O_Resistance" , OBJPROP_RAY_RIGHT , true );
   ObjectSetInteger ( 0 , "O_Resistance" , OBJPROP_COLOR ,O_Resistance_Color);
   ObjectSetInteger ( 0 , "O_Resistance" , OBJPROP_STYLE ,O_Resistance_Style);
   ObjectSetInteger ( 0 , "O_Resistance" , OBJPROP_WIDTH ,O_Resistance_Width);


double O_ResistancePrice = ObjectGetDouble ( 0 , "O_Resistance" , OBJPROP_PRICE , 0 ); // при любом баре дает координату изначальной точки луча, а нужна цена
                                                                               // соответствующая текущему бару или первому
 
MaksGroup :

안녕하세요.

현재 막대의 추세선 가격을 찾는 방법을 알려주시겠습니까? ObjectGetDouble을 통해 시도했지만 원하는 결과를 제공하지 않습니다. 코드 예:

ObjectGetValueByShift()(MT4만 해당) , ObjectGetValueByTime() (MT4, MT5)
사유: