오류, 버그, 질문 - 페이지 3078 1...307130723073307430753076307730783079308030813082308330843085...3184 새 코멘트 Igor Petrov 2021.09.02 14:33 #30771 fxsaber # : 시각화 도우미가 항상 거래 환경과 동기화되는 것은 아닙니다. 저것들. 오래된 정보가 표시될 수 있습니다. 현재 것은 항상 EA에 있습니다. 이것은 Expert Advisor가 한 가지를 말하고 Visualizer가 다른 것을 말할 때 매우 일반적인 질문입니다. 확인. 이해 감사합니다. 원칙적으로 어드바이저는 논리적으로 계속 작업하며 실제로는 시각적으로만 주문이 실행되며 이는 나중에 볼 수 있습니다. fxsaber 2021.09.02 14:42 #30772 Igor Petrov # : 확인. 이해 감사합니다. 원칙적으로 어드바이저는 논리적으로 계속 작업하며 실제로는 시각적으로만 주문이 실행되며 이는 나중에 볼 수 있습니다. 동기화된 상황을 적시에 보려면 테스터가 중지된 후 다음 틱을 기다려야 합니다. 예를 들어, 흥미로운 순간이 있기 5초 전으로 빠르게 되감고 다음 틱마다 일시중지 및 F12 앞으로 이동할 수 있습니다. 이 모든 틱은 올바르게 렌더링됩니다. 동기화되지 않은 것은 주석에 현재 틱 시간(밀리초 단위)을 출력하고 Visualizer의 Market Watch가 표시하는 것과 비교하여 식별할 수 있습니다. 불일치가 있는 경우 - 동기화되지 않습니다. ZY 디버거에 의해 중지되었을 때(또는 일시 중지가 눌렸을 때) 시각화 도우미의 동기화는 물론 오래전에 수행했어야 합니다. 작은 도움? 이동 평균에서 이동 평균 [아카이브!] 포럼을 어지럽히 지 Igor Makanu 2021.09.02 15:15 #30773 Igor Makanu # : BarsCalculated() https://www.mql5.com/ru/docs/series/barscalculated 그것은 무엇을 반환합니까? - OnCalculate()에서 계산이 종료된 후 return(rates_total)에서 표시기가 반환된 숫자입니까? 확인됨, 예 BarsCalculated()는 return(rate_total)입니다. 인도 A: int OnCalculate... { static int cnt = 0 ; cnt++; Print ( "cnt = " , cnt); return (cnt); } 산업 B: int OnInit () { handle = iCustom ( NULL , PERIOD_M1 , "tst_code\\A"); return ( INIT_SUCCEEDED ); } int OnCalculate... { double tmp[]; int bc = BarsCalculated (handle); if (bc == - 1 ) return (rates_total); int copy = CopyBuffer (handle, 0 , 0 , 1 , tmp); Print (" BarsCalculated = ", bc); return (rates_total); } H1에 표시기 B 실행, 로그: 2021.09.02 16:11:44.872 A (EURUSD,M1) cnt=1 2021.09.02 16:11:44.873 A (EURUSD,M1) cnt = 2 2021.09.02 16:11:44.998 A (EURUSD,M1) cnt=3 2021.09.02 16:11:44.998 B (EURUSD,H1) BarsCalculated = 3 2021.09.02 16:11:46.617 A (EURUSD,M1) cnt=4 2021.09.02 16:11:46.617 B (EURUSD,H1) BarsCalculated = 4 2021.09.02 16:11:46.663 A (EURUSD,M1) cnt=5 2021.09.02 16:11:46.663 B (EURUSD,H1) BarsCalculated = 5 2021.09.02 16:11:46.671 A (EURUSD,M1) cnt = 6 2021.09.02 16:11:46.671 B (EURUSD,H1) BarsCalculated = 6 2021.09.02 16:11:46.684 A (EURUSD,M1) cnt=7 2021.09.02 16:11:46.685 B (EURUSD,H1) BarsCalculated = 7 2021.09.02 16:11:46.697 A (EURUSD,M1) cnt=8 2021.09.02 16:11:46.697 B (EURUSD,H1) BarsCalculated = 8 2021.09.02 16:11:47.008 A (EURUSD,M1) 센트 = 9 2021.09.02 16:11:47.008 B (EURUSD,H1) BarsCalculated = 9 2021.09.02 16:11:47.029 A (EURUSD,M1) cnt = 10 2021.09.02 16:11:47.029 B (EURUSD,H1) BarsCalculated = 10 2021.09.02 16:11:47.502 A (EURUSD,M1) cnt = 11 2021.09.02 16:11:47.502 B (EURUSD,H1) BarsCalculated = 11 2021.09.02 16:11:47.614 A (EURUSD,M1) cnt = 12 2021.09.02 16:11:47.614 B (EURUSD,H1) BarsCalculated = 12 2021.09.02 16:11:47.620 A (EURUSD,M1) cnt = 13 2021.09.02 16:11:47.620 B (EURUSD,H1) BarsCalculated = 13 2021.09.02 16:11:47.667 A (EURUSD,M1) cnt = 14 2021.09.02 16:11:47.667 B (EURUSD,H1) BarsCalculated = 14 2021.09.02 16:11:47.713 A (EURUSD,M1) cnt = 15 2021.09.02 16:11:47.713 B (EURUSD,H1) BarsCalculated = 15 2021.09.02 16:11:47.726 A (EURUSD,M1) cnt=16 2021.09.02 16:11:47.726 B (EURUSD,H1) BarsCalculated = 16 Errors, bugs, questions BrainSystem: Trading System Development [Archive!] Pure mathematics, physics, SEM 2021.09.02 17:59 #30774 안녕하세요! 문제를 해결하기 위해 작동하지 않는 것이 있습니다. 처음 시작할 때 모든 막대를 처리해야 하며 처리 후에는 마지막 막대만 처리해야 합니다. 처음에는 0을 인쇄한 다음 각 새 막대의 마지막 막대만 인쇄하고 중간 막대는 인쇄하지 않습니다. 실수는 어디에 있습니까? 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[]) { for ( int i = prev_calculated; i <= prev_calculated && i < rates_total && ! IsStopped (); i++) { Print (i); }; return (rates_total); } Valeriy Yastremskiy 2021.09.02 18:18 #30775 SEM # : 안녕하세요! 문제를 해결하기 위해 작동하지 않는 것이 있습니다. 처음 시작할 때 모든 막대를 처리해야 하며 처리 후에는 마지막 막대만 처리해야 합니다. 처음에는 0을 인쇄한 다음 각 새 막대의 마지막 막대만 인쇄하고 중간 막대는 인쇄하지 않습니다. 실수는 어디에 있습니까? 또는 i-- 또는 i는 식 1 루프에서 0임) 모든 것이 올바르게 인쇄됨) 이것은 첫 번째 실행을 위한 것입니다. 그런 다음 새로운 바를 잡는 고전에 따르면. mktr8591 2021.09.02 18:57 #30776 SEM # : 안녕하세요! 문제를 해결하기 위해 작동하지 않는 것이 있습니다. 처음 시작할 때 모든 막대를 처리해야 하며 처리 후에는 마지막 막대만 처리해야 합니다. 처음에는 0을 인쇄한 다음 각 새 막대의 마지막 막대만 인쇄하고 중간 막대는 인쇄하지 않습니다. 실수는 어디에 있습니까? 우선 다음과 같이 수정하려고 합니다. for ( int i = prev_calculated; i >= prev_calculated && i < rates_total && ! IsStopped (); i++) { Print (i); }; Михаил Савченко 2021.09.02 19:20 #30777 모두에게 좋은 하루. 이 문제에 직면한 사람이 있으면 알려주십시오. 오늘 모스크바 시간 10시까지 MT5에서는 모든 것이 정상이었습니다. 열린 주문, 중지 및 이익을 설정합니다. 모스크바 시간 10시 이후 주문을 열 때, 스탑 또는 이익을 넣을 때 배달이 대기열에서 대기하고 10분 이상 후에 배치됩니다. 그리고 그것은 여전히 있습니다. mktr8591 2021.09.02 19:23 #30778 Михаил Савченко # : 모두에게 좋은 하루. 이 문제에 직면한 사람이 있으면 알려주십시오. 오늘 모스크바 시간 10시까지 MT5에서는 모든 것이 정상이었습니다. 열린 주문, 중지 및 이익을 설정합니다. 10시 이후에는 주문 오픈, 스탑, 이익 시 배달이 대기열에 대기하고 10분 이상 후에는 배치됩니다. 그리고 그것은 여전히 있습니다. 수동 거래? 어떤 브로커? Михаил Савченко 2021.09.02 19:25 #30779 mktr8591 # : 수동 거래? 어떤 브로커? 예, 시장에서 수동으로 이동합니다. 피남. SEM 2021.09.02 20:24 #30780 mktr8591 # : 우선 다음과 같이 수정하려고 합니다. 고맙습니다! 도움이 되었습니다. 1...307130723073307430753076307730783079308030813082308330843085...3184 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
시각화 도우미가 항상 거래 환경과 동기화되는 것은 아닙니다. 저것들. 오래된 정보가 표시될 수 있습니다. 현재 것은 항상 EA에 있습니다.
이것은 Expert Advisor가 한 가지를 말하고 Visualizer가 다른 것을 말할 때 매우 일반적인 질문입니다.
확인. 이해 감사합니다. 원칙적으로 어드바이저는 논리적으로 계속 작업하며 실제로는 시각적으로만 주문이 실행되며 이는 나중에 볼 수 있습니다.
확인. 이해 감사합니다. 원칙적으로 어드바이저는 논리적으로 계속 작업하며 실제로는 시각적으로만 주문이 실행되며 이는 나중에 볼 수 있습니다.
동기화된 상황을 적시에 보려면 테스터가 중지된 후 다음 틱을 기다려야 합니다.
예를 들어, 흥미로운 순간이 있기 5초 전으로 빠르게 되감고 다음 틱마다 일시중지 및 F12 앞으로 이동할 수 있습니다. 이 모든 틱은 올바르게 렌더링됩니다.
동기화되지 않은 것은 주석에 현재 틱 시간(밀리초 단위)을 출력하고 Visualizer의 Market Watch가 표시하는 것과 비교하여 식별할 수 있습니다. 불일치가 있는 경우 - 동기화되지 않습니다.
ZY 디버거에 의해 중지되었을 때(또는 일시 중지가 눌렸을 때) 시각화 도우미의 동기화는 물론 오래전에 수행했어야 합니다.
BarsCalculated() https://www.mql5.com/ru/docs/series/barscalculated
그것은 무엇을 반환합니까? - OnCalculate()에서 계산이 종료된 후 return(rates_total)에서 표시기가 반환된 숫자입니까?
확인됨, 예 BarsCalculated()는 return(rate_total)입니다.
인도 A:
int OnCalculate... { static int cnt = 0 ; cnt++; Print ( "cnt = " , cnt); return (cnt); }산업 B:
H1에 표시기 B 실행, 로그:
2021.09.02 16:11:44.872 A (EURUSD,M1) cnt=1
2021.09.02 16:11:44.873 A (EURUSD,M1) cnt = 2
2021.09.02 16:11:44.998 A (EURUSD,M1) cnt=3
2021.09.02 16:11:44.998 B (EURUSD,H1) BarsCalculated = 3
2021.09.02 16:11:46.617 A (EURUSD,M1) cnt=4
2021.09.02 16:11:46.617 B (EURUSD,H1) BarsCalculated = 4
2021.09.02 16:11:46.663 A (EURUSD,M1) cnt=5
2021.09.02 16:11:46.663 B (EURUSD,H1) BarsCalculated = 5
2021.09.02 16:11:46.671 A (EURUSD,M1) cnt = 6
2021.09.02 16:11:46.671 B (EURUSD,H1) BarsCalculated = 6
2021.09.02 16:11:46.684 A (EURUSD,M1) cnt=7
2021.09.02 16:11:46.685 B (EURUSD,H1) BarsCalculated = 7
2021.09.02 16:11:46.697 A (EURUSD,M1) cnt=8
2021.09.02 16:11:46.697 B (EURUSD,H1) BarsCalculated = 8
2021.09.02 16:11:47.008 A (EURUSD,M1) 센트 = 9
2021.09.02 16:11:47.008 B (EURUSD,H1) BarsCalculated = 9
2021.09.02 16:11:47.029 A (EURUSD,M1) cnt = 10
2021.09.02 16:11:47.029 B (EURUSD,H1) BarsCalculated = 10
2021.09.02 16:11:47.502 A (EURUSD,M1) cnt = 11
2021.09.02 16:11:47.502 B (EURUSD,H1) BarsCalculated = 11
2021.09.02 16:11:47.614 A (EURUSD,M1) cnt = 12
2021.09.02 16:11:47.614 B (EURUSD,H1) BarsCalculated = 12
2021.09.02 16:11:47.620 A (EURUSD,M1) cnt = 13
2021.09.02 16:11:47.620 B (EURUSD,H1) BarsCalculated = 13
2021.09.02 16:11:47.667 A (EURUSD,M1) cnt = 14
2021.09.02 16:11:47.667 B (EURUSD,H1) BarsCalculated = 14
2021.09.02 16:11:47.713 A (EURUSD,M1) cnt = 15
2021.09.02 16:11:47.713 B (EURUSD,H1) BarsCalculated = 15
2021.09.02 16:11:47.726 A (EURUSD,M1) cnt=16
2021.09.02 16:11:47.726 B (EURUSD,H1) BarsCalculated = 16
안녕하세요! 문제를 해결하기 위해 작동하지 않는 것이 있습니다.
처음 시작할 때 모든 막대를 처리해야 하며 처리 후에는 마지막 막대만 처리해야 합니다.
처음에는 0을 인쇄한 다음 각 새 막대의 마지막 막대만 인쇄하고 중간 막대는 인쇄하지 않습니다.
실수는 어디에 있습니까?
안녕하세요! 문제를 해결하기 위해 작동하지 않는 것이 있습니다.
처음 시작할 때 모든 막대를 처리해야 하며 처리 후에는 마지막 막대만 처리해야 합니다.
처음에는 0을 인쇄한 다음 각 새 막대의 마지막 막대만 인쇄하고 중간 막대는 인쇄하지 않습니다.
실수는 어디에 있습니까?
안녕하세요! 문제를 해결하기 위해 작동하지 않는 것이 있습니다.
처음 시작할 때 모든 막대를 처리해야 하며 처리 후에는 마지막 막대만 처리해야 합니다.
처음에는 0을 인쇄한 다음 각 새 막대의 마지막 막대만 인쇄하고 중간 막대는 인쇄하지 않습니다.
실수는 어디에 있습니까?
우선 다음과 같이 수정하려고 합니다.
모두에게 좋은 하루. 이 문제에 직면한 사람이 있으면 알려주십시오. 오늘 모스크바 시간 10시까지 MT5에서는 모든 것이 정상이었습니다. 열린 주문, 중지 및 이익을 설정합니다.
모스크바 시간 10시 이후 주문을 열 때, 스탑 또는 이익을 넣을 때 배달이 대기열에서 대기하고 10분 이상 후에 배치됩니다. 그리고 그것은 여전히 있습니다.
모두에게 좋은 하루. 이 문제에 직면한 사람이 있으면 알려주십시오. 오늘 모스크바 시간 10시까지 MT5에서는 모든 것이 정상이었습니다. 열린 주문, 중지 및 이익을 설정합니다.
10시 이후에는 주문 오픈, 스탑, 이익 시 배달이 대기열에 대기하고 10분 이상 후에는 배치됩니다. 그리고 그것은 여전히 있습니다.
수동 거래? 어떤 브로커?
우선 다음과 같이 수정하려고 합니다.