Hatalar, hatalar, sorular - sayfa 2768

 
Selamlar. Terminal açıldığında başlatma olayı meydana geliyor mu?
Совершение сделок - Торговые операции - Справка по MetaTrader 5
Совершение сделок - Торговые операции - Справка по MetaTrader 5
  • www.metatrader5.com
Торговая деятельность в платформе связана с формированием и отсылкой рыночных и отложенных ордеров для исполнения брокером, а также с управлением текущими позициями путем их модификации или закрытия. Платформа позволяет удобно просматривать торговую историю на счете, настраивать оповещения о событиях на рынке и многое другое. Открытие позиций...
 
Sayın yönetim. mql5.com web sitesinden bir hesabın ( satıcı olarak kayıt ile) silinmesiyle ilgili olarak burada kiminle iletişime geçilmelidir?
 

Merhaba! MT5 "Grid Builder" için bir gösterge var, fiyat artışlarıyla yatay çizgiler çiziyor. Örneğin 100p, 200p vb. seçebilirsiniz. Ve belirli bir adımla yukarı ve aşağı yatay bir ızgara oluşturulur. Ancak bir sorunu var, örneğin H4 zaman diliminde grafik yatay seviyelerimi çizdiğimde (terminaldeki çizim araçlarından yatay çizgiler koyuyorum) ve başka bir zaman dilimine geçtiğimde tüm satırlarım siliniyor. Ve göstergenin sadece yatay seviyeleri kalır. Kodumdaki bu hatayı nasıl düzeltebilirim? Böylece yatay seviyelerim asla kaldırılmaz. İşte gösterge kodu.

 //+------------------------------------------------------------------+
//|                                                  GridBuilder.mq5 |
//|                                              Copyright 2015, AM2 |
//|                                     https://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2015, AM2"
#property link       "https://www.forexsystems.biz"
#property version   "1.00"
#property indicator_chart_window

//---- для расчёта и отрисовки индикатора использовано ноль буферов
#property indicator_buffers 0
//---- использовано всего ноль графических построений
#property indicator_plots   0
//--- входные параметры 
input int count = 50 ;       //количество линий вверх вниз от цены
input int step  = 333 ;     //шаг линий 
input double pr = 1.4622 ;   //цена от которой пляшем
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping
   ObjectsDeleteAll( 0 , 0 ,OBJ_HLINE);
//---
   return (INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit( const int reason)
  {
   Comment( "" );
   ObjectsDeleteAll( 0 , 0 ,OBJ_HLINE);
  }
//+------------------------------------------------------------------+ 
//| Создает горизонтальную линию                                     | 
//+------------------------------------------------------------------+ 
bool HLine( const string name= "HLine" , double price= 0 )
  {
//--- создадим горизонтальную линию 
   if (!ObjectCreate( 0 ,name,OBJ_HLINE, 0 , 0 ,price))
     {
      Print(__FUNCTION__,
             ": не удалось создать горизонтальную линию! Код ошибки = " ,GetLastError());
       return ( false );
     }
//--- установим цвет линии 
   ObjectSetInteger( 0 ,name,OBJPROP_COLOR,clrGreen);
   ObjectSetInteger( 0 ,name,OBJPROP_WIDTH, 1 );
   return ( true );
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate( const int rates_total,
                 const int prev_calculated,
                 const datetime &time[],
                 const double &open[],
                 const double &high[],
                 const double &low[],
                 const double &close[],
                 const long &tick_volume[],
                 const long &volume[],
                 const int &spread[])
  {
   double price=pr;
//--- создадим горизонтальную линию 
   for ( int i= 0 ;i<=count;i++)
     {
      HLine( "HLine" +( string )i,price+step*i*_Point);
      HLine( "HLine" +( string )(i+count+ 1 ),price-step*i*_Point);
     }
//--- return value of prev_calculated for next call
   return (rates_total);
  }
//+------------------------------------------------------------------+
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Типы объектов
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Типы объектов
  • www.mql5.com
При создании графического объекта функцией ObjectCreate() необходимо указать тип создаваемого объекта, который может принимать одно из значений перечисления ENUM_OBJECT. Дальнейшие уточнения свойств созданного объекта возможно с помощью функций по работе с графическими объектами.
 
Александр :

Merhaba! MT5 "Grid Builder" için bir gösterge var, fiyat artışlarıyla yatay çizgiler çiziyor. Örneğin 100p, 200p vb. seçebilirsiniz. Ve belirli bir adımla yukarı ve aşağı yatay bir ızgara oluşturulur. Ancak bir sorunu var, örneğin H4 zaman diliminde grafik yatay seviyelerimi çizdiğimde (terminaldeki çizim araçlarından yatay çizgiler koyuyorum) ve başka bir zaman dilimine geçtiğimde tüm satırlarım siliniyor. Ve göstergenin sadece yatay seviyeleri kalır. Kodumdaki bu hatayı nasıl düzeltebilirim? Böylece yatay seviyelerim asla kaldırılmaz. İşte gösterge kodu.

Lütfen kodu doğru şekilde yapıştırmayı deneyin .

MQL5.community - Памятка пользователя
MQL5.community - Памятка пользователя
  • www.mql5.com
Теперь вы можете не только читать статьи и скачивать программы на языке MQL5, но и участвовать в обсуждении интересующих вас тем на Форуме, оставлять комментарии к статьям и опубликованным кодам. Кроме того, вы можете не только выкладывать собственные разработки в Code Base, но и публиковать Статьи, за которые мы предлагаем вознаграждение...
 

Herkesi kunduz.

Uzun süredir kullanılmayan bir zaman dilimini değiştirirken gösterge donuyor. Bana köpeğin gömülü olduğu yeri yönlendirin lütfen. Teşekkür ederim!

 
BROXIV :

Herkesi kunduz.

Uzun süredir kullanılmayan bir zaman dilimini değiştirirken gösterge donuyor. Bana köpeğin gömülü olduğu yeri yönlendirin lütfen. Teşekkür ederim!

Köpek verileri yüklüyor.

 
BROXIV :

Herkesi kunduz.

Uzun süredir kullanılmayan bir zaman dilimini değiştirirken gösterge donuyor. Bana köpeğin gömülü olduğu yeri yönlendirin lütfen. Teşekkür ederim!

Kurt tilkisinin olduğu yerde ....

ısırıldı Ne sandın? ))))))))

 
Bir fonksiyon nasıl önce çağrılabilir ve sonra bildirilebilir. Program arka arkaya çalışmıyor mu?
 
Ivan_Invanov :
Birfonksiyon nasıl önce çağrılabilir ve sonra bildirilebilir. Program arka arkaya çalışmıyor mu?

MQL derleyicisi, yorumlayıcı değil, arama: google - "derleyici bağlayıcı"





küçük bir metin dizisinden (10-50 karakter) 0xAAAAAAAAAAAAAAA + 0xAAAAAAAAAAAAAAA'ya eşit bir md5 karma (16 bayt) alma olasılığı ne kadar yüksek

 ulong hash[ 2 ]
this .hash[ 0 ] = this .hash[ 1 ] = 0xAAAAAAAAAAAAAAAA ; 

genel olarak, bazı HASH_NULL başlatıcılara ihtiyaç vardır (makul seçenekler gereklidir), nedense 0 değerinin güvenilir olmadığını düşünüyorum


UPD: Bir arama ile çevrimiçi md5 şifre çözmeyi kontrol ettim https://md5.web-max.ca/

md5-hash'de: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa yazıyor Error , 0'da gerçek de bir hata

 

Tünaydın! iWPR göstergesinin okumalarına dayanarak uç noktaları toplamak için bir sınıf yazıyorum. Bir kod parçası veriyorum: başlangıçta bir hindi tutacağı oluşturuyorum, sonra verileri arabelleğe kopyalıyorum. Dizinin boyutuna bağlı olarak, gösterge verilerini almak için bir döngü oluştururum ve ne olduğunu anlamak için olayların gidişatını bir dosyaya yazarım. Bu kodu MQL4'ten kopyaladığımı ve tabii ki MQL5'e uyarladığımı belirtmek isterim. Ya bir şey anlamıyorum ya da bir şeyi bitiremiyorum ama dwpr değişkeninin verileri bir tür oyunla bir dosyaya yazılıyor. Neyi yanlış yapıyorum? Sözde günlüğün metnini ekliyorum!

   hWPR=iWPR(NULL,period, 240 );
   CopyBuffer(hWPR, 0 , 0 ,ibars,WPRBuffer);
   CopyLow(NULL, 0 , 0 ,ibars,Low);
   CopyHigh(NULL, 0 , 0 ,ibars,High);
   CopyTime(NULL, 0 , 0 ,ibars,Time);
   int y=ArraySize(WPRBuffer);
   //int w=ArraySize(Low);
   //int x=ArraySize(High);
   //int z=ArraySize(Time);
   
   ResetLastError(); 
   if (flag){filehandle=FileOpen(Symbol()+ "_VertexUpLoad_3.txt" ,FILE_WRITE|FILE_TXT);}
   if (flag){FileWrite(filehandle, "Количество элементов в буфере WPRBuffer " +IntegerToString(y)+ " Low " +IntegerToString(w)+
             " High " +IntegerToString(x)+ " Time " +IntegerToString(z));}
   //for(int i=ibars-1;i>0;i--)
   for ( int i= 1 ;i< /*ibars*/ y- 1 ;i++)
     {
       if (i== 344 )
      {
      Print( "" );}
      datetime d=Time[i];
       //if(x<D'2004.04.02. 12:00:00'){continue;}//участок кода для тестирования
       if (flag){FileWrite(filehandle, "======================================================================================" );}
      dwpr=NormalizeDouble(WPRBuffer[i], 4 );
       if (dwpr>=dup&&dwpr< 0.0 ){chflag= 2 ;} //индикатор в верхней экстремальной зоне
       if (dwpr<=ddn&&dwpr>- 100.1 ){chflag= 1 ;} //индикатор в нижней ЭЗ, а остальное все тоже самое
//Самое начало пока индикатор "балтается"      
       if (dwpr>= 0.0000 ){ if (flag){FileWrite(filehandle, "Самое начало пока индикатор балтается. Бар № " +IntegerToString(i)+
                                         " dwpr " +DoubleToString(dwpr, 4 ));}
Dosyalar: