Hatalar, hatalar, sorular - sayfa 1227

 

MT4. Demo sunucusu MetaQuotes-Demo. 30.08.2012 - 09.10.2012 arası delik. onaylıyorum.

30.08.2012 - 09.10.2012 arası delik

 
Renat :

İnanmıyorum.

Özellikle üç kez diskten tüm geçmişi sildim, üç kez yeniden başlattım ve üç erişim noktasını da kontrol ettim. Tüm tarih yerinde.

Alıntı arşiviyle oynamanıza gerek yok, ancak temiz personel geçmişini kontrol edin.

Standart geçmişle oynamak için özellikle MQ'dan MT4'ü kurdum.

Ana Sayfa düğmesine tıklanarak diskten sildikten sonra geçmiş indirilir, bu bağlantı durumunda görülebilir. Ekrandaki gibi.

Bu, başka bir komisyoncuyu, anahtarları ve özgeçmişleri karşılaştırmak içindir.


ps Home özgeçmiş "sonuna kadar" otomatik olarak çalışmıyor, hatırlamıyorum, daha önce oldu mu?

 
barabashkakvn :

MT4. Demo sunucusu MetaQuotes-Demo. 08/30/2012 ile 09/10/2012 arasındaki delik . onaylıyorum.

2014'ten değil 2012'den bahsediyoruz.

Evet, orada bir delik var. Geçmiş Merkezinden bir dakikalık geçmiş indirin ve zaman dilimlerinin yeniden hesaplanmasını kabul edin. Delik dolacak.

Aracı sunucuları kullanın veya tüm zaman dilimleri için tek bir dakikalık geçmiş sayesinde her şeyin geçmişle çok daha iyi olduğu MT5'e geçin.

 

2014.09.30 tarih ve 1073960 no'lu hizmet masasındaki MQL4 ile ilgili talebe neden kimse cevap vermiyor?

CiForce ve CiOBV sınıflarının GetData yöntemini kullanmaya çalışırken standart kitaplık dosyalarında hata

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

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

Ve CiATR sınıfındaki başka bir hata:

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


Aynı hataları 3 ay önce burada yazdım: https://www.mql5.com/ru/forum/1111/page1190#comment_993762

Ama cevap yok, merhaba yok. Yeni bir yapı yayınlandı ve hatalar hala orada. Dürüst olmak, dürüst olmak iğrenç. Onlara yardım ediyor gibisin, hataları işaret ediyorsun ama kimse cevap vermeye tenezzül bile etmiyor. Kendi kitaplıklarınızın çarpıklığını gerçekten bu kadar mı umursuyorsunuz?

 

Gönderi yok - sorun yok mu?

Çocuk bahçesi.

 
Silent :

Gönderi yok - sorun yok mu?

Çocuk bahçesi.

Neden bahsediyorsun? Bugün bu konudan silinmiş mesaj yok.
 
meat :

MQL4 için standart kitaplıkta ve özellikle gösterge sınıflarında hatalar var.

CiATR sınıfının GetData yöntem gövdesi yoktur.

GetData() yöntemi, temel üst sınıfta tanımlanır ve bu durumda geçersiz kılınması gerekmez.

GetData()'yı çağırmadan önce, Refresh() yöntemini kullanarak sınıfın gösterge arabelleklerindeki değerleri güncellemenin gerekli olduğunu lütfen unutmayın.

 //+------------------------------------------------------------------+
//|                                                   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 için standart kitaplıkta ve özellikle gösterge sınıflarında hatalar var.

ENUM_APPLIED_VOLUME tür parametresini ( CiForce , CiOBV ) kullanan göstergeler için bir hata üretilir: hatalı numaralandırıcı kullanılamaz


İşte derleyen ve çalışan bir örnek.

 //+------------------------------------------------------------------+
//|                                                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 );
     }
  }
//+------------------------------------------------------------------+

ve

 //+------------------------------------------------------------------+
//|                                                  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 );
     }
  }
//+------------------------------------------------------------------+
 
Günlükte bir mesaj aldım, nedeni ne olabilir?
Çok nadiren görünüyor, ama yine de çözmek istiyorum - programın kararlılığına ihtiyacım var.
3 14:55:11.739 'D:\progy\mt4\MQL4\indicators\.ex4' dosyası açılamıyor [123]
 
ALXIMIKS :
Günlükte bir mesaj aldım, nedeni ne olabilir?
Çok nadiren görünüyor, ama yine de çözmek istiyorum - programın kararlılığına ihtiyacım var.
Hangi koşullar altında ortaya çıkıyor? Göstergenin adı nedir?