Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 1149

 
İyi günler! .. Basit bir soru muhtemelen, ama nereden başlayacağımı bulamıyorum. Oluşturma tarihini ve saatini içeren bir başlığa sahip bir dikdörtgen çizen bir komut dosyasına ihtiyacım var. Belki birinin görevime uyabileceğim bir örneği vardır.

Şimdiden teşekkürler :)..
 
svob :
İyi günler! .. Basit bir soru muhtemelen, ama nereden başlayacağımı bulamıyorum. Oluşturma tarihini ve saatini içeren bir başlığa sahip bir dikdörtgen çizen bir komut dosyasına ihtiyacım var. Belki birinin görevime uyabileceğim bir örneği vardır.

Şimdiden teşekkürler :)..

OBJ_RECTANGLE referans örneğini temel alın,

sadece bu satırı değiştir

 //--- создадим прямоугольник
   if (!RectangleCreate( 0 , InpName , 0 ,date[d1],price[p1],date[d2],price[p2],InpColor,
      InpStyle,InpWidth,InpFill,InpBack,InpSelection,InpHidden,InpZOrder))
     {
       return ;
     }

bu konuda:

 //--- создадим прямоугольник
   if (!RectangleCreate( 0 , TimeToString ( TimeCurrent (), TIME_DATE | TIME_SECONDS ) , 0 ,date[d1],price[p1],date[d2],price[p2],InpColor,
      InpStyle,InpWidth,InpFill,InpBack,InpSelection,InpHidden,InpZOrder))
     {
       return ;
     }
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Типы объектов / OBJ_RECTANGLE
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Типы объектов / OBJ_RECTANGLE
  • www.mql5.com
//| Cоздает прямоугольник по заданным координатам                    |               time1=0,                            price1=0,                         time2=0,                            price2=0,                        width=1,            //| Перемещает точку привязки прямоугольника                         |...
 
Vladimir Karputov :

OBJ_RECTANGLE referans örneğini temel alın,

sadece bu satırı değiştir

bu konuda:

Teşekkür ederim! :) Anladım..

 
İyi günler, göstergedeki (ayrı bir pencerede) ondalık basamak sayısı _Digits aracına mı bağlı? Evet ise, nasıl dolaşabilirsiniz? Aksi halde skala üzerinde sadece tam sayıları çizerken indikatörde kesirli değerler elde edilir.
 
VANDER :
İyi günler, göstergedeki (ayrı bir pencerede) ondalık basamak sayısı _Digits aracına mı bağlı? Evet ise, nasıl atlanabilir? Aksi halde skala üzerinde sadece tam sayıları çizerken indikatörde kesirli değerler elde edilir.

Gösterge örneği [veri klasörü]\MQL5\Göstergeler\Örnekler\ATR.mq5

OnInit() -> görüntüleme hassasiyetini belirtin

 //+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
void OnInit ()
  {
//--- check for input value
   if (InpAtrPeriod<= 0 )
     {
      ExtPeriodATR= 14 ;
       printf ( "Incorrect input parameter InpAtrPeriod = %d. Indicator will use value %d for calculations." ,InpAtrPeriod,ExtPeriodATR);
     }
   else ExtPeriodATR=InpAtrPeriod;
//--- indicator buffers mapping
   SetIndexBuffer ( 0 ,ExtATRBuffer, INDICATOR_DATA );
   SetIndexBuffer ( 1 ,ExtTRBuffer, INDICATOR_CALCULATIONS );
//---
   IndicatorSetInteger ( INDICATOR_DIGITS , _Digits );
//--- sets first bar from what index will be drawn


örnek #2 -> [veri klasörü]\MQL5\Göstergeler\Örnekler\Özel Hareketli Ortalama .mq5

burada doğruluk zaten daha yüksek

 //+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
void OnInit ()
  {
//--- indicator buffers mapping
   SetIndexBuffer ( 0 ,ExtLineBuffer, INDICATOR_DATA );
//--- set accuracy
   IndicatorSetInteger ( INDICATOR_DIGITS , _Digits + 1 );


örnek #3 -> [veri klasörü]\MQL5\Göstergeler\Örnekler\ADX.mq5

her zaman iki değerin kesinliği vardır - Rakamlardan () bağımsız olarak

 //+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
void OnInit ()
  {
//--- check for input parameters
   if (InpPeriodADX>= 100 || InpPeriodADX<= 0 )
     {
      ExtADXPeriod= 14 ;
       printf ( "Incorrect value for input variable Period_ADX=%d. Indicator will use value=%d for calculations." ,InpPeriodADX,ExtADXPeriod);
     }
   else ExtADXPeriod=InpPeriodADX;
//---- indicator buffers
   SetIndexBuffer ( 0 ,ExtADXBuffer);
   SetIndexBuffer ( 1 ,ExtPDIBuffer);
   SetIndexBuffer ( 2 ,ExtNDIBuffer);
   SetIndexBuffer ( 3 ,ExtPDBuffer, INDICATOR_CALCULATIONS );
   SetIndexBuffer ( 4 ,ExtNDBuffer, INDICATOR_CALCULATIONS );
   SetIndexBuffer ( 5 ,ExtTmpBuffer, INDICATOR_CALCULATIONS );
//--- indicator digits
   IndicatorSetInteger ( INDICATOR_DIGITS , 2 );
 

Strateji test cihazındaki diğer grafiklere görsel modda (çoklu para birimi testi sırasında) erişmek mümkün müdür? Örneğin:

 int OnInit ()
  {
   int bars= iBars ( "EURUSD" , PERIOD_H1 );
   bars= iBars ( "GBPUSD" , PERIOD_H1 );
   bars= iBars ( "USDJPY" , PERIOD_H1 );
   
   return ( INIT_SUCCEEDED );
  }
void OnTick ()
  {
   long arr[];
   ArrayResize (arr, 1 );
   arr[ 0 ]= ChartFirst ();
   long id=arr[ 0 ];
   while (! IsStopped ()){
      id= ChartNext (id);
       if (id>= 0 ){
         int s= ArraySize (arr);
         ArrayResize (arr,s+ 1 );
         arr[s]=id;
      }
       else break ;
   }
   Comment ( "Total charts: " , ArraySize (arr));   
  }

Bu Uzman Danışmanı strateji test cihazında çalıştırırsanız, görselleştiricide EURUSD, GBPUSD, USDJPY grafikleri açılır, ancak

 Comment ( "Total charts: " , ArraySize (arr));

sadece 1 grafik olduğunu verecektir.

 

Yazı tipi boyutu ve metin uzunluğu dikkate alınarak Etiketin boyutları nasıl bulunur? Diğer öğelere göre konumlandırmak için

 ObjectGetInteger ( 0 , "label" , OBJPROP_XSIZE , 0 );

0 verir

Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Свойства объектов
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Свойства объектов
  • www.mql5.com
Все объекты, используемые в техническом анализе, имеют привязку на графиках по координатам цены и времени – трендовая линия, каналы, инструменты Фибоначчи и т.д.  Но есть ряд вспомогательных объектов, предназначенных для улучшения интерфейса, которые имеют привязку к видимой всегда части графика (основное окно графика или подокна индикаторов...
 
Maksym Mudrakov :

Strateji test cihazındaki diğer grafiklere görsel modda (çoklu para birimi testi sırasında) erişmek mümkün müdür? Örneğin:

Bu Uzman Danışmanı strateji test cihazında çalıştırırsanız, görselleştiricide EURUSD, GBPUSD, USDJPY grafikleri açılır, ancak

sadece 1 grafik olduğunu verecektir.

Bu, oluşturucu pencerelerinin tanıtıcısını almayla ilgili bir sorundur. Ve onu yenmenin bir yolu yok.

 
Roman Sharanov :

Yazı tipi boyutu ve metin uzunluğu dikkate alınarak Etiketin boyutları nasıl bulunur? Diğer öğelere göre konumlandırmak için

0 verir

"Courier New" gibi tek aralıklı yazı tiplerini kullanıyorum, o zaman her karakterin genişliği yaklaşık olarak yazı tipinin boyutu kadar olacaktır.
 
normal - hiçbir şekilde. dolaylı olarak - satır uzunluğu ve yazı tipi boyutu aracılığıyla.