[АРХИВ] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 3. - страница 245

 

Здравствуйте ! Подскажите, пожалуйста, что не получается с заданием графического объекта.

             Время_фрактала=Time[ФрВниз];                                               // Определение места обозначения фрактала по времени
             Цена_рисунка=Low[ФрВниз];                                                  // Определение места обозначения фрактала по цене
             ObjectCreate("ФрВнизрис",OBJ_TEXT,0,Время_фрактала,Цена_рисунка-2*PointX); // Создание надписи исторического Фр вверх
             ObjectSetText("ФрВнизрис","Фривн",14,"Arial",DarkOrange);                  // Задание свойств надписи
             Error=GetLastError();                                                      // Назначение имени функции проверки ошибок
             Print("Error рисунка = ", Error);

Выдаются сообщения, что параметр имени должен быть string:

(name parameter for ObjectCreate function must be a string

name parameter for ObjectSetText function must be a string )

И что ожидается параметр string: Error рисунка = 4062

В учебнике, в примере (https://book.mql4.com/ru/functions/objects), вроде так же имя обозначено, без string . Или там тоже неправильно ?:

//--------------------------------------------------------------------
// grafobjects.mq4
// Предназначен для использования в качестве примера в учебнике MQL4.
//--------------------------------------------------------------------
int start()                            // Спец. функция start
  {
//--------------------------------------------------------------- 1 --
   int Sit;
   double MACD_M_0,MACD_M_1,           // Главная линия, 0 и 1 бар
   MACD_S_0,MACD_S_1;                  // Сигнальная линия, 0 и 1 бар
   string Text[4];                     // Объявление строков. массива
   color  Color[4];                    // Объявление массива цветов
 
   Text[0]= "Открытие Buy";            // Текст для различных ситуаций
   Text[1]= "Открытие Sell";
   Text[2]= "Удерживаем Buy";
   Text[3]= "Удерживаем Sell";
 
   Color[0]= DeepSkyBlue;              // Цвет объекта ..
   Color[1]= LightPink;                // .. для различных ситуаций
   Color[2]= Yellow;
   Color[3]= Yellow;
//--------------------------------------------------------------- 2 --
   ObjectCreate("Label_Obj_MACD", OBJ_LABEL, 0, 0, 0);// Создание объ.
   ObjectSet("Label_Obj_MACD", OBJPROP_CORNER, 1);    // Привязка угол
   ObjectSet("Label_Obj_MACD", OBJPROP_XDISTANCE, 10);// Координата Х
   ObjectSet("Label_Obj_MACD", OBJPROP_YDISTANCE, 15);// Координата Y
//--------------------------------------------------------------- 3 --
   MACD_M_0 =iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,0);  // 0 бар
   MACD_S_0 =iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,0);// 0 бар
   MACD_M_1 =iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,1);  // 1 бар
   MACD_S_1 =iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,1);// 1 бар
//--------------------------------------------------------------- 4 --
   // Анализ ситуации 
   if(MACD_M_1=MACD_S_0)                      // Персеч. снизу вверх
      Sit=0;
   if(MACD_M_1>MACD_S_1 && MACD_M_0<=MACD_S_0)// Персеч. сверху вниз
      Sit=1;
   if(MACD_M_1>MACD_S_1 && MACD_M_0>MACD_S_0) // Главная выше сигн.
      Sit=2;
   if(MACD_M_1
 
volshebnik:

Здравствуйте ! Подскажите, пожалуйста, что не получается с заданием графического объекта.

Выдаются сообщения, что параметр имени должен быть string:

Попробуйте имя английское.
 

Чтой-то и у моего друга тестер накрылся медным тазиком... Что бы это могло значить?..

Может у кого тоже есть подобные проблемы?

 
nemo811:

Чтой-то и у моего друга тестер накрылся медным тазиком... Что бы это могло значить?..

Может у кого тоже есть подобные проблемы?

Если в истории сделок часто пишет swap close и swap open значит нужно дождатся субботы ..
 
Shniperson:
Если в истории сделок часто пишет swap close и swap open значит нужно дождатся субботы ..
Нет - такого нет. Ещё пару дней назад всё было тип-топ. Со вчерашнего дня у меня и у него начались проблемы (разные результаты тестов одного и того же советника на терминале одного и того же брокера; стали появляться ошибки в журнале - раньше их не было и код совы не менялся; глюки при исполнении кода, кот. раньше уже работал без ошибок и на демке даёт ожидаемые результаты).
 
nemo811:
Нет - такого нет. Ещё пару дней назад всё было тип-топ. Со вчерашнего дня у меня и у него начались проблемы (разные результаты тестов одного и того же советника на терминале одного и того же брокера; стали появляться ошибки в журнале - раньше их не было и код совы не менялся; глюки при исполнении кода, кот. раньше уже работал без ошибок и на демке даёт ожидаемые результаты).

Магнитные бури...

Наверное, у брокера спред плавающий?

А Ваш советник предусматривает изменение брокером уровня STOPLEVEL'а?

 

Оказывается, в MQL4 нельзя передать переменную по ссылке в dll и в ней (в dll) присвоить переменной значение. Можно писать в dll только в массив (допёр до этого методом профессора Тычкова).

Покажите, пожалуйста, кто нибудь, где об этом сказано в документации.

 
MaxZ:

Наверное, у брокера спред плавающий?

А Ваш советник предусматривает изменение брокером уровня STOPLEVEL'а?

Тактика не зациклена на поимке 10 пунктов, образно говоря, поэтому спред здесь точно ни при чём.

Изменение STOPLEVEL'а тоже не объясняет происходящее (тесты проводим одновременно, на одинаковых участках одной и той же пары - результаты получаются разные).

 
nemo811:

Тактика не зациклена на поимке 10 пунктов, образно говоря, поэтому спред здесь точно ни при чём.

Вдумайтесь в Свой ответ... Или результаты тестов различаются на порядок?
 
joo:

Оказывается, в MQL4 нельзя передать переменную по ссылке в dll и в ней (в dll) присвоить переменной значение. Можно писать в dll только в массив (допёр до этого методом профессора Тычкова).

Покажите, пожалуйста, кто нибудь, где об этом сказано в документации.

Была такая тема, где это обсуждалось. Искать надо. Помню, что раньше можно было без ссылки массивы передавать. Потом стало строго по ссылке. Может чего путаю...

В справке есть только это.