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

 
Merhaba!

Göstergeyi MQL4'ten MQL5'e aktarıyorum ve neden çalışmadığını anlayamıyorum:

 void GetDellName( string name_n = " " )
  {
   string vName;
   for ( int i= ObjectsTotal ()- 1 ; i>= 0 ; i--)
     {
      vName = ObjectName (i);
       if ( StringFind (vName,name_n) !=- 1 )
         ObjectDelete (vName);
     }
  }

MQL5'teki MetaEditor aşağıdakilere yemin eder:


' ObjectsTotal ' - yanlış parametre sayısı

'NesneAdı' - yanlış parametre sayısı

'ObjectDelete' - yanlış parametre sayımı

Ancak MQL4'te - her şey bir patlama ile çalışır ve hata yoktur.

lütfen anlamama yardım et

 
Sprut 185 :
Merhaba!

Göstergeyi MQL4'ten MQL5'e aktarıyorum ve neden çalışmadığını anlayamıyorum:


MQL5'teki MetaEditor aşağıdakilere yemin eder:


' ObjectsTotal ' - yanlış parametre sayısı

'NesneAdı' - yanlış parametre sayısı

'ObjectDelete' - yanlış parametre sayısı

Ancak MQL4'te - her şey bir patlama ile çalışır ve hata yoktur.

lütfen anlamama yardım et

1. Lütfen kodu doğru şekilde yapıştırın: Bir mesajı düzenlerken düğmesine basın kod ve beliren açılır pencereye kodu yapıştırın (Mesajınızı ilk kez düzenledim)

2. Yardımı dikkatlice okuyun. Örneğin NesnelerToplam

 int    ObjectsTotal (
   long   chart_id,           // идентификатор графика
   int    sub_window=- 1 ,       // индекс окна
   int    type=- 1              // тип объекта     
   );
Документация по MQL5: Графические объекты / ObjectsTotal
Документация по MQL5: Графические объекты / ObjectsTotal
  • www.mql5.com
ObjectsTotal - Графические объекты - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Sprut 185 :

belki bu yüzden? - tüm yatay ve trend çizgilerini kaldırır

 //+------------------------------------------------------------------+
//|                                                  GetDellName.mq5 |
//|                                  Copyright 2021, MetaQuotes Ltd. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2021, MetaQuotes Ltd."
#property link        "https://www.mql5.com"
#property version    "1.00"
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart ()
  {
//---
   GetDellName();
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int GetDellName( void )
  {
   int nHLines= ObjectsTotal ( 0 ,- 1 , OBJ_HLINE ),
       nTrendLines= ObjectsTotal ( 0 ,- 1 , OBJ_TREND ),i;
   string objName;
   for (i= 0 ; i<nHLines; i++)
     {
      objName= ObjectName ( 0 ,i, 0 , OBJ_HLINE );
       ObjectDelete ( 0 ,objName);
     }
   for (i= 0 ; i<nTrendLines; i++)
     {
      objName= ObjectName ( 0 ,i, 0 , OBJ_TREND );
       ObjectDelete ( 0 ,objName);
     }
   return (GetDellName());
  }
//+------------------------------------------------------------------+

-------------------------------------------------- ---\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\ \\\\\\\\\\\\------------------------------------ ------------------------------------------

ya da öylesine tüm nesneleri siler

 //+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int GetDellName( void )
  {
   int ObjectsName= ObjectsTotal ( 0 ,- 1 ,- 1 ),i;
   string objName;
   for (i= 0 ; i<ObjectsName; i++)
     {
      objName= ObjectName ( 0 ,i, 0 ,- 1 );
       ObjectDelete ( 0 ,objName);
     }
   return (GetDellName());
  }
//+------------------------------------------------------------------+

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\ \\\\\\\\\\\\\\\\\\\\\\\

ya da öyle - Alexey Viktorov'un dediği gibi.

 //+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int GetDellName( void )
  {
   ObjectsDeleteAll ( 0 ,- 1 ,- 1 );
//--- "clear" comment
   Comment ( "" );
   return ( false );
  }
//+------------------------------------------------------------------+
 
SanAlex :

belki bu yüzden? - tüm yatay ve trend çizgilerini kaldırır

Neden bir döngü var?

 int    ObjectsDeleteAll (
   long   chart_id,             // идентификатор графика
   int    sub_window=- 1 ,       // индекс окна
   int    type=- 1                // тип объекта для удаления
   );
 
Alexey Viktorov :

Neden bir döngü var?

gerçekten!? - fikrim yok! - yani, sabahları meşgul olmayın.

 
SanAlex :

belki bu yüzden? - tüm yatay ve trend çizgilerini kaldırır

-------------------------------------------------- ---\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\ \\\\\\\\\\\\------------------------------------ ------------------------------------------

ya da öylesine tüm nesneleri siler

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\ \\\\\\\\\\\\\\\\\\\\\\\

ya da öyle - Alexey Viktorov'un dediği gibi.

böyle olabilir mi

 //+------------------------------------------------------------------+
//|                                                  GetDellName.mq5 |
//|                                  Copyright 2021, MetaQuotes Ltd. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2021, MetaQuotes Ltd."
#property link        "https://www.mql5.com"
#property version    "1.00"

string    m_name[]= { " 1 имя объекта " , " 2 имя объекта " , " 3 имя объекта " , " 4 имя объекта " , " 5 имя объекта " , " 6 имя объекта " };
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart ()
  {
//---
   GetDellName();
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int GetDellName( void )
  {
   for ( int i= 0 ; i< ArraySize (m_name); i++)
     {
       ObjectDelete ( 0 ,m_name[i]);
     }
   return ( false );
  }
//+------------------------------------------------------------------+

Buna benzer daha fazla

 //+------------------------------------------------------------------+
//|                                                     FILTER_1.mq5 |
//|                                  Copyright 2021, MetaQuotes Ltd. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2021, MetaQuotes Ltd."
#property link        "https://www.mql5.com"
#property version    "1.00"
//---
sinput string InpName_1 = "HorizontalTrend Line_1" ; // FILTER_1
sinput string InpName   = "HorizontalTrend Line" ;   // FILTER
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit ( void )
  {
//---
   EventSetMillisecondTimer ( 1 );
//---
   return ( INIT_SUCCEEDED );
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit ( const int reason)
  {
//---
   EventKillTimer ();
   GetDellName( "" );
//---
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick ( void )
  {
//---
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTimer ( void )
  {
   MqlRates rates[],rates_1[];
   int start_pos= 0 ,count= 1 ;
   if ( CopyRates ( Symbol (), Period (),start_pos,count,rates)!=count)
     {
       return ;
     }
   if ( CopyRates ( Symbol (), Period (),start_pos,count,rates_1)!=count)
     {
       return ;
     }
//---
   double price_line= 0.0 ;
   if ( ObjectFind ( 0 ,InpName)>= 0 )
     {
       long object_type= ObjectGetInteger ( 0 ,InpName, OBJPROP_TYPE );
       if (object_type== OBJ_HLINE )
         price_line= ObjectGetDouble ( 0 ,InpName, OBJPROP_PRICE );
       else
         if (object_type== OBJ_TREND )
            price_line= ObjectGetValueByTime ( 0 ,InpName,rates[ 0 ].time, 0 );
       if (price_line> 0.0 )
        {
         if (rates[ 0 ].open<price_line)
           {
             Alert ( "1" );
            GetDellName(InpName);
           }
        }
     }
//---
   double price_line_1= 0.0 ;
   if ( ObjectFind ( 0 ,InpName_1)>= 0 )
     {
       long object_type_1= ObjectGetInteger ( 0 ,InpName_1, OBJPROP_TYPE );
       if (object_type_1== OBJ_HLINE )
         price_line_1= ObjectGetDouble ( 0 ,InpName_1, OBJPROP_PRICE );
       else
         if (object_type_1== OBJ_TREND )
            price_line_1= ObjectGetValueByTime ( 0 ,InpName_1,rates_1[ 0 ].time, 0 );
       if (price_line_1> 0.0 )
        {
         if (rates_1[ 0 ].open>price_line_1)
           {
             Alert ( "2" );
            GetDellName(InpName_1);
           }
        }
     }
//---
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int GetDellName( string objName)
  {
   int nHLines= ObjectsTotal ( 0 ,- 1 , OBJ_HLINE ),
       nTrendLines= ObjectsTotal ( 0 ,- 1 , OBJ_TREND ),i;
   for (i= 0 ; i<nHLines; i++)
     {
      objName= ObjectName ( 0 ,i, 0 , OBJ_HLINE );
       ObjectDelete ( 0 ,objName);
     }
   for (i= 0 ; i<nTrendLines; i++)
     {
      objName= ObjectName ( 0 ,i, 0 , OBJ_TREND );
       ObjectDelete ( 0 ,objName);
     }
   return ( false );
  }
//+------------------------------------------------------------------+
 

MT5'i kurmak için yardıma ihtiyacınız var.

1. Sorun MT5'te bir DEMO hesabına geçtim fakat sipariş verme butonu aktif değil, altta sunucu ile bağlantı olmadığını ve 2019 ve 2020 için sözleşme ticker'larının veritabanınızdan yüklendiğini görebilirsiniz. liste, ancak gerçek sözleşmeler yok.

 
gorod258 :
MT5'i sıfırdan kurmak için yardıma ihtiyacınız var.

https://www.metatrader5.com/ru/terminal/help/startworking/settings

Настройки платформы - Начало работы - Справка по MetaTrader 5
Настройки платформы - Начало работы - Справка по MetaTrader 5
  • www.metatrader5.com
Торговая платформа обладает множеством настроек, что позволяет организовать работу в ней так, как это удобно именно вам. Выполните команду...
 

Önceden yapılandırdım, ancak nedense işlevin bir kısmı çalışmıyor.

1. Sorun MT5'te bir DEMO hesabına geçtim fakat sipariş verme butonu aktif değil, altta sunucu ile bağlantı olmadığını ve 2019 ve 2020 için sözleşme ticker'larının veritabanınızdan yüklendiğini görebilirsiniz. liste, ancak gerçek sözleşmeler yok.

Yardım edebilir misin?

 
SanAlex :

gerçekten!? - fikrim yok! - yani, sabahları meşgul olmayın.

Koşulsuz her şeyi silecek)