[ARCHIVE!] 포럼을 어지럽히 지 않도록 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 4. - 페이지 447

 

한 가지 궁금한 점이 있습니다. 주문이 완료되지 않은 경우 어떤 종류의 실수가 있는 것입니까? 그리고 그것을 읽고 수정하기 위해 그것을 인쇄하는 것은 분명히 당신의 운명이 아닌가?

/* 제로 테이크 앤 스톱으로 주문하고 편집하면 UMC 실행 유형이 도입되었습니다 */

 
FAQ :

한 가지 궁금한 점이 있습니다. 주문이 완료되지 않은 경우 어떤 종류의 실수가 있는 것입니까? 그리고 그것을 읽고 수정하기 위해 그것을 인쇄하는 것은 분명히 당신의 운명이 아닌가?

/* 제로 테이크 앤 스톱으로 주문하고 편집하면 UMC 실행 유형이 도입되었습니다 */

그것은 순수하게 기록하는 요점입니다!

" UMC 실행 유형을 도입한 것은 그들이었습니다 * / " - 질문이 중단된 경우 해독하십시오 - 이것은 예상치 못한 사건에 대한 보험 옵션입니다

 
vall :

그것은 순수하게 기록하는 요점입니다!

" UMC 실행 유형을 도입한 것은 그들이었습니다 * / " - 질문이 중단된 경우 해독하십시오 - 이것은 예상치 못한 사건에 대한 보험 옵션입니다

스톱 앤 테이크 없이 주문하고 개봉 여부를 확인하세요!

이 유형의 거래 계정에서 DC를 중지하고 가져오는 것은 이전에 설정된 0 값을 수정해야만 가능합니다.

 
Roman. :

스톱 앤 테이크 없이 주문하고 개봉 여부를 확인하세요!

이 유형의 거래 계정에서 DC를 중지하고 가져오는 것은 이전에 설정된 0 값을 수정해야만 가능합니다.


덕분에 도움이 되었습니다.

0에서 계정을 개설한 다음 중지를 도입하여 수정해야 합니다.

 
vall :

덕분에 도움이 되었습니다.

0에서 계정을 개설한 다음 중지를 도입하여 수정해야 합니다.

이러한 매개변수의 값이 0인 주문을 연 다음 열기 주문을 수정하여 변경합니다.

 
Roman. :

이러한 매개변수의 값이 0인 주문을 연 다음 열기 주문을 수정하여 변경합니다.


감사합니다. 정류장은 차트의 기호로 정확히 설정됩니다. 0.00001 또는 0.0001까지 정확합니까?
 

아무도 당신을 위해 오류를 감지하고 처리 하지 않기 때문에 로그는 깨끗합니다.

Спасибо, стопы устанавливаются в точностью до символов графика, т.е. 0,00001 или с точностью до 0,0001?

MarketInfo는 귀하의 손끝에 있습니다.

 
Vinin :

아무도 당신의 질문을 다루고 싶어하지 않습니다. 물론 당신이 원한다면 이미 오래전에 당신의 질문에 답할 수 있었지만.
나는 이미 이것을 믿습니다 ... 나를 믿으십시오. 때로는 자신의 질문에 대답하기 위해 하나의 욕망으로 충분하지 않습니다.
 

좋은 하루... FileIsEnding 및 FileIsLineEnding 함수에 대한 질문입니다. FileIsEnding 및 FileIsLineEnding 함수가 작동하는 방식을 이해하기 위해 다음 스크립트를 작성했습니다.

 //+------------------------------------------------------------------------------------------+
//+------------------------------------------------------------------------------------------+
//|                         script program start function                                    |
//+------------------------------------------------------------------------------------------+
#property show_inputs                                                     //выводим перед запуском скрипта окно свойств
extern int   position= 0 ;                                                   //внешняя переменная: смещение файлового указателя ОТ НАЧАЛА ФАЙЛА (в БАЙТАХ)
//---------------------------------------------------------------------------------------- 1 -
int start()                                                               //функция start
  {                                                                       //начало start
   double Timestart= GetTickCount ();                                       //переменная, с помощью которой вычисляется время (в милисекундах) начала выполнения эксперта 
   string name= "Копия Запись чисел в файл.csv" ;                           //имя создаваемого файла
   bool h;                                                               //переменная: значение функции FileIsEnding
   bool h_l;                                                             //переменная: значение функции FileIsLineEnding
   int error;                                                             //переменная: ошибка
   int handle= FileOpen (name, FILE_CSV | FILE_WRITE , ';' );                     //открываем заданный файл n записываем туда данные
   int запись= FileWrite (handle, DoubleToStr ( 1.3584 , 4 ));                   //записываем цены OHLC в файл csv (в преобразованном виде, т.е в виде текста)
   FileClose (handle);                                                     //закрываем файл
//---------------------------------------------------------------------------------------- 2 -
   handle= FileOpen (name, FILE_CSV | FILE_READ , ';' );                         //открываем заданный файл
   bool pos= FileSeek (handle,position, SEEK_SET );                           //смещаем от начала вправо указатель файла
   double чтение= FileReadNumber (handle);                                 //считываем число из текущей позиции (уже измененной функцией FileSeek) файлового указателя
   int size= FileSize (handle);                                             //вычисляем размер заданного файла
   h= FileIsEnding (handle);                                               //устанавливаем текущее значение переменной h
   h_l= FileIsLineEnding (handle);                                         //устанавливаем текущее значение переменной h_l
   error= GetLastError ();                                                 //значение ошибки, производимой функцией FileIsEnding
   if (error!= 0 ) Alert ( "Текущая ошибка " ,error);                           //если код текущей ошибки не равен 0, то получаем номер текущей ошибки
   FileClose (handle);                                                     //закрываем файл
//----------------------------------------------------------------------------------------- 3 -
   Comment ( "Размер файла " ,name, " составил " ,size, " байт" ,
           "\nФункция FileSeek вернула: " ,pos,
           "\nФункция FileReadNumber(handle) вернула: " ,чтение,
           "\nФункция FileIsLineEnding(handle) вернула: " ,h_l,
           "\nФункция FileIsEnding(handle) вернула: " ,h,
           "\nСкрипт выполнялся всего " , GetTickCount ()-Timestart, " миллисекунд, из них: " , MathFloor (( GetTickCount ()-Timestart)/ 1000 ), " секунд " ,(( GetTickCount ()-Timestart)/ 1000 - MathFloor (( GetTickCount ()-Timestart)/ 1000 ))* 1000 , " миллисекунд" ); //печать сообщения на экран
//----------------------------------------------------------------------------------------- 4 -
   return ( 0 );                                                             //выход из start
  }                                                                       //конец start
//-------------------------------------- КОНЕЦ START -------------------------------------- 5 -

블록 1-2에서 숫자 1.3584를 열어 파일(DoubleToStr 함수가 텍스트로 변환)에 썼습니다.

블록 3-4 나는 파일을 열고 거기에 적힌 숫자를 읽었다.

외부 변수 extern int position은 FileIsEnding 및 FileIsLineEnding 함수의 작동 방식과 FileTell 함수를 사용하여 파일 포인터를 이동하여 파일 포인터가 무엇인지 이해하기 위한 것입니다.

MQL4.community에 있는 MQL4에 대한 책에는 파일 포인터가 텍스트 커서와 유사하다고 나와 있습니다.

그러나 이 스크립트를 여러 번 실행하고 매번 외부 변수 postiton을 1씩 변경하면(즉, 파일 포인터를 파일 시작 부분에서 오른쪽으로 1바이트 이동) Comment 함수는 일련의 메시지를 표시했습니다. 예시:

postiton=7이면 메시지는 다음과 같습니다.


postiton=8이면 메시지는 다음과 같습니다.


나는 그것을 이해하기 때문에 PC 메모리에서 문자열 상수는 8바이트를 사용하고 텍스트로 변환된 1개의 숫자만 파일에 기록된 다음 파일 포인터를 오른쪽으로 8바이트 이동하면 오류 4099가 발생합니다(파일 끝에 도달했음을 의미 ). 나는 또한 같은 이유로(파일 끝에 도달함) FileIsEnding 함수가 1(true)을 반환했음을 이해합니다. 그러나 FileIsLineEnding 함수가 0(거짓, 파일 포인터가 줄 끝에 도달하지 않았음을 의미)을 반환한 이유를 이해하지 못합니다. 결국 MQL(파일 포인터는 텍스트 커서와 거의 동일함)에 대한 책에 나와 있는 비유에 따라 파일의 끝이 줄의 끝이기도 하다고 추론했습니다. 하지만 파일 포인터가 파일 끝에 도달했을 때 FileIsEnding과 FileIsLineEnding 함수의 값이 일치하지 않는 것을 감안할 때, 파일 포인트가 무엇인가라는 측면에서 막다른 골목에 이르렀습니다.

문제:

1. 파일 포인터란 무엇입니까?

2. 일치하지 않는 이유: 행의 끝과 파일의 끝(파일 포인터가 파일의 끝에 도달할 때)?

PS 포럼을 어지럽히지 않기 위해 미리 답변 주셔서 감사합니다.

 
7777877 :

1. 파일 포인터란 무엇입니까?

2. 일치하지 않는 이유: 행의 끝과 파일의 끝(파일 포인터가 파일의 끝에 도달할 때)?

PS 포럼을 어지럽히지 않기 위해 미리 답변 주셔서 감사합니다.

1. 파일 포인터 - 실제로 입력할 때 커서

2. 누가 일치해야 한다고 말했습니까? 줄 끝 문자 '\n'이 있고 파일 끝 문자 'EOF'가 있으며 서로 다른 문자입니다. 문장 끝 문자(마침표) 및 단락 끝 문자("줄 바꿈 문자")와 같습니다. 먼저 점이 옵니다. 줄의 끝입니다. 그런 다음 단락의 끝.