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

 

MT4. 데모 서버 MetaQuotes-Demo. 2012년 8월 30일부터 2012년 9월 10일까지의 홀. 확인합니다.

2012년 8월 30일부터 2012년 9월 10일까지 홀

 
Renat :

난 믿지 않아.

특히 디스크에서 전체 기록을 세 번 지우고 세 번 다시 시작하고 세 개의 액세스 포인트를 모두 확인했습니다. 모든 역사가 제자리에 있습니다.

시세 아카이브를 가지고 놀 필요는 없지만 깨끗한 직원 기록을 확인하십시오.

표준 기록을 가지고 놀기 위해 MQ에서 MT4를 특별히 설치했습니다.

홈 버튼을 클릭하면 디스크에서 삭제 후 히스토리가 다운로드되며, 이는 연결 상태에서 볼 수 있습니다. 화면에서와 같이.

이것은 다른 브로커와 스위치 및 재개를 비교하기 위한 것입니다.


ps 홈 이력서 "끝까지"가 자동으로 작동하지 않습니다.

 
barabashkakvn :

MT4. 데모 서버 MetaQuotes-Demo. 2012년 8월 30일부터 2012년 9월 10일까지 의 홀 확인합니다.

우리는 2014년이 아니라 2012년에 대해 이야기하고 있습니다.

예, 거기에 구멍이 있습니다. 히스토리 센터에서 1분 히스토리를 다운로드하고 기간 재계산에 동의합니다. 구멍이 채워집니다.

브로커 서버를 사용하거나 MT5로 전환하십시오. 모든 시간 프레임에 대한 1분 기록으로 인해 모든 것이 기록과 함께 훨씬 더 좋습니다.

 

MQL4에 관한 2014.09.30 일자 서비스 데스크 #1073960의 요청에 응답하는 사람이 없는 이유는 무엇입니까?

CiForce 및 CiOBV 클래스의 GetData 메서드를 사용하려고 할 때 표준 라이브러리 파일에 오류가 발생했습니다.

'm_applied' - improper enumerator cannot be used Oscilators.mqh   494 60

'm_applied' - improper enumerator cannot be used Volumes.mqh      241 34

그리고 CiATR 클래스의 또 다른 오류:

'GetData' - function must have a body Oscilators.mqh   25 22


나는 3개월 전에 여기에 같은 오류에 대해 썼습니다: https://www.mql5.com/ru/forum/1111/page1190#comment_993762

하지만 대답도 없고 안녕도 없습니다. 새 빌드가 릴리스되었으며 버그가 여전히 있습니다. 솔직히 말하면 역겹다. 당신은 실수를 지적하고 그들을 돕는 것처럼 보이지만 아무도 대답하려고하지 않습니다. 당신은 당신 자신의 라이브러리의 비뚤어진 부분에 대해 그렇게 많이 신경을 쓰고 있습니까?

 

게시물이 없습니다. 문제가 없습니까?

어린이 정원.

 
Silent :

게시물이 없습니다. 문제가 없습니까?

어린이 정원.

무슨 얘기를 하는 건가요? 오늘 이 스레드에서 삭제된 게시물이 없습니다.
 
meat :

MQL4용 표준 라이브러리 , 특히 표시기 클래스에 오류가 있습니다.

CiATR 클래스에는 GetData 메서드 본문이 없습니다.

GetData() 메서드는 기본 부모 클래스에 정의되어 있으며 이 경우 재정의할 필요가 없습니다.

GetData()를 호출하기 전에 Refresh() 메서드를 사용하여 클래스의 표시기 버퍼에 있는 값을 업데이트해야 합니다.

 //+------------------------------------------------------------------+
//|                                                   CheckCiATR.mq5 |
//|                        Copyright 2013, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2013, MetaQuotes Software Corp."
#property link       "http://www.mql5.com"
#property version   "1.00"
#include<Indicators\Oscilators.mqh>

#property script_show_inputs
input int sleep_debug= 10 ; // пауза в секундах при отладке
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart ()
  {
//---
   CiATR iatr;
   bool res=iatr.Create(_Symbol, 0 , 15 );
   if (res)
     {
       Sleep ( 3000 );                 // дадим время на расчет индикатора
       long handle=iatr.Handle();   // хендл индикатор а
      //--- набросим индикатор на график      
      iatr.AddToChart( 0 , 1 );
       //--- количество баров, на которых индикатор рассчитан
       int bars=iatr. BarsCalculated ();
       //--- количество буферов в индикаторе    
       int buffers=iatr.BuffersTotal();
       Print ( "Buffers=" ,buffers);
       //--- размер индикаторного буфера      
       int size=iatr.BufferSize();   // для экономии по умолчанию установлено 100
       Print ( "BufferSize=" ,size);
       //--- покажем как увеличить размер индикаторного буфера      
       bool resized=iatr.BufferResize(bars- 1 );
       //--- если изменить размер индикаторного буфера не удалось вдруг
       if (!resized)
        {
         PrintFormat ( "Ошибка при попытке увеличить размер индикаторного буфера!, GetLastError = "
                     , GetLastError ());
        }
       //--- ! обязательно обновляем данные в буфере перед обращением к данным индикатора      
       iatr.Refresh();
       //--- выведем 10 последних значений индикатора и сравних их с DataWindow      
       for ( int i= 10 ;i>= 0 ;i--)
        {
         // буфер индикаторя является таймсерией - индекс увеличивается вглубь истории
         PrintFormat ( " ATR(%d) = %f" ,i,iatr.GetData( 0 ,i));
        }
     }
//--- пауза на тот случай, если скрипт запустили в отладке
   if (MQLInfoInteger(MQL_DEBUG))
     {
       Sleep (sleep_debug* 1000 );
     }
  }
//+------------------------------------------------------------------+
 
meat :

MQL4 의 표준 라이브러리 , 특히 표시기 클래스에 오류가 있습니다.

ENUM_APPLIED_VOLUME 유형 매개변수( CiForce , CiOBV )를 사용하는 표시기의 경우 오류가 생성됩니다. 부적절한 열거자를 사용할 수 없습니다.


다음은 컴파일하고 작동하는 예입니다.

 //+------------------------------------------------------------------+
//|                                                Check_CiForce.mq5 |
//|                        Copyright 2013, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2013, MetaQuotes Software Corp."
#property link       "http://www.mql5.com"
#property version   "1.00"
#include<Indicators\Oscilators.mqh>

#property script_show_inputs
input int sleep_debug= 10 ; // пауза в секундах при отладке
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart ()
  {
//---
   CiForce iforce;
   bool res=iforce.Create(_Symbol, 0 , 15 ,MODE_SMA, VOLUME_TICK );
   if (res)
     {
       Sleep ( 3000 );                 // дадим время на расчет индикатора
       long handle=iforce.Handle();   // хендл индикатор
       //--- набросим индикатор на график      
      iforce.AddToChart( 0 , 1 );
       //--- ! обязательно обновляем данные в буфере перед обращением к данным индикатора      
       iforce.Refresh();
       //--- выведем 10 последних значений индикатора и сравних их с DataWindow      
       for ( int i= 10 ;i>= 0 ;i--)
        {
         // буфер индикаторя является таймсерией - индекс увеличивается вглубь истории
         PrintFormat ( " %s(%d) = %f" ,iforce.Name(),i,iforce.GetData( 0 ,i));
        }
     }
//--- пауза на тот случай, если скрипт запустили в отладке
   if (MQLInfoInteger(MQL_DEBUG))
     {
       Sleep (sleep_debug* 1000 );
     }
  }
//+------------------------------------------------------------------+

그리고

 //+------------------------------------------------------------------+
//|                                                  Check_CiOBV.mq5 |
//|                        Copyright 2013, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2013, MetaQuotes Software Corp."
#property link       "http://www.mql5.com"
#property version   "1.00"
#include<Indicators\Volumes.mqh>

#property script_show_inputs
input int sleep_debug= 10 ; // пауза в секундах при отладке
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart ()
  {
//---
   CiOBV indicator;
   bool res=indicator.Create(_Symbol, 0 ,VOLUME_TICK);
   if (res)
     {
       Sleep ( 3000 );                 // дадим время на расчет индикатора
       long handle=indicator.Handle();   // хендл индикатор
       //--- набросим индикатор на график      
      indicator.AddToChart( 0 , 1 );
       //--- ! обязательно обновляем данные в буфере перед обращением к данным индикатора      
      indicator.Refresh();
       //--- выведем 10 последних значений индикатора и сравних их с DataWindow      
       for ( int i= 10 ;i>= 0 ;i--)
        {
         // буфер индикаторя является таймсерией - индекс увеличивается вглубь истории
         PrintFormat ( " %s(%d) = %f" ,indicator.Name(),i,indicator.GetData( 0 ,i));
        }
     }
//--- пауза на тот случай, если скрипт запустили в отладке
   if (MQLInfoInteger(MQL_DEBUG))
     {
       Sleep (sleep_debug* 1000 );
     }
  }
//+------------------------------------------------------------------+
 
로그에 메시지가 있습니다. 그 이유는 무엇입니까?
아주 드물게 나타나지만 여전히 알아내고 싶습니다. 프로그램의 안정성이 필요합니다.
14:55:11.739 'D:\progy\mt4\MQL4\indicators\.ex4' 파일을 열 수 없습니다. [123]
 
ALXIMIKS :
로그에 메시지가 있습니다. 그 이유는 무엇입니까?
아주 드물게 나타나지만 여전히 알아내고 싶습니다. 프로그램의 안정성이 필요합니다.
어떤 조건에서 나타납니까? 지표의 이름은 무엇입니까?