초보자의 질문 MQL5 MT5 MetaTrader 5 - 페이지 775 1...768769770771772773774775776777778779780781782...1503 새 코멘트 Aleksey Vyazmikin 2017.08.23 10:42 #7741 Vladimir Karputov : "... 1 단계 ..."라고 쓰여 있습니다. 위의 2단계 - 이제 스스로 생각해 보십시오. 즉, 충돌이 없는 여러 스레드가 어떻게 하나의 파일에 쓸 수 있는지 생각해 보십시오. 예, 문제의 사실은 그들이 할 수 없다는 것입니다 ... 네트워크 에이전트가 dll과 함께 작동할 수 없다는 것을 알고 있습니까? 테스터의 합격번호는 어떻게 알 수 있나요? 그러면 파일을 붙일 것은 무엇입니까 ... fxsaber 2017.08.23 12:10 #7742 Aleksey Vyazmikin : 에이전트가 하나의 파일에 쓰도록 가르치는 방법은 무엇입니까? 이제 모든 사람이 자신의 폴더에 자신의 파일을 생성합니다. 이는 좋지 않습니다. 에이전트 데이터를 하나의 파일에 쓰려면 프레임 모드를 사용해야 합니다. // Пример записи данных Агентов (включая Облачные) в один файл input int Range = 0 ; void OnTick () { // .... } // Файл открываем только в режимах одиночночного прогона или Фрейма. const int handle = (( MQLInfoInteger ( MQL_TESTER ) && ! MQLInfoInteger ( MQL_OPTIMIZATION )) || MQLInfoInteger ( MQL_FRAME_MODE )) ? FileOpen ( __FILE__ , FILE_WRITE | FILE_TXT ) : INVALID_HANDLE ; // Подготовка данных void GetData( string &Str, MqlTick &Ticks[], double &Balance ) { Str = "Hello World!" ; CopyTicks ( _Symbol , Ticks, COPY_TICKS_ALL , 0 , 2 ); // Последние два тика (пример) Balance = AccountInfoDouble ( ACCOUNT_BALANCE ); } // Запись данных void SaveData( const string &Str, const MqlTick &Ticks[], const double Balance ) { FileWrite (handle, Str); for ( int i = 0 ; i < ArraySize (Ticks); i++) FileWrite (handle, Ticks[i].bid); FileWrite (handle, Balance); } void OnTesterDeinit () { if (handle != INVALID_HANDLE ) FileClose (handle); ChartClose (); } #include <TypeToBytes.mqh> // https://www.mql5.com/ru/code/16280 double OnTester () { string Str; MqlTick Ticks[]; double Balance; GetData(Str, Ticks, Balance); // Подготовка данных для записи if ( MQLInfoInteger ( MQL_OPTIMIZATION )) // Оптимизация { CONTAINER< uchar > Container; // https://www.mql5.com/ru/forum/95447/page4#comment_5464205 Container[ 0 ] = Str; Container[ 1 ] = Ticks; Container[ 2 ] = Balance; FrameAdd ( NULL , 0 , 0 , Container.Data); // Отправили данные из Агента на Терминал } else // Одиночный прогон { if (handle != INVALID_HANDLE ) SaveData(Str, Ticks, Balance); // Данные будут записаны в MQL5\Files-папку Агента (не Терминала) FileClose (handle); } return ( 0 ); } void OnTesterPass () { if (handle != INVALID_HANDLE ) { ulong Pass; string Name; long ID; double Value; CONTAINER< uchar > Container; // https://www.mql5.com/ru/forum/95447/page4#comment_5464205 while ( FrameNext (Pass, Name, ID, Value, Container.Data)) { string Str; MqlTick Ticks[]; double Balance; // Получили данные от Агента Container[ 0 ].Get(Str); Container[ 1 ].Get(Ticks); Container[ 2 ].Get(Balance); // FileWrite(handle, Pass); // Если хочется записать номер прохода SaveData(Str, Ticks, Balance); // Данные будут записаны в MQL5\Files-папку Терминала (не Агента) } } } Aleksey Vyazmikin 2017.08.23 13:15 #7743 fxsaber : 에이전트 데이터를 하나의 파일에 쓰려면 프레임 모드를 사용해야 합니다. 고맙습니다! 공부가 필요합니다. "프레임 모드"란 무엇입니까? fxsaber 2017.08.23 18:10 #7744 Aleksey Vyazmikin : "프레임 모드"란 무엇입니까? https://www.mql5.com/ru/docs/optimization_frames Документация по MQL5: Работа с результатами оптимизации www.mql5.com Работа с результатами оптимизации - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5 Aleksey Vyazmikin 2017.08.24 15:58 #7745 fxsaber : https://www.mql5.com/ru/docs/optimization_frames 감사합니다. 정권에 대해 이해했습니다. 그런데 이 프레임에 100개의 지표를 묶음으로 전송할 수 있는지 이해가 되지 않았다. 설명에서 이해한 것처럼 각 프레임이 별도의 패스로 간주되기 때문에 한 프레임에 있는 이유는 무엇입니까? 아니면 제가 잘못 이해한 것입니까? 그리고 *.mqd 파일 형식에 대한 설명은 어디에서 찾을 수 있습니까? fxsaber 2017.08.25 09:38 #7746 Aleksey Vyazmikin : 그런데 이 프레임에 100개의 지표를 묶음으로 전송할 수 있는지 이해가 되지 않았다. 위의 예를 참조하십시오. 임의의 데이터는 수량에 관계없이 전송됩니다. Aleksey Vyazmikin 2017.08.27 12:30 #7747 fxsaber : 위의 예를 참조하십시오. 임의의 데이터가 임의의 양으로 전송됩니다. 질문이 많은데요, 여쭤봐도 될까요? 다음은 코드의 기능입니다. // Подготовка данных void GetData( string &Str, MqlTick &Ticks[], double &Balance ) { Str = "Hello World!" ; CopyTicks ( _Symbol , Ticks, COPY_TICKS_ALL , 0 , 2 ); // Последние два тика (пример) Balance = AccountInfoDouble ( ACCOUNT_BALANCE ); } 의미는 분명합니다. 데이터를 수집한 다음 기록합니다. 나는 왜 우리가 대괄호 안에 변수를 선언하는지 잘 이해하지 못하며, 변수 앞에 "&" 기호는 무엇을 의미합니까? Artyom Trishkin 2017.08.27 12:47 #7748 Aleksey Vyazmikin : 질문이 많은데요, 여쭤봐도 될까요? 다음은 코드의 기능입니다. 의미는 분명합니다. 데이터를 수집한 다음 기록합니다. 나는 왜 우리가 대괄호 안에 변수를 선언하는지 잘 이해하지 못하며, 변수 앞에 "&" 기호는 무엇을 의미합니까? 이것이 기본입니다. 형식 함수 매개변수 및 참조로 매개변수 전달 에 대한 도움말을 읽으십시오. Alexey Viktorov 2017.08.27 12:49 #7749 Aleksey Vyazmikin : 질문이 많은데요, 여쭤봐도 될까요? 다음은 코드의 기능입니다. 의미는 분명합니다. 데이터를 수집한 다음 기록합니다. 나는 왜 우리가 대괄호 안에 변수를 선언하는지 잘 이해하지 못하며, 변수 앞에 "&" 기호는 무엇을 의미합니까? 문서에서 참조 및 단순 유형의 매개변수로 전달할 수 있습니다. 이 경우 호출된 함수 내에서 이러한 매개변수의 수정은 참조로 전달된 해당 변수에 반영됩니다. 매개변수가 참조로 전달되었음을 나타내려면 데이터 유형 뒤에 & 수정자를 배치해야 합니다. 예시: void func( int & x, double & y, double & z[]) { double calculated_tp; ... for ( int i= 0 ; i< OrdersTotal (); i++) { if (i== ArraySize (z)) break ; if ( OrderSelect (i)== false ) break ; z[i]= OrderOpenPrice (); } x=i; y=calculated_tp; Документация по MQL5: Основы языка / Переменные / Формальные параметры www.mql5.com Основы языка / Переменные / Формальные параметры - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5 Aleksey Vyazmikin 2017.08.27 14:05 #7750 Artyom Trishkin : 이것들은 기본입니다. 형식 함수 매개변수 및 참조로 매개변수 전달 에 대한 도움말을 읽으십시오. 아마도 기본은 논쟁하지 않습니다. 코드를 입력할 수 없습니다. 시작이 어디이고 끝이 어디인지... 그래서 질문이 있습니다. 글쎄요, 이것은 링크(?)이지만 무엇에 대한 것입니까? " Str " 변수는 원래 여기에서 시작되었습니까? while ( FrameNext (Pass, Name, ID, Value, Container.Data)) { string Str; MqlTick Ticks[]; double Balance; // Получили данные от Агента Container[ 0 ].Get(Str); Container[ 1 ].Get(Ticks); Container[ 2 ].Get(Balance); // FileWrite(handle, Pass); // Если хочется записать номер прохода SaveData(Str, Ticks, Balance); // Данные будут записаны в MQL5\Files-папку Терминала (не Агента) } 1...768769770771772773774775776777778779780781782...1503 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
"... 1 단계 ..."라고 쓰여 있습니다.
위의 2단계 - 이제 스스로 생각해 보십시오. 즉, 충돌이 없는 여러 스레드가 어떻게 하나의 파일에 쓸 수 있는지 생각해 보십시오.
예, 문제의 사실은 그들이 할 수 없다는 것입니다 ...
네트워크 에이전트가 dll과 함께 작동할 수 없다는 것을 알고 있습니까?
테스터의 합격번호는 어떻게 알 수 있나요? 그러면 파일을 붙일 것은 무엇입니까 ...
에이전트가 하나의 파일에 쓰도록 가르치는 방법은 무엇입니까? 이제 모든 사람이 자신의 폴더에 자신의 파일을 생성합니다. 이는 좋지 않습니다.
에이전트 데이터를 하나의 파일에 쓰려면 프레임 모드를 사용해야 합니다.
에이전트 데이터를 하나의 파일에 쓰려면 프레임 모드를 사용해야 합니다.
고맙습니다! 공부가 필요합니다.
"프레임 모드"란 무엇입니까?
"프레임 모드"란 무엇입니까?
https://www.mql5.com/ru/docs/optimization_frames
https://www.mql5.com/ru/docs/optimization_frames
감사합니다. 정권에 대해 이해했습니다.
그런데 이 프레임에 100개의 지표를 묶음으로 전송할 수 있는지 이해가 되지 않았다. 설명에서 이해한 것처럼 각 프레임이 별도의 패스로 간주되기 때문에 한 프레임에 있는 이유는 무엇입니까? 아니면 제가 잘못 이해한 것입니까?
그리고 *.mqd 파일 형식에 대한 설명은 어디에서 찾을 수 있습니까?
그런데 이 프레임에 100개의 지표를 묶음으로 전송할 수 있는지 이해가 되지 않았다.
위의 예를 참조하십시오. 임의의 데이터는 수량에 관계없이 전송됩니다.
위의 예를 참조하십시오. 임의의 데이터가 임의의 양으로 전송됩니다.
질문이 많은데요, 여쭤봐도 될까요?
다음은 코드의 기능입니다.
의미는 분명합니다. 데이터를 수집한 다음 기록합니다.
나는 왜 우리가 대괄호 안에 변수를 선언하는지 잘 이해하지 못하며, 변수 앞에 "&" 기호는 무엇을 의미합니까?
질문이 많은데요, 여쭤봐도 될까요?
다음은 코드의 기능입니다.
의미는 분명합니다. 데이터를 수집한 다음 기록합니다.
나는 왜 우리가 대괄호 안에 변수를 선언하는지 잘 이해하지 못하며, 변수 앞에 "&" 기호는 무엇을 의미합니까?
질문이 많은데요, 여쭤봐도 될까요?
다음은 코드의 기능입니다.
의미는 분명합니다. 데이터를 수집한 다음 기록합니다.
나는 왜 우리가 대괄호 안에 변수를 선언하는지 잘 이해하지 못하며, 변수 앞에 "&" 기호는 무엇을 의미합니까?
참조 및 단순 유형의 매개변수로 전달할 수 있습니다. 이 경우 호출된 함수 내에서 이러한 매개변수의 수정은 참조로 전달된 해당 변수에 반영됩니다. 매개변수가 참조로 전달되었음을 나타내려면 데이터 유형 뒤에 & 수정자를 배치해야 합니다.
예시:
이것들은 기본입니다. 형식 함수 매개변수 및 참조로 매개변수 전달 에 대한 도움말을 읽으십시오.
아마도 기본은 논쟁하지 않습니다. 코드를 입력할 수 없습니다. 시작이 어디이고 끝이 어디인지... 그래서 질문이 있습니다. 글쎄요, 이것은 링크(?)이지만 무엇에 대한 것입니까?
" Str " 변수는 원래 여기에서 시작되었습니까?