오류, 버그, 질문 - 페이지 1390 1...138313841385138613871388138913901391139213931394139513961397...3184 새 코멘트 Renat Fatkhullin 2015.10.09 22:02 #13891 지표의 완전한 생성에 대한 지표를 인터넷에서 기다리지 마십시오. 표시기 를 만들고 제어를 반환하면 모든 환경과 기록이 나중에 준비되고 재계산 코드가 호출됩니다. Ilya Malev 2015.10.09 22:04 #13892 Renat Fatkhullin : 지표가 완전히 생성될 때까지 인터넷에서 기다리지 마십시오. 표시기를 만들고 제어를 반환하면 모든 환경과 기록이 나중에 준비되고 재계산 코드가 호출됩니다. 감사합니다. 즉, OnInit()에서 돌아와서 데이터를 받을 때마다 4806을 확인해야 합니까? Renat Fatkhullin 2015.10.09 22:54 #13893 모든 데이터 읽기 위치에서 Ilya Malev 2015.10.11 12:38 #13894 여기에서 표시기에 액세스하고 해당 값은 OnCalculate 내에서 계산됩니다. 무한정 기다릴 수 있으며 재계산이 없습니다. D1 기간 차트에서 실행 int i_ich= INVALID_HANDLE ; double ind_buf[]; int OnInit (){ i_ich= iIchimoku ( Symbol (), PERIOD_H4 , 9 , 26 , 52 ); if (i_ich== INVALID_HANDLE ){ Print ( "Невозможно создать индиктор Ишимоку!" ); return ( INIT_FAILED ); } SetIndexBuffer ( 0 , ind_buf, INDICATOR_DATA ); ArraySetAsSeries (ind_buf, true ); return ( INIT_SUCCEEDED ); } int OnCalculate ( const int rates_total, const int prev_calculated, const datetime & time[], const double & open[], const double & high[], const double & low[], const double & close[], const long & tick_volume[], const long & volume[], const int & spread[]){ double temp[]; int copied= CopyBuffer (i_ich, 0 , 0 , 1 ,temp); if (copied<= 0 ){ datetime now= TimeLocal (); while ( BarsCalculated (i_ich)<= 0 && ! IsStopped ()){ Comment ( "Ждем пересчета индикатора Ишимоку... " , int ( TimeLocal ()-now)); } if ( BarsCalculated (i_ich)> 0 ){ Print ( "Расчитано " , BarsCalculated (i_ich), " баров за " , int ( TimeLocal ()-now), " секунд" ); } Comment ( "" ); } return (rates_total); } Ichimoku의 판독값이 계산되지 않는 이유를 설명하십시오. Vladimir Karputov 2015.10.11 13:02 #13895 Ilya Malev : 여기에서 표시기에 액세스하고 해당 값은 OnCalculate 내에서 계산됩니다. 무한정 기다릴 수 있으며 재계산이 없습니다. D1 기간 차트에서 실행 Ichimoku의 판독값이 계산되지 않는 이유를 설명하십시오. 그렇다면: //+------------------------------------------------------------------+ //| ProjectName | //| Copyright 2012, CompanyName | //| http://www.companyname.net | //+------------------------------------------------------------------+ #property indicator_chart_window #property indicator_buffers 1 #property indicator_plots 0 int i_ich= INVALID_HANDLE ; double ind_buf[]; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int OnInit () { i_ich= iIchimoku ( Symbol (), PERIOD_H4 , 9 , 26 , 52 ); if (i_ich== INVALID_HANDLE ) { Print ( "Невозможно создать индиктор Ишимоку!" ); return ( INIT_FAILED ); } SetIndexBuffer ( 0 ,ind_buf, INDICATOR_DATA ); ArraySetAsSeries (ind_buf, true ); return ( INIT_SUCCEEDED ); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int OnCalculate ( const int rates_total, const int prev_calculated, const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[], const long &tick_volume[], const long &volume[], const int &spread[]) { static int count; Print (count); double temp[]; datetime now= TimeLocal (); int copied= CopyBuffer (i_ich, 0 , 0 , 1 ,temp); if (copied> 0 ) Print ( "Расчитано " , BarsCalculated (i_ich), " баров за " , int ( TimeLocal ()-now), " секунд" ); count++; return (rates_total); } //+------------------------------------------------------------------+ ? Renat Fatkhullin 2015.10.11 13:07 #13896 표시기 코드에서 대기를 반복해서는 안 됩니다. 스크립트와 Expert Advisors에서는 가능하지만 지표에서는 절대 불가능합니다. 즉, 지표에서 다른 사람의 데이터를 계산하고 요청하는 전략은 다음과 같아야 합니다. 데이터 요청이 실패하면 즉시 종료하고 다음 틱에 대한 계산을 연기합니다. 다음 틱/콜에서 우리는 필요한 것을 다시 요청하려고 시도할 것입니다. Ilya Malev 2015.10.11 13:09 #13897 Karputov Vladimir : 그렇다면: ? 출력 "0"(오늘은 일요일이므로 OnCalculate 가 다시 시작되지 않음) Ilya Malev 2015.10.11 13:10 #13898 Renat Fatkhullin : 표시기 코드에서 대기를 반복해서는 안 됩니다. 스크립트와 Expert Advisors에서는 가능하지만 지표에서는 절대 불가능합니다. 즉, 지표에서 다른 사람의 데이터를 계산하고 요청하는 전략은 다음과 같아야 합니다. 데이터 요청이 실패하면 즉시 종료하고 다음 틱에 대한 계산을 연기합니다. 다음 틱/콜에서 우리는 필요한 것을 다시 요청하려고 시도할 것입니다. 좋습니다. 하지만 다음 틱을 기다리지 않고 한 번의 실행으로 표시기 판독값 을 계산해야 하는 경우 어떻게 해야 합니까? 예를 들어 주말이나 그냥 저수시라면 분당 틱은 언제 나오나요? OnCalculate 대신 OnTimer를 사용하시겠습니까? Vladimir Karputov 2015.10.11 13:10 #13899 Ilya Malev : 출력 "0"(오늘은 일요일이므로 OnCalculate 가 다시 시작되지 않음) 테스터에 테스터에! 그리고 주말에는 차트를 마우스 오른쪽 버튼으로 클릭하고 "새로 고침"해야 합니다. Ilya Malev 2015.10.11 13:18 #13900 "업데이트"를 클릭하면 모든 것이 계산되었습니다. 마찬가지로, OnCalculate/OnTimer 등의 첫 번째 호출 이전에 인터넷에서 생성된 지표의 데이터를 계산하면 더 편리할 것입니다. 또는 초기화 후 표시기 내부의 주기에서 계산될 때까지 프로그래밍 방식으로 기다릴 수 있습니다. 지표를 계산하려면 차트에서 "새로고침"을 여러 번 눌러야 합니다. 그는 그것을 필요로합니까? 그는 MT5의 몇 가지 장점에도 불구하고 오래된 MT4를 기억하고 계속 사용할 것입니다. 1...138313841385138613871388138913901391139213931394139513961397...3184 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
지표의 완전한 생성에 대한 지표를 인터넷에서 기다리지 마십시오.
표시기 를 만들고 제어를 반환하면 모든 환경과 기록이 나중에 준비되고 재계산 코드가 호출됩니다.
지표가 완전히 생성될 때까지 인터넷에서 기다리지 마십시오.
표시기를 만들고 제어를 반환하면 모든 환경과 기록이 나중에 준비되고 재계산 코드가 호출됩니다.
여기에서 표시기에 액세스하고 해당 값은 OnCalculate 내에서 계산됩니다. 무한정 기다릴 수 있으며 재계산이 없습니다. D1 기간 차트에서 실행
Ichimoku의 판독값이 계산되지 않는 이유를 설명하십시오.
여기에서 표시기에 액세스하고 해당 값은 OnCalculate 내에서 계산됩니다. 무한정 기다릴 수 있으며 재계산이 없습니다. D1 기간 차트에서 실행
Ichimoku의 판독값이 계산되지 않는 이유를 설명하십시오.
그렇다면:
?표시기 코드에서 대기를 반복해서는 안 됩니다. 스크립트와 Expert Advisors에서는 가능하지만 지표에서는 절대 불가능합니다.
즉, 지표에서 다른 사람의 데이터를 계산하고 요청하는 전략은 다음과 같아야 합니다. 데이터 요청이 실패하면 즉시 종료하고 다음 틱에 대한 계산을 연기합니다. 다음 틱/콜에서 우리는 필요한 것을 다시 요청하려고 시도할 것입니다.
그렇다면:
?표시기 코드에서 대기를 반복해서는 안 됩니다. 스크립트와 Expert Advisors에서는 가능하지만 지표에서는 절대 불가능합니다.
즉, 지표에서 다른 사람의 데이터를 계산하고 요청하는 전략은 다음과 같아야 합니다. 데이터 요청이 실패하면 즉시 종료하고 다음 틱에 대한 계산을 연기합니다. 다음 틱/콜에서 우리는 필요한 것을 다시 요청하려고 시도할 것입니다.
출력 "0"(오늘은 일요일이므로 OnCalculate 가 다시 시작되지 않음)
"업데이트"를 클릭하면 모든 것이 계산되었습니다. 마찬가지로, OnCalculate/OnTimer 등의 첫 번째 호출 이전에 인터넷에서 생성된 지표의 데이터를 계산하면 더 편리할 것입니다.
또는 초기화 후 표시기 내부의 주기에서 계산될 때까지 프로그래밍 방식으로 기다릴 수 있습니다.
지표를 계산하려면 차트에서 "새로고침"을 여러 번 눌러야 합니다. 그는 그것을 필요로합니까? 그는 MT5의 몇 가지 장점에도 불구하고 오래된 MT4를 기억하고 계속 사용할 것입니다.