Any rookie question, so as not to clutter up the forum. Professionals, don't pass by. Nowhere without you - 6. - page 677

 
hoz:

366366, You can go fuck yourself with such offers. What kind of divorce mania is this? Lately, I see people have completely lost their conscience. Everyone's trying to sell someone something, find a sponor, beg for something. Some are trying to get pity and some are trying to get sympathy.

But listening to the nonsense that the owl gives you 100% for 2 weeks and not having 500 dollars for some preliminary work... Do you believe that yourself? Go woodsy... woodsy... Nice and easy way out of here. And don't look back. No one's gonna help you. I'm pretty sure.


What's the owl? The development is entirely my own, it took me over a year to do it.

I'm not trying to scam anybody.

Looks like there's too many crooks in the forex business to trust anybody. All right, if that's the case. I'll have to work for a month, and I'll run a program at the same time.

 
366366:


What's an owl? The development is all mine, spent over a year on it.

I'm not going to divorce anyone.

There seem to be too many crooks in the forex business, they don't trust anyone anymore. All right, if that's the case. I'll have to work for a month, run a program sometimes.

What do you feed the owl? Mice? Developed how? In an incubator?
 
366366:


What's an owl? The development is all mine, spent over a year on it.

I'm not going to divorce anyone.

There seem to be too many crooks in the forex business, they don't trust anyone anymore. All right, if that's the case. I'll have to work for a month, run a program in the meantime.

Well, uh... Okay. Let's not be unsubstantiated. You show me your owl. At least in segments. I convince you that the code is yours... You convince me that it's not exactly slag. And I find a contributor :) I'll vouch for what I say. Speaking in front of witnesses... If you didn't write the code yourself, don't knock... I'll know right away...
 

A question has arisen. When testing the owl, even on the demo in the experts tab, this is displayed:

2014.07.29 22:04:32.118 unresolved import function call
2014.07.29 22:04:32.118 Cannot find 'IToS' in 'LDataConvertion.ex4'
2014.07.29 22:04:32.017 BaseTemplate EURUSD,M5: initialized
2014.07.29 22:04:32.017 BaseTemplate EURUSD,M5: Logging => fCreat_ArraySymbols => Ошибка № 0 :: Ошибка при работе с объектом
2014.07.29 22:04:31.894 BaseTemplate EURUSD,M5 inputs: _Position_Properties= _______________ Position_Properties _____________ ; idt_Expiration=0; id_Lots=0.1; id_SL=0.0; id_TP=10.0; ii_Slippage=2; _BaseInfo= ____________________ BaseInfo ___________________ ; ib_Bootstrap=false; ib_RealTrade=true; ib_VirtualTrade=true; _Logging= ____________________ Logging ____________________ ; ib_NeedLogs=true; ib_PrintUP=true; ib_CommentUP=true; _Make_List_Of_Symbols= ______________ Make List Of Symbols _____________ ; is_ListOfWorkingSymbol
2014.07.29 22:04:30.618 Expert BaseTemplate EURUSD,M5: loaded successfully

We have 2 errors. First, concerning the line:

2014.07.29 22:04:32.118 Cannot find 'IToS' in 'LDataConvertion.ex4'

It says like there is no function IToS in LDataConvertion.ex4 library. But actually it is there! This function is from the LDataConvertion.ex4 library:

// 1.3 Преобразование числа типа int в текстовую строку string, содержащую символьное представление числа.
string IToS (int v) export
{
   return (IntegerToString (v));
}

By the way, it is compiled with these classes and libraries without errors. There were no errors there, either. But when I started the owl, I got headaches. How do I understand what is wrong here?

Next line:

2014.07.29 22:04:32.017 BaseTemplate EURUSD,M5: Logging => fCreat_ArraySymbols => Ошибка № 0 :: Ошибка при работе с объектом

So there is no work with objects at all... What does the object have to do with it? Here's the class method where this error occurred:

// 1.2 Функция возвращает список доступных символов. ======================================================================================
int MakeListOfInstruments::ListOfSymbols (string& fs_Symbols[],      // возваращаемый массив с доступными инструментами
                                          bool    fb_Looking)        // True - из `Обзор рынка`
{
   static bool   lb_FirstRun = true;
          int    li_Offset,
                 li_CountOfSymbols;
          string ls_NameOfFile,
                 ls_Txt;
//----
   if (fb_Looking)
   {
      ls_NameOfFile = "symbols.sel";
   }
   else
   {
      ls_NameOfFile = "symbols.raw";
   }
   //---- Открываем файл с описанием символов
   int hFile = FileOpenHistory (ls_NameOfFile, FILE_BIN|FILE_READ);
    
   if (hFile < 0)
   {
      Print ("Ошибка открытия файла ", ls_NameOfFile, ": ", GetLastError());
      return (-1);
   }
   //---- Определяем количество символов, зарегистрированных в файле
   if (fb_Looking)
   {
      li_CountOfSymbols = (int) (( FileSize (hFile) - 4 ) / 128);
      li_Offset = 116;
   }
   else
   {
      li_CountOfSymbols = (int) (FileSize (hFile ) / 1936);
      li_Offset = 1924;
   }
   ArrayResize (fs_Symbols, li_CountOfSymbols);
   //---- Сдвигаем файловый указатель на 4 байта, дабы пропустить версию MQL
   if (fb_Looking)
   {
      if (!FileSeek (hFile, 4, SEEK_SET))
      {
          Print ("Cмещение файлового указателя через первые 4 байта в symbols.sel ", ls_NameOfFile, " вызвало ошибку: ", GetLastError());
      }
   }
   //---- Считываем и заполняем массив торгуемых инструментов из файла symbols.sel
   for (int i = 0; i < li_CountOfSymbols; i++)
   {
      fs_Symbols[i] = FileReadString (hFile, 12);
        
      if (!FileSeek (hFile, li_Offset, SEEK_CUR))
      {
          Print ("Смещение файлового указателя на li_Offset в списке symbols.sel ", ls_NameOfFile, " вызвало ошибку: ", GetLastError());
      }
   }
   FileClose (hFile);
   //---- Выводим в журнал информацию о количестве торговых инструментов
   if (lb_FirstRun)
   {
      if (fb_Looking)
      {
         ls_Txt = "в окне `Обзор рынка` ";
      }
      else
      {
         ls_Txt = "всех, котируемых ДЦ ";
      }
      Print ("Количество финансовых истументов ", ls_Txt, AccountCompany(), " равно ", li_CountOfSymbols);
      lb_FirstRun = false;
   }
   //---- Возвращаем количество считанных инструментов
   return (li_CountOfSymbols);
}
 

Hi all! I read an article here a while ago about some changes in the terminal and mql4 language (I couldn't find it again, I could paste the link otherwise). Anyway, the idea was that now the Language 4 syntax is similar to MQL5, and the possibility is almost the same.

My question is the following: does it mean that the knowledge obtained in MQL5 will be actual in latest MQL4 builds? In other words, the best way to master the innovations in MQL4 is to study the MQL5 primer.

 
Question on iCustom. The indicator in a separate window displays the price that comes from the Expert Advisor through iCustom.
However, each time iCustom is called for new values from the Expert Advisor, a new window is opened, it should be prevented.

How to organize the interaction between the Indicator and the Expert Advisor correctly in this case, so that new values coming from the Expert Advisor are drawn in the same window under the main price chart?
 
atztek:
Question regarding iCustom. The indicator displays the price coming from the Expert Advisor through iCustom in a separate window.
However, every time iCustom is called for new values from the Expert Advisor, a new window is opened, and we need to prevent it.

How to organize the interaction between the Indicator and the Expert Advisor in this case to draw new values coming from the Expert Advisor in the same window under the main price chart?

  1. Is this happening in debug mode or in run mode?
  2. How exactly do you call iCustom and in which function (OnTick, OnCalculate)
 
barabashkakvn:
  1. Is this happening in debug mode or in run mode?
  2. How exactly do you call iCustom and in which function (OnTick, OnCalculate)

I understand that traders usually use iCustom to receive indicator values, which are then used in the Expert Advisor. My task is the opposite - the values come from the Expert Advisor and the indicator, using indicator buffers, should display them in real time on the chart in one separate window.

As an example, consider copying a certain set number of bars from the main chart into a separate window. The last unclosed bar should change to match the original one, while the others are fixed. When a new bar arrives, the oldest bar is retired and the others are shifted to the left.
I am still working in the old way (init(), start(), deinit() ), I am almost unfamiliar with new functions. Please, advise how to use iCustom correctly in this case.
 
atztek:

The indicator, using indicator buffers, should display values coming from the Expert Advisor in a separate window below the main chart in real time. As an example, consider copying a certain preset number of bars from the main chart into a separate window. The last unclosed bar should change according to the original one, while the others are fixed. When a new bar arrives, the oldest bar is retired and the others are shifted to the left.
I am still working in the old way (init(), start(), deinit() ), I am almost unfamiliar with new functions. Please, advise how to use iCustom correctly in this case.


1. ?

2.? and the code, of course, to see how you call iCustom.

 
barabashkakvn:


1. ?
2.? and code of course, to see how you call iCustom.


1. By real time I meant working mode. Or did you mean something else?
2. I don't understand what code you were asking about? There is EA code that generates values that then need to be displayed on a chart. At this point I want to figure out how to properly solve the problem, what options exist.
Reason: