오류, 버그, 질문 - 페이지 315

 

다음 문제.

OS를 다시 설치하고 MT5를 새로 설치한 후 사용자 지정 표시기 가 이전에 작동하던 로드를 중지했습니다.

매개 변수를 확인했습니다. 모든 것이 정확합니다.

그런 다음 iCustom을 통해 표준 표시기 예제 중 하나를 로드하여 루트 폴더 표시기로 이동하려고 했습니다.

하지만 "#include"가 있는 경우 아래 코드에서 로드 오류가 발생합니다.

- 포함된 클래스에 오류가 없으며,

- 이러한 클래스를 포함하는 코드는 오류의 원인을 더 쉽게 이해할 수 있도록 비활성화되었지만 이전에는 잘 작동했습니다.

- #include가 없으면 커스텀 인디케이터 로딩 에러가 발생하지 않습니다.

#include <..\Experts\_My\Classes\ClassExpert\ClassExpert.mqh>

void OnInit (){
   int HandleIndicator = iCustom ( _Symbol , _Period , "RSI" , 14 );                      
   Print ( "HandleIndicator = " , HandleIndicator);
   if (HandleIndicator== INVALID_HANDLE ){
       Print ( "Handle of RSI is INVALID_HANDLE" );
       return ;
   };
}

2011.02.23 09:52:41     Core 1  expert removed self when OnInit called
2011.02.23 09:52:41     Core 1  2011.01.14 00:00:00   Handle of RSI is INVALID_HANDLE
2011.02.23 09:52:41     Core 1  2011.01.14 00:00:00   HandleIndicator = -1
2011.02.23 09:52:41     Core 1  2011.01.14 00:00:00   expert removed because custom indicator 'RSI' cannot load [4802]
2011.02.23 09:52:41     Core 1  loading of RSI EURUSD,H1 failed

무엇이 잘못되었는지 잘 모르겠습니다.

클래스를 사용하여 일반 버전에서도 동일한 일이 발생합니다.

 #include <..\Experts\_My\Classes\ClassExpert\ClassExpert.mqh>
ClassExpert Expert1;
void OnInit (){
   Expert1.Init();
   //---
   int HandleIndicator = iCustom ( _Symbol , _Period , "RSI" , 14 );                      
   Print ( "HandleIndicator = " , HandleIndicator);
   if (HandleIndicator== INVALID_HANDLE ){
       Print ( "Handle of RSI is INVALID_HANDLE" );
       return ;
   };
}

그리고 이것은 현재 사용되는 MT5 빌드 401 버전이 가정과 사무실 PC(여전히 작동함) 모두에서 이 코드로 오류 없이 작동했음에도 불구하고 말입니다.

 
DV2010 :

다음 문제.

OS를 다시 설치하고 MT5를 새로 설치한 후 사용자 지정 표시기 가 이전에 작동하던 로드를 중지했습니다.

매개 변수를 확인했습니다. 모든 것이 정확합니다.

그런 다음 iCustom을 통해 표준 표시기 예제 중 하나를 로드하여 루트 폴더 표시기로 이동하려고 했습니다.

그러나 "#include"가 있는 경우 아래 코드는 로드 오류로 이어지지만 포함된 클래스에는 오류가 없습니다.

오류 원인에 대한 이해를 단순화하기 위해 참여하는 코드는 더 이상 사용되지 않지만 이전에는 잘 작동했습니다.

- 로딩 오류 발생:

무엇이 잘못되었는지 잘 모르겠습니다.
Service Desk에 작성하여 모든 소스 코드를 첨부하십시오. 집에서 재생산하려고 했지만 작동하지 않았습니다. 포함 파일이 없습니다.
 
Rosh: Пожалуйста, напишите в Сервисдеск и приложите все исходники. Я пытался воспроизвести у себя, но не получилось - у меня нет ваших включаемых файлов. 

Rosh, 감사합니다. 하지만 최소한의 코드가 있는 가장 단순한 모델에서 완전한 모델로 이동하여 코드의 개별 부분을 순차적으로 포함하여 작업 버전을 반환할 수 있었습니다(그렇지 않으면 50개 이상의 파일을 첨부해야 합니다. , 시스템이 rar 아카이브 수락을 거부했기 때문에). 사실, 정확히 어떤 오류가 있었는지 솔직히 이해하지 못했습니다.

 
DV2010 :

(그렇지 않으면 시스템이 rar 아카이브를 허용하지 않기 때문에 50개 이상의 파일을 첨부해야 합니다.)


최대 업로드 크기 : 16MB, 첨부 파일 10개 이하(.gif .png .jpg .jpeg .zip .txt .log .mqh .ex5 .mq5 .mq4 .ex4 .flv .mt5)
 

안녕하세요 오늘은 터미널(수동) 88.71의 전역변수 에 더블포맷으로 숫자를 쓸때 엔터를 누르면 88.709999999라는 값이 나오는데 다른 전역변수에 87.80을 쓰고 엔터를 누르면 다음과 같은 값이 나옵니다. 예상, 87,8. 그리고 소수점 이하 4자리의 값을 쓸 때 소수점 이하 4자리의 값을 얻습니다. 빌드 401.

추신: 원칙적으로 전문가가 읽을 수 있는 이 숫자 표현은 그렇게 인식될 가능성이 있지만 사람이 읽기에는 어쩐지 아름답지 않습니다.

Документация по MQL5: Основы языка / Переменные / Глобальные переменные
Документация по MQL5: Основы языка / Переменные / Глобальные переменные
  • www.mql5.com
Основы языка / Переменные / Глобальные переменные - Документация по MQL5
 
kirill190982 :

안녕하세요 오늘은 터미널(수동) 88.71의 전역변수 에 더블포맷으로 숫자를 쓸때 엔터를 누르면 88.709999999라는 값이 나오는데 다른 전역변수에 87.80을 쓰고 엔터를 누르면 다음과 같은 값이 나옵니다. 예상, 87,8. 그리고 소수점 이하 4자리의 값을 쓸 때 소수점 이하 4자리의 값을 얻습니다. 빌드 401.

추신: 원칙적으로 전문가가 읽을 수 있는 이 숫자 표현은 그렇게 인식될 가능성이 있지만 사람이 읽기에는 어쩐지 아름답지 않습니다.

https://www.mql5.com/ru/docs/basis/types/double

https://www.mql5.com/en/articles/1561

Документация по MQL5: Основы языка / Типы данных / Вещественные типы (double, float)
Документация по MQL5: Основы языка / Типы данных / Вещественные типы (double, float)
  • www.mql5.com
Основы языка / Типы данных / Вещественные типы (double, float) - Документация по MQL5
 

감사합니다. 하지만 일반적인 형식으로 숫자를 보고 기계가 숫자를 계산하도록 하고 싶습니다.

 
kirill190982 :

감사합니다. 하지만 일반적인 형식으로 숫자를 보고 기계가 숫자를 계산하도록 하고 싶습니다.

https://www.mql5.com/ru/docs/convert/doubletostring

세상에 완벽이란 없다...

Документация по MQL5: Преобразование данных / DoubleToString
Документация по MQL5: Преобразование данных / DoubleToString
  • www.mql5.com
Преобразование данных / DoubleToString - Документация по MQL5
 
AlexSTAL :

https://www.mql5.com/ru/docs/convert/doubletostring

세상에 완벽이란 없다...

예 :) VB.NET에서 이 문제는 괜찮습니다. 그래도 Microsoft 직원의 규모에 대한 귀하의 말씀은 기억합니다. :)
 
-Alexey- :
예 :) VB.NET에서 이 문제는 괜찮습니다.

문제는 비용입니다

우리는 종종 빙산의 일각만을 봅니다.

http://msdn.microsoft.com/en-us/library/system.decimal.aspx

추신: 이것을 규칙적으로 구현하는 것은 불가능합니다! 이렇게 하려면 부동 소수점 숫자가 저장되는 방식을 이해해야 합니다! 인공 트릭 만 갈 수 있습니다 ....

Decimal - структура (System)
Decimal - структура (System)
  • msdn.microsoft.com
Пространство имен: System Сборка: (в mscorlib.dll) Тип предоставляет следующие члены. ИмяОписание В начало страницы ИмяОписание (Переопределяет ValueTypeEquals(Object).) Преобразует заданное 64-разрядное целое число со знаком, соответствующее значению денежного типа OLE-автоматизации, в эквивалентное значение типа...