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

 

P./S. 또한 MT5에서는 MQL5 계정의 승인 없이도 마켓에서 제품을 다운로드할 수 있었습니다(MT4에서는 승인 없이 시도하지 않았습니다).

이전에는 이 가능성에 대해 몰랐습니다.

 
meat :

그리고 솔직히 말해서, 당신의 주장은 이상합니다. 사용법을 모르는 사람은 사용하지 않습니다. FileFlush가 사용되는 많은 코드를 본 적이 있습니까? 나는 아무 것도 아니다.

거의 모든 사람들이 그것을 오용하고 "Metatrader는 느려집니다." 이 WinAPI 기능은 매우 지연됩니다.

600 빌드로 전환할 때 모든 파일 작업을 완전히 다시 작성하고 일반적인 소규모 작업 모드에서 수십 배 가속화했습니다.


그리고 파일을 다시 열면 코드가 복잡해집니다.

그러나 즉시 결과에 대해 생각하게 하고 모든 틱에 FileFlush를 넣지 말고 거래 전략 테스터 의 결과에 놀라지 마십시오.

 
Renat :

거의 모든 사람들이 그것을 오용하고 "Metatrader는 느려집니다."

예, 당신은 과장하고 있습니다. 불행한 코더가 있었을 수도 있지만 일반화해서는 안됩니다. 당신의 말에 따르면 여기 있는 모든 사람들은 멍청하고 바보입니다.

그러나 그것은 즉시 결과에 대해 생각하게 만듭니다 ...

Renat, 이것은 심각한 것이 아닙니다. 신이시여! 우리는 학교에 있지 않습니다. 하나는 학생들에게 숙제를 내주고 있다는 인상을 받습니다. ("가르치기는 어렵다 - 전투는 쉽다"). MQL을 인형을 위한 튜토리얼이나 프로그래머를 위한 작업 도구로 포지셔닝하고 있습니까? 후자라면 왜 바퀴에 인공 스틱을 넣습니까?

누군가가 무언가를 모르거나 방법을 모른다면 이것이 그의 개인적인 문제이므로 배우게하십시오. 도대체 왜 그 때문에 다른 모든 사람의 기능을 잘라?

 
meat :

예, 당신은 과장하고 있습니다. 불행한 코더가 있었을 수도 있지만 일반화해서는 안됩니다. 당신의 말에 따르면 여기 있는 모든 사람들은 멍청하고 바보입니다.

Renat, 이것은 심각한 것이 아닙니다. 신이시여! 우리는 학교에 있지 않습니다. 하나는 학생들에게 숙제를 내주고 있다는 인상을 받습니다. ("가르치기는 어렵다 - 전투는 쉽다"). MQL을 인형을 위한 튜토리얼이나 프로그래머를 위한 작업 도구로 포지셔닝하고 있습니까? 후자라면 왜 바퀴에 인공 스틱을 넣습니까?

누군가가 무언가를 모르거나 방법을 모른다면 이것이 그의 개인적인 문제이므로 배우게하십시오. 도대체 왜 그 때문에 다른 모든 사람의 기능을 잘라?

포럼과 코드베이스를 둘러보세요.

우리는 학교에 있지 않습니다. 우리는 품질이 낮은 코드가 많고 MetaQuotes가 항상 모든 것에 대해 선험적 책임이 있는 훨씬 더 나쁜 위치에 있습니다. 이렇게 하면 유죄이고 반대로 하면 여전히 유죄입니다.

FileFlush를 물리치기로 한 결정은 그것을 끄는 것이 트레이더의 브레이크와 불만을 지켜보는 것보다 덜 나쁘다는 이해에서 나왔습니다. 우리는 그것을 끌 뿐만 아니라 모든 파일 작업을 완전히 다시 작성하여 이제 모든 오류와 비효율적인 개발자 관행을 부드럽게 하는 매우 효율적이고 빠른 엔진이 되었습니다. 우리는 아주 잘 생각했습니다.


정보: 저는 개인적으로 13년 이상 포럼에서 공개 토론을 진행해 왔기 때문에 과장이 아닙니다.


 
crOss :
(MetaQuotes의 예에서) Expert Advisor를 선택하여 특정 기간에 매개변수를 사용하여 빌드 975에서 실행합니다.
작업 결과를 얻습니다. 수익률 곡선 차트 및 거래 테이블.


이제 동일한 기간에 빌드 1010에서 동일한 Expert Advisor를 실행하고 동일한 매개변수를 사용하면 완전히 다른 결과를 얻을 수 있습니다...

PS 메타테스터 32비트

975 빌드 및 1010 빌드 테스터의 거래 분석은 무엇을 보여줍니까?

첫째, 차이점을 찾으십시오. 스왑의 가치를 비교하십시오. 거래량 보기

 
일주일 동안 서비스 데스크에서 응답이 없었기 때문에 여기에 문제를 제기했습니다( MT4 745 빌드).
1. 다음 코드가 있는 표시기 가 있습니다.
 #property strict
#property indicator_chart_window
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit ()
{
   EventSetTimer ( 10 );
   return ( INIT_SUCCEEDED );
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start ()
{
   return 0 ;
}
//+------------------------------------------------------------------+

void OnTimer ()
{
   ChartSetSymbolPeriod ( 0 , _Symbol , 1 );
}
2. 이에 대한 전문가가 있습니다.
 #include <ChartObjects\ChartObjectsTxtControls.mqh>     


CChartObjectButton *p_button1 = NULL ;                              
int OnInit ()
{
   p_button1 = new CChartObjectButton; 
   p_button1.Create( 0 , "ddd" , 0 , 10 , 20 , 30 , 40 ); // create button
 
   return INIT_SUCCEEDED ;
}

void OnDeinit ( const int reason)
{
   if (p_button1 != NULL )
   {
      p_button1.Delete();
       delete p_button1;
   }
}
void OnTick ( void )
{
}

3. 먼저 지표를 첨부하고 두 번째 - 전문가를 첨부합니다.
4. ChartSetSymbolPeriod 를 사용할 때 차트를 깨고 멈출 때까지 기다립니다.
5. 모든 것은 TF의 수동 전환 및 통화 쌍의 수동 전환으로 작동합니다. 그러나 소프트웨어에서는 작동하지 않습니다(릴리스 커브의 스택 또는 일종의 누출....)


TF 전환 문제를 해결했습니다. API가 다시 한 번 더 안정적입니다.
그러나 API를 사용하여 통화 쌍을 원하는 통화 쌍으로 전환하는 방법은 무엇입니까?

 
ALXIMIKS :
일주일 동안 서비스 데스크에서 응답이 없었기 때문에 여기에 문제를 제기했습니다( MT4 745 빌드).
1. 다음 코드가 있는 표시기 가 있습니다.
2. 이에 대한 전문가가 있습니다.

3. 먼저 지표를 첨부하고 두 번째 - 전문가를 첨부합니다.
4. ChartSetSymbolPeriod 를 사용할 때 차트를 깨고 멈출 때까지 기다립니다.
5. 모든 것은 TF의 수동 전환 및 통화 쌍의 수동 전환으로 작동합니다. 그러나 소프트웨어에서는 작동하지 않습니다(릴리스 커브의 스택 또는 일종의 누출....)


TF 전환 문제를 해결했습니다. API가 다시 한 번 더 안정적입니다.
그러나 API를 사용하여 통화 쌍을 원하는 통화 쌍으로 전환하는 방법은 무엇입니까?

귀하의 신청서는 손실되지 않았습니다.

우리는 확실히 대답할 것입니다.

 
누군가 설명할 수 있습니까? (프로필에 대한) 내 등급이 지난 며칠 동안 떨어지고 있습니다. 이것은 새로운 기능입니까, 사이트의 알고리즘에서 약간 조정된 것입니까, 아니면 다른 것입니까?
 
Renat :

포럼과 코드베이스를 둘러보세요.

우리는 학교에 있지 않습니다. 우리는 품질이 낮은 코드가 많고 MetaQuotes가 항상 모든 것에 대해 선험적 책임이 있는 훨씬 더 나쁜 위치에 있습니다. 이렇게 하면 유죄이고 반대로 하면 여전히 유죄입니다.

아마도 당신 자신이 이 이야기의 확산에 기여하고 있다는 사실에 대해 생각해 본 적이 있습니까? 저것들. 당신은 선험적으로 자신을 유죄라고 생각하는 것으로 나타났습니다. 몇몇 멍청한 놈들이 그곳에서 자신에게 맞지 않는 것이 있다고 주장하며 당신에게 다가와, 그들에게 정중하게 설명하거나 재료를 배우도록 보내는 대신에, 당신은 그들의 무지를 위해 그들에게 굴복하고 당신의 제품을 다시 만듭니다. 그것이 어떻게 작동합니까? 결과적으로 제품의 품질도 저하되고이 사람들은 아무것도 배우지 않습니다.

거래 플랫폼이어도 이해합니다. 그러나 우리는 유연성이 중요한 프로그래밍 언어에 대해 이야기하고 있습니다. 그리고 당신은 이러한 유연성을 박탈합니다. 결국, 당신은 프로그래머이고 아마도 보편적인 솔루션이 없다는 것을 이해하고 있을 것입니다. 귀하의 효과적인 메커니즘은 특정 경우에만 적합하고 다른 경우에는 완전히 부적합합니다. 하나는 10초마다 디스크에 데이터를 덤프해야 하고, 다른 하나는 10MB마다, 세 번째는 매 틱 마다 데이터를 덤프해야 합니다(예, 정보가 매우 중요한 경우 그러한 필요가 있습니다). 그리고 나는 반복합니다. 사람이 무언가를 잘못 사용하면 이것은 개인적인 문제입니다. 그의 무지에 빠져서 구부릴 필요가 없습니다.

이 모든 것을 시작하지 않았습니다. FileFlush를 사용하여 infa가 주기적으로 디스크에 덤프되는 코드가 있었습니다. 그리고 최근에 데이터가 30-40MB로 누적되지만 아무 것도 버리지 않는 것으로 나타났습니다. 결과적으로 터미널이 충돌하면(이는 드문 일이 아닙니다) 모든 것이 손실됩니다. 그리고 당신은 그것에 대해 적어도 경고하는 것을 귀찮게하지 않았습니다. 이것은 어떤 기능이 작동을 멈출 수 있는 경우 MQL의 신뢰성을 완전히 훼손합니다.

 
meat :

아마도 당신 자신이 이 이야기의 확산에 기여하고 있다는 사실에 대해 생각해 본 적이 있습니까? 저것들. 당신은 선험적으로 자신이 유죄라고 생각한다는 것이 밝혀졌습니다. 몇몇 멍청한 놈들이 그곳에서 자신에게 맞지 않는 것이 있다고 주장하며 당신에게 다가와, 그들에게 정중하게 설명하거나 재료를 배우도록 보내는 대신에, 당신은 그들의 무지를 위해 그들에게 굴복하고 당신의 제품을 다시 만듭니다. 그것이 어떻게 작동합니까? 결과적으로 제품의 품질도 저하되고이 사람들은 아무것도 배우지 않습니다.

우리는 끊임없이 그리고 충분히 깊이 생각합니다. 결과적으로 우리는 모든 사람이 실수를 덜 하도록 결정을 내립니다.


거래 플랫폼이어도 이해합니다. 그러나 우리는 유연성이 중요한 프로그래밍 언어에 대해 이야기하고 있습니다. 그리고 당신은 이러한 유연성을 박탈합니다. 결국, 당신은 프로그래머이고 아마도 보편적인 솔루션이 없다는 것을 이해하고 있을 것입니다. 귀하의 효과적인 메커니즘은 특정 경우에만 적합하고 다른 경우에는 완전히 부적합합니다. 하나는 10초마다 디스크에 데이터를 덤프해야 하고, 다른 하나는 10MB마다, 세 번째는 매 틱마다 데이터를 덤프해야 합니다(예, 정보가 매우 중요한 경우 그러한 필요가 있습니다). 그리고 나는 반복합니다. 사람이 무언가를 잘못 사용하면 이것은 개인적인 문제입니다. 그의 무지에 빠져서 구부릴 필요가 없습니다.

포럼에서 "이것은 개인 문제입니다"와 같이 답변해 주십시오. 그들이 당신에게 사업을 운영하는 방법과 당신이 왜 틀렸는지 말하기 전에 얼마나 많은 시간을 견딜 수 있는지 봅시다.


이 모든 것을 시작하지 않았습니다. FileFlush를 사용하여 infa가 주기적으로 디스크에 덤프되는 코드가 있었습니다. 그리고 최근에 데이터가 30-40MB로 누적되지만 아무 것도 버리지 않는 것으로 나타났습니다. 결과적으로 터미널이 충돌하면(이는 드문 일이 아닙니다) 모든 것이 손실됩니다. 그리고 당신은 그것에 대해 적어도 경고하는 것을 귀찮게하지 않았습니다. 이것은 어떤 기능이 작동을 멈출 수 있는 경우 MQL의 신뢰성을 완전히 훼손합니다.

나는 위에서 우리의 우선 순위는 측면의 운영 모드가 아니라 우리 플랫폼만의 효율적인 운영과 최대 성능임을 지적했습니다. 이는 주로 로그, 데이터베이스 및 전문가 파일과 같은 모든 파일 작업에 적용됩니다.

열린 파일(이 자체가 이미 심각한 문제임)로 외부에서 작업하고 싶다면 조치를 취하십시오.

벽에 부딪힐 필요가 없습니다. 이 결정은 의식적이며 변경되지 않습니다.