Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 194

 

Merhaba, lütfen bana çizelgeyi programlı olarak istenen tarihe nasıl "kaydıracağımı" söyler misiniz? Belki de istediğiniz tarihi ayarlayabileceğiniz böyle bir komut dosyası vardır ve grafik anında bu tarihe "kaydırılır"?

 
AndEv :

Merhaba, lütfen bana çizelgeyi programlı olarak istenen tarihe nasıl "kaydıracağımı" söyler misiniz? Belki de istediğiniz tarihi ayarlayabileceğiniz böyle bir komut dosyası vardır ve grafik anında bu tarihe "kaydırılır"?


Boşluk çubuğuna basın ve istediğiniz tarihi girin.

ZY Hiçbir şey yardımcı olmazsa - belgeleri okuyun.

 
tara :


- belgeleri okuyun.

Soruyu dikkatlice okuyun: çizelgeyi programlı olarak istenen tarihe nasıl "kaydırırsınız"?
 
sergeev :

hayır, bunu kullanmıyoruz.

Ey büyük Moderatör, Banom'u tehdit ediyor, ona değersizleri fırlatıyor, her şeyden habersiz. Yeni gelene rahmet diler, *'da muhatap olduğunuz çok değerli Bey'inizi paylaşmanızı rica ederim. mq 4 siparişleri değiştirmek için.

 
digits :

Ey büyük Moderatör, Banom'u tehdit ediyor, ona değersizleri fırlatıyor, her şeyden habersiz. Yeni gelene rahmet diler, *'da muhatap olduğunuz çok değerli Bey'inizi paylaşmanızı rica ederim. mq 4 siparişleri değiştirmek için.


Bay Z'yi (Bay Rakamlar'dan özür dilerim) yasağa göndermek için büyük bir istek, ancak daha uzun süre
 
AndEv :
Soruyu dikkatlice okuyun: çizelgeyi programlı olarak istenen tarihe nasıl "kaydırırsınız"?

grafikteki Enter düğmesine programlı olarak basmanız gerekir

ve tarih (ve hatta para birimi) ile metni görünen pencereye programlı olarak gönderin

ve ardından programlı olarak Enter tuşuna basın

-----

Hepsini önce kendin çizelgede harca. sonra hareketlerinizi programlı olarak tekrarlayın

 
AndEv :
Soruyu dikkatlice okuyun: çizelgeyi programlı olarak istenen tarihe nasıl "kaydırırsınız"?
kitaplık Bunun için her şey var. Bölüm 4.3 ve 4.6.
 

hoz_Base@Library.ex4 kitaplığı için hoz_Base@Include.mqh başlık dosyası vardır. bi_Err değişkeni hoz_Base@Include.mqh başlık dosyasında bildirildi .

hoz_Base@Library.ex4 kitaplığı INIT işlevine sahiptir:

 void fInitBase ( string fs_SymbolList,
                 string fs_MagicList,
                 string fs_Delimiter = "," )
{
   bs_ExpertName = StringConcatenate (WindowExpertName(), ":  " , fGet_NameTF ( Period ()), "_" , Symbol ());
   bs_SymbolList = fs_SymbolList;
   bs_MagicList = fs_MagicList;
   bs_Delimiter = fs_Delimiter;
   bb_RealTrade = (!IsTesting() && !IsOptimization());
   bb_VirtualTrade = (IsOptimization() || (IsTesting() && !IsVisualMode()));
   if (bd_SymPoint == 0.0 )
       {bd_SymPoint = fGet_Point( Symbol ());}
   fGet_MarketInfo ( Symbol (), - 1 );
   bd_MAXLOT = MarketInfo( Symbol (), MODE_MAXLOT);
   bd_LOTSTEP = MarketInfo( Symbol (), MODE_LOTSTEP);
   bi_LotPrecision = fLotPrecision ();
   bd_MINLOT = MarketInfo( Symbol (), MODE_MINLOT);
   InitializeArray_STR (bsa_Comment, "" );
     //---- Определяем индекс "ошибок" в массиве комментариев (gsa_Comment)
   bi_IndERR = ArraySize (bsa_Comment) - 1 ;
   bi_Err = GetLastError ();
   //---- Контролируем возможные ошибки
   fPrint ( StringConcatenate ( "fInitBase() => " , fErrorToString (bi_Err)));

   return ;
}

İşte ilgilendiğim satır:

 fPrint ( StringConcatenate ( "fInitBase() => " , fErrorToString (bi_Err)));

Hata yoksa, şu şekilde yazdırılmalıdır:

 13 : 46 : 11 2013.08 . 15 00 : 00   hoz_LoggingToAnywhere@ library EURUSD.GI,M5: Внимание! fInitTradingFunc() => Ошибка № - 1 

Bu, üçüncü taraf kitaplıkların 2 işlevi kullanılarak uygulanır:

 // 1.3 Формируем строки из № ошибки и её описания. ========================================================================================
string fErrorToString ( int fi_Error)
{
    fi_Error = bi_Err;
    
     return ( StringConcatenate ( "Ошибка № " , bi_Err, " :: " , fErrorDescription (bi_Err)));
}

 // 1.4 Функция преобразует код последней ошибки в текстовую строку, содержащую описание данной ошибки. ====================================
string fErrorDescription ( int fi_Error)
{
   string ls_Error = "" ;

   switch (fi_Error)
   {
       // Коды ошибок, возвращаемые торговым сервером:
       case 0 : ls_Error = "Нет ошибки" ;
       case 1 : ls_Error = "Нет ошибки, но результат не известен" ;
       case 2 : ls_Error = "Общая ошибка" ;
       case 3 : ls_Error = "Неправильные параметры" ;
       case 4 : ls_Error = "Торговый сервер занят" ;
       case 5 : ls_Error = "Старая версия клиентского терминала" ;
       case 6 : ls_Error = "Нет связи с торговым сервером" ;
       case 7 : ls_Error = "Недостаточно прав" ;
       case 8 : ls_Error = "Слишком частые запросы" ;
       case 9 : ls_Error = "Недопустимая операция, нарушающая функционирование сервера" ;
       case 64 : ls_Error = "Счёт заблокирован" ;
/*
Различный варианты возникающих
                                 ошибок
*/
       case 4202 : ls_Error = "Объект не существует" ;
       case 4203 : ls_Error = "Неизвестный тип объекта" ;
       case 4204 : ls_Error = "Нет имени объекта" ;
       case 4205 : ls_Error = "Ошибка координат объекта" ;
       case 4206 : ls_Error = "Не найдено указанное подокно" ;
       case 4207 : ls_Error = "Ошибка при работе с объектом" ;
   }

Soru. Yukarıdaki fonksiyon dizesi fErrorToString (int fi_Error) yukarıda verdiğim gibi bir değişkende kullanılıyorsa, her şey doğru yazdırılır. Ve eğer bunda:

 string fErrorToString ( int fi_Error)
{
     return ( StringConcatenate ( "Ошибка № " , fi_Error, " :: " , fErrorDescription (fi_Error)));
}

Ardından hata olmaması yerine 0 gösterir. (Tür hatası - hata yok). Bunun gibi:

 13 : 46 : 11 2013.08 . 15 00 : 00   hoz_LoggingToAnywhere@ library EURUSD.GI,M5: Внимание! fInitTradingFunc() => Ошибка № 0

Niye ya?

 
Zhunko :
kitaplık Bunun için her şey var. Bölüm 4.3 ve 4.6.
Çok teşekkürler!
 
Hangi fonksiyon, ayın başında hesabın bakiyesini öğrenebilirsiniz?