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

 
Rosh :
아니요.
따라서 동시 액세스를 구성할 수 없습니다. (((
 
Olegts :
따라서 동시 액세스를 구성할 수 없습니다. (((

MT5에서 볼 플래그가 있는 파일을 연 파일은 MT4를 포함한 다른 프로그램에서 사용할 수 있습니다.

여기 에서 수행 방법을 확인하십시오.

PS 파일이 이미 MT4에서 열려 있는 경우 볼 플래그를 사용하면 문제 없이 MT5를 열 수 있습니다. MT4는 평소와 같이 작동하며 MT5는 다른 프로그램이 이미 연 파일을 사용하도록 허용하거나 공유 플래그 없이 누군가가 연 파일을 열 수 있습니다.

 
Urain :

MT5에서 볼 플래그가 있는 파일을 연 파일은 MT4를 포함한 다른 프로그램에서 사용할 수 있습니다.

여기 에서 수행 방법을 확인하십시오.

감사합니다 지금 해봐야겠네요...
 
Olegts :
감사합니다 지금 해봐야겠네요...
봤는데 MT5가 쓰고 MT4가 읽으면 작동하지만 MT4가 쓰면 파일이 잠겨 있기 때문에 MT5가 더 이상 읽을 수 없습니다. 어쨌든 성공하지 못했습니다 ...
 
도움말의 데이터 유형 설명 섹션에 다음과 같이 나와 있습니다.

이와 관련하여 두 개의 실수를 서로 동등하게 비교하는 것은 이러한 비교가 정확하지 않기 때문에 절대적으로 권장되지 않습니다.

그리고 특별한 비교 방법을 제안한다.

같음을 위해 두 개의 실수를 여전히 비교해야 하는 경우 다음을 수행할 수 있습니다.

그러나 결국 논리적 결론은 더 많은 연산의 도움으로도 실수를 비교하는 것은 권장되지 않는다는 것입니다. 왜냐하면 위에서 말한 의미에서 이러한 작업은 특별한 방법을 사용하여 검사되는 값이 기계 0의 의미에서 동일하지 않다는 것이 이전에 올바르게 설정된 경우에만 정확합니다.

저것들. 실수에 대한 > 및 < 연산자도 순수한 형태로 사용할 수 없다는 것이 밝혀졌습니다. 모든 것을 올바르게 이해했으며 그렇다면 도움말에 적절한 설명을 추가할 수 있습니까?


그러나 >와 같은 연산이 부등식을 올바르게 확인한 후에만 사용할 수 있는 경우 >=에 대한 검사를 구성하는 방법은 무엇입니까? 알고리즘은 더 복잡해야 합니다. 먼저 사양을 확인하십시오. 평등을 위한 기능, 그 다음에는 특별합니다. 부등식 함수(>를 사용하기 전)?


아마도 누군가가 모든 비교 사례와 double 및 float 유형 모두에 대해 이미 라이브러리를 개발했을 것입니다. 나는 이중 유형에 대해 무언가를 스케치했습니다. 얼마나 정확한지 모르겠습니다.

 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Функция проверки на равенство двух вещественных чисел типа double
bool EqualDoubles( const double d1, const double d2)
   {  
       const double epsilon= 2.2204460492503131 e- 016 ; //DBL_EPSILON
       if (d1-d2>epsilon) return false ;
       if (d1-d2<-epsilon) return false ;
       return true ;
   }
// Конец функции проверки на равенство двух вещественных чисел типа double
//+++++++++++++++++++++++++++++++++++++++++++++++++
// Функция проверки на неравенство двух вещественных чисел типа double
bool NotEqualDoubles( const double d1, const double d2)
   {      
       return !EqualDoubles(d1, d2);
   }
// Конец функции проверки на неравенство двух вещественных чисел типа double
//+++++++++++++++++++++++++++++++++++++++++++++++++
// Функция проверки на меньшинство первого из двух вещественных чисел типа double
bool LessDoubles( const double d1, const double d2)
   {  
       if (NotEqualDoubles(d1, d2)&&(d1<d2))
      {
         return true ;
      }
       return false ;
   }
// Конец функции проверки на меньшинство первого из двух вещественных чисел типа double
//+++++++++++++++++++++++++++++++++++++++++++++++++
// Функция проверки на большинство первого из двух вещественных чисел типа double
bool GreaterDoubles( const double d1, const double d2)
   {  
       if (NotEqualDoubles(d1, d2)&&(d1>d2))
      {
         return true ;
      }
       return false ;
   }
// Конец функции проверки на большинство первого из двух вещественных чисел типа double
//+++++++++++++++++++++++++++++++++++++++++++++++++
// Функция проверки на меньшинство первого или равенство двух вещественных чисел типа double
bool LessEqualDoubles( const double d1, const double d2)
   {  
       if (LessDoubles(d1, d2)||EqualDoubles(d1, d2))
      {
         return true ;
      }
       return false ;
   }
// Конец функции проверки на меньшинство первого или равенство двух вещественных чисел типа double
//+++++++++++++++++++++++++++++++++++++++++++++++++
// Функция проверки на большинство первого или равенство двух вещественных чисел типа double
bool GreaterEqualDoubles( const double d1, const double d2)
   {  
       if (GreaterDoubles(d1, d2)||EqualDoubles(d1,d2))
      {
         return true ;
      }
       return false ;
   }
// Конец функции проверки на большинство первого или равенство двух вещественных чисел типа double

PS if prevcalculated==0 은 다시 평소대로 작동합니다. 떠다니는 버그?

 

안녕하세요!

거래 신호 모듈에서 사용자 지정 표시기 를 사용해야 합니다.

이렇게 하려면 예에서와 같이 이 표시기의 개체에 대한 포인터를 "지표 모음(시계열?)"에 추가해야 합니다.

indicators.Add( GetPointer (m_MA)))

여기서 m_MA는 CiMA 클래스의 개체입니다.

iCustom 및 IndicatorCreate 함수는 생성된 표시기의 핸들 번호의 정수 값을 반환하지만 내가 이해하기로는 이 표시기의 개체가 필요합니다.

상황을 벗어나는 방법을 알려주세요???

Переход на новые рельсы: пользовательские индикаторы в MQL5
Переход на новые рельсы: пользовательские индикаторы в MQL5
  • 2009.11.23
  • Андрей
  • www.mql5.com
Я не буду перечислять все новые возможности и особенности нового терминала и языка. Их действительно много, и некоторые новинки вполне достойны освещения в отдельной статье. Вы не увидите здесь кода, написанного по принципам объектно-ориентированного программирования — это слишком серьезная тема для того, чтобы просто быть упомянутой в контексте как дополнительная вкусность для кодописателей. В этой статье остановимся подробней на индикаторах, их строении, отображении, видах, а также особенностях их написания по сравнению с MQL4.
 
lVlaxim :

안녕하세요!

거래 신호 모듈에서 사용자 지정 표시기 를 사용해야 합니다.

이렇게 하려면 예에서와 같이 이 표시기의 개체에 대한 포인터를 "지표 모음(시계열?)"에 추가해야 합니다.

여기서 m_MA는 CiMA 클래스의 개체입니다.

iCustom 및 IndicatorCreate 함수는 생성된 표시기의 핸들 번호의 정수 값을 반환하지만 내가 이해하기로는 이 표시기의 개체가 필요합니다.

상황을 벗어나는 방법을 알려주세요???

내가 이해하는 한 CiCustom 을 기반으로 고유한 표시기 개체를 작성해야 합니다(CiMA 작성 방식과 유사).

나는 그런 칠면조와 함께 일하지 않았기 때문에 자세하게 조언 할 수 없지만 당신이 그것을 알아낼 것이라고 생각합니다. 그렇지 않으면 사람들이 당신에게 구체적인 구현을 말할 것입니다.

추신

그건 그렇고, 개발자들은 CiCustom 에 대한 섹션에 예제를 추가하십시오 ...

 
-Alexey- :

그리고 특별한 비교 방법을 제안한다.

그러나 결국 논리적 결론은 더 많은 연산의 도움으로도 실수를 비교하는 것은 권장되지 않는다는 것입니다. 왜냐하면 위에서 말한 의미에서 이러한 작업은 특별한 방법을 사용하여 검사되는 값이 기계 0의 의미에서 동일하지 않다는 것이 이전에 올바르게 설정된 경우에만 정확합니다.

문제의 본질을 잘 이해하지 못했을 수도 있지만 "<" 연산을 사용하여 두 개의 실수를 비교하고 확인 중인 실수가 "기계 0의 의미에서 동일"하면 " <" 작업은 단순히 false를 반환하고 그게 전부입니다. 의미: "첫 번째 실수는 두 번째 실수보다 작지 않습니다."
 
lVlaxim :

안녕하세요!

거래 신호 모듈에서 사용자 지정 표시기 를 사용해야 합니다.

이렇게 하려면 예에서와 같이 이 표시기의 개체에 대한 포인터를 "지표 모음(시계열?)"에 추가해야 합니다.

여기서 m_MA는 CiMA 클래스의 개체입니다.

iCustom 및 IndicatorCreate 함수는 생성된 표시기의 핸들 번호의 정수 값을 반환하지만 내가 이해하기로는 이 표시기의 개체가 필요합니다.

상황을 벗어나는 방법을 알려주세요???

지금은 이 파일을 예로 들어보겠습니다.

CSignalCustomMACD 클래스는 표준 분포에서 표시기의 "사용자 정의" 버전에 구축된다는 점을 제외하고 CSignalMACD 클래스와 완전히 동일합니다.

전문가의 소스 코드에 다음 줄을 추가하는 것을 잊지 마십시오.

 #property tester_indicator "Examples\MACD.ex5"

그렇지 않으면 테스터에서 작동하지 않습니다.

Indicators\Examples 폴더에 MACD.ex5 파일이 없으면 지표를 컴파일해야 합니다.

가까운 시일 내에 예제가 도움말에 추가될 것입니다.

파일:
 
Yedelkin :
문제의 본질을 잘 이해하지 못했을 수도 있지만 "<" 연산을 사용하여 두 개의 실수를 비교하고 확인 중인 실수가 "기계 0의 의미에서 동일"하면 " <" 작업은 단순히 false를 반환하고 그게 전부입니다. 의미: "첫 번째 실수는 두 번째 실수보다 작지 않습니다."
이것은 논리적이지만 이제 연산 ">"("<"은 확인하지 않음)은 "기계 0의 의미에서 같음"과 같은 숫자에 대해 true 결과를 반환할 수 있습니다. 효과가 발견되었습니다. 수치 계산의 결과는 이러한 효과의 결과로 그리고 특수 기능을 사용한 후에 더 이론적으로 가능한 것으로 판명되었습니다. 더 높은 기능이 정확해졌습니다. 따라서 인증서에 추가를 제안합니다.