Ответить
07.08.2014, 17:18
Аватар для Александр_Стручков
Александр_Стручков Александр_Стручков вне форума Интересующийся
Регистрация: 14.07.2014 / Адрес: Ачинск / Сообщений: 20
Поблагодарили 1 раз в 1 сообщении / Репутация: 2
Господа, объясните, пожалуйста, возможно ли это и как

Написал советник, в котором используются показания индикатора Momentum. Для визуального контроля работы советника прописал возможность чертить линии и различные дополнительные знаки на графике цены. Выполняет замечательно.

Нужно реализовать рисование дополнительных линий и символов в окне индикатора. Возможно ли это и как реализовать?

В функции ObjectCreate ставлю индекс окна 1. Т.е. окно графика - это 0, а окно индикатора - это 1, но никаких объектов в окне индикатора не появляется
07.08.2014, 17:51
Аватар для matro3
matro3 matro3 вне форума Почётный гражданин
Регистрация: 18.07.2013 / Сообщений: 349
Поблагодарили 340 раз(а) / Репутация: 344

Скрытый текст

Код:
bool  ObjectCreate(
   string        object_name,   // имя объекта
   ENUM_OBJECT   object_type,   // тип объекта
   int           sub_window,    // индекс окна
   datetime      time1,         // время первой точки привязки
   double        price1,        // цена первой точки привязки
   datetime      time2=0,       // время второй точки привязки
   double        price2=0,      // цена второй точки привязки
   datetime      time3=0,       // время третьей точки привязки
   double        price3=0       // цена третьей точки привязки
   );
[свернуть]

Что у вас в значениях цен для точек привязки? Может значение цены валютной пары?
07.08.2014, 18:38
Регистрация: 13.03.2009 / Сообщений: 2,394
Поблагодарили 1,974 раз(а) / Репутация: 2051
Если в подвале только один индикатор, то он конечно №1. Но не стоит забывать что подвалов может быть много, тогда он может быть и другим номером.
Пожалуй стоит поискать индюк ChartWindowFind или WindowFind
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!

Последний раз редактировалось Ugar; 07.08.2014 в 18:45.
09.08.2014, 17:32
Регистрация: 16.10.2011 / Адрес: Новосибирск / Сообщений: 1,054
Поблагодарили 3,190 раз(а) / Репутация: 3195
  • Отправить сообщение для tommy27 с помощью Skype™
Кто нибудь уже пользовался функцией WebRequest ?

Скрытый текст

MQL4: Добавлена функция WebRequest для работы с HTTP-запросами, благодаря которой MQL4-программы теперь могут взаимодействовать с различными сайтами и веб-службами.

С помощью этой новой функции любой робот может обмениваться данными со сторонними сайтами, совершать сделки исходя из свежих новостей и записей экономического календаря, реализовывать аналитику, формировать и публиковать автоматические отчеты, считывать свежие котировки и многое другое, что раньше было доступно только с помощью сомнительных сторонних DLL. При этом для трейдеров все абсолютно безопасно, так как они сами могут контролировать список доверенных веб-сайтов, к которым разрешено обращаться программам.

Функция WebRequest() получает и отправляет информацию с веб-сайтов с помощью GET и POST-запросов. Чтобы разрешить MQL4-программе осуществлять такие запросы, необходимо включить опцию "Разрешить WebRequest для следующих URL" в настройках терминала и явным образом вручную прописать URL-адреса доверенных сайтов.
[свернуть]


Хотелось бы расширить свои познания в этой области, но я так понял что там знаний мкл4 будет недостаточно.
Может есть у кого для примера индюк или сов новостной использующий эту функцию?
Во, прикольно, метаквоты как будто меня услышали - опубликовали живой сов по этой функции. Поковыряюсь на выходных.
_http://www.mql5.com/ru/code/11411

Последний раз редактировалось tommy27; 09.08.2014 в 17:42.
Юла 
10.08.2014, 01:18
Аватар для SIDOYY
SIDOYY SIDOYY вне форума Новичок форума
Регистрация: 22.06.2012 / Сообщений: 35
Поблагодарили 4 раз(а) / Репутация: 4
Здраствуйте, подскажите пожалуйста что и где нужно прописать советники что бы ко всем ордерам он присваивал один и тот же комментарий? А если кому не сложно дописать это все сделайте пожалуйста, сову добавил во вложения.
10.08.2014, 03:24
Аватар для zhserg
zhserg zhserg на форуме Местный знаток
Регистрация: 16.12.2012 / Адрес: Россия, Сибирь / Сообщений: 513
Поблагодарили 726 раз(а) / Репутация: 729
  • Отправить сообщение для zhserg с помощью Skype™
Здраствуйте, подскажите пожалуйста что и где нужно прописать советники что бы ко всем ордерам он присваивал один и тот же комментарий? А если кому не сложно дописать это все сделайте пожалуйста, сову добавил во вложения.
zhserg.ru советники, скрипты, индикаторы на заказ
SIDOYY 
10.08.2014, 03:59
Аватар для SIDOYY
SIDOYY SIDOYY вне форума Новичок форума
Регистрация: 22.06.2012 / Сообщений: 35
Поблагодарили 4 раз(а) / Репутация: 4
Огромное вам спасибо... в понедельник проверю.
10.08.2014, 08:10
Аватар для советник
советник советник вне форума Интересующийся
Регистрация: 24.12.2013 / Адрес: Inostranec / Сообщений: 66
Поблагодарили 5 раз(а) / Репутация: 6
У меня есть информация, что теперь никто не может декомпилировать EA. После последнего обновления МТ4. Правда ли это?
10.08.2014, 09:01
Регистрация: 13.03.2009 / Сообщений: 2,394
Поблагодарили 1,974 раз(а) / Репутация: 2051
Сообщение от: советник
У меня есть информация, что теперь никто не может декомпилировать EA. После последнего обновления МТ4. Правда ли это?
Возможно пока не выйдет новый декомпил. Это вечное противостояние компилятора и декомпилятора. Метаквоты периодически меняют компиляторы что бы декомпил не мог вскрывать программы, а через какое то время выходит новый декомпилятор, который уже может вскрывать. Потом опять метаквоты меняют компилятор...
Вскрыть можно всё что представляет интерес. Не вскрывается только то что никому не нужно. Ну или если сложность вскрытия не соответствует надобности результата.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!

Последний раз редактировалось Ugar; 10.08.2014 в 09:04.
10.08.2014, 18:10
Регистрация: 16.10.2011 / Адрес: Новосибирск / Сообщений: 1,054
Поблагодарили 3,190 раз(а) / Репутация: 3195
  • Отправить сообщение для tommy27 с помощью Skype™
Сообщение от: советник
У меня есть информация, что теперь никто не может декомпилировать EA. После последнего обновления МТ4. Правда ли это?
Я думаю вряд ли декомпилы будут, новому билду уже пол года, а воз и ныне там.
Да и у метаквотов на этом билде весь их новый проект(взрывной и прибыльный по их словам) Маркета приложений для МТ4 построен и допустить взлом - они себе вряд ли позволят, это будет гвоздём в крышку гроба всего их проекта я чет не видел ломанные МТ5 файлы, ломануть наверно возможно - ломают и не такое, но расчет здесь прост - цена взлома выйдет намного дороже приобретения легального продукта, это единственный действенный метод борьбы.
Юла 
11.08.2014, 03:41
Аватар для Александр_Стручков
Александр_Стручков Александр_Стручков вне форума Интересующийся
Регистрация: 14.07.2014 / Адрес: Ачинск / Сообщений: 20
Поблагодарили 1 раз в 1 сообщении / Репутация: 2
Что у вас в значениях цен для точек привязки? Может значение цены валютной пары?
В качестве цен используются значения индикатора
11.08.2014, 03:42
Аватар для Александр_Стручков
Александр_Стручков Александр_Стручков вне форума Интересующийся
Регистрация: 14.07.2014 / Адрес: Ачинск / Сообщений: 20
Поблагодарили 1 раз в 1 сообщении / Репутация: 2
Если в подвале только один индикатор, то он конечно №1. Но не стоит забывать что подвалов может быть много, тогда он может быть и другим номером.
Пожалуй стоит поискать индюк ChartWindowFind или WindowFind
Ugar, не помогло. Хотя и необходимость уже отпала. В любом случае спасибо за совет
11.08.2014, 18:28
Аватар для zliden
zliden zliden вне форума Активный участник
Регистрация: 28.08.2011 / Адрес: Эдем / Сообщений: 44
Поблагодарили 25 раз(а) / Репутация: 26
Приветствую Уважаемых коллег!
Подскажите пожалуйста: что дописать , чтобы скрипт закрывал сделку через 10 минут после её открытия?
11.08.2014, 19:03
Аватар для AlexeyVik
AlexeyVik AlexeyVik на форуме Программист mql4 mql5
Регистрация: 19.11.2009 / Сообщений: 2,625
Поблагодарили 3,758 раз(а) / Репутация: 3750
Приветствую Уважаемых коллег!
Подскажите пожалуйста: что дописать , чтобы скрипт закрывал сделку через 10 минут после её открытия?
Сначала выбрать ордер. (возможно он будет не один) Проверить свой-чужой и условие
if(TimeCurrent() - OrderOpenTime() >= 10*60)
если условие выполнено - закрыть ордер.
zliden 
12.08.2014, 02:19
Аватар для Zolotai
Zolotai Zolotai вне форума Новичок форума
Регистрация: 15.04.2014 / Сообщений: 30
Поблагодарили 4 раз(а) / Репутация: 5
Как заполучить массив ордеров(те,что на данный момент(не историю)) , далее перебрать в цикле...?
Можно ли сразу заполучить массив по критерию. К примеру по типу ордера, сразу одной функцией?

Последний раз редактировалось Zolotai; 12.08.2014 в 02:22.
12.08.2014, 03:56
Аватар для matro3
matro3 matro3 вне форума Почётный гражданин
Регистрация: 18.07.2013 / Сообщений: 349
Поблагодарили 340 раз(а) / Репутация: 344
Как заполучить массив ордеров(те,что на данный момент(не историю)) , далее перебрать в цикле...?
Можно ли сразу заполучить массив по критерию. К примеру по типу ордера, сразу одной функцией?
Код:
int cnt = OrdersTotal();
  
   for (int i=0; i<cnt; i++)
   {
      if (!(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))) continue;
      if (OrderSymbol() != Symbol()) continue;
      if (OrderMagicNumber() != magicNum) continue;

      int type = OrderType();
      if (type == OP_BUY)
      {
      }
    
      if (type == OP_SELL)
      {
      }
   }
12.08.2014, 06:27
Аватар для Zolotai
Zolotai Zolotai вне форума Новичок форума
Регистрация: 15.04.2014 / Сообщений: 30
Поблагодарили 4 раз(а) / Репутация: 5
Предположим я бы хотел изменить цену. Передвинуть отложный ордер.
Код:
OrderModify(cnt, OrderOpenPrice(), 0 , 0, 0, Green);
Подскажите в данной функции где прописывать цену и, что за функция которая покажет текущую цену инструмента?

Последний раз редактировалось Zolotai; 12.08.2014 в 06:31.
12.08.2014, 06:38
Аватар для Zolotai
Zolotai Zolotai вне форума Новичок форума
Регистрация: 15.04.2014 / Сообщений: 30
Поблагодарили 4 раз(а) / Репутация: 5
Прописываю

Код HTML:
int start()
  {  

Print("фывфывывфr");
     return(0);
  
  }
И потом если прописать так....
Код HTML:
   for (int i=0; i<cnt; i++)
   { 
    
     if (OrderSymbol() != Symbol()) continue;
    
         Alert('1');

    }
По данному символу есть отложные ордера. Но сигнала нет...
Прописав так
Код HTML:
   for (int i=0; i<cnt; i++)
   { 

    Alert('1');
    
     if (OrderSymbol() != Symbol()) continue;
    


    }
Сигналит...

Так тоже не пропускает
Код HTML:
    if (OrderSymbol() == Symbol())
           Alert('1');
Вот весь код... Что не так?
Код HTML:
//+------------------------------------------------------------------+
//|                                                        jjjjj.mq4 |
//|                        Copyright 2014, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2014, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.00"                

double type;

int start()
  {
  
      Print("symbol of order", OrderSymbol());
       
      int cnt = OrdersTotal();
  
      for (int i=0; i<cnt; i++)  {
      

         if (OrderSymbol() == Symbol()){
           Alert('1');
         
         }
 
         type = OrderType();
    
         if (type == OP_BUYLIMIT){

              Alert('1');         
                 
              //OrderModify(cnt, OrderOpenPrice(), 0 , 0, 0, Green);
      
         }else if(type == OP_SELLLIMIT){
         
              Alert('l');
      
         }
         
      }
  
     return(0);
  
  }

Последний раз редактировалось Zolotai; 12.08.2014 в 07:03.
12.08.2014, 07:29
Аватар для matro3
matro3 matro3 вне форума Почётный гражданин
Регистрация: 18.07.2013 / Сообщений: 349
Поблагодарили 340 раз(а) / Репутация: 344
Предположим я бы хотел изменить цену. Передвинуть отложный ордер.
Код:
OrderModify(cnt, OrderOpenPrice(), 0 , 0, 0, Green);
Подскажите в данной функции где прописывать цену и, что за функция которая покажет текущую цену инструмента?
Все есть в справке
http://docs.mql4.com/ru/trading/ordermodify
12.08.2014, 07:31
Аватар для matro3
matro3 matro3 вне форума Почётный гражданин
Регистрация: 18.07.2013 / Сообщений: 349
Поблагодарили 340 раз(а) / Репутация: 344
Код:
for (int i=0; i<cnt; i++)
   { 
    
     if (OrderSymbol() != Symbol())
         Alert('1');
         continue;

    }
Сначала сигнал, а потом выход из цикла
Ответить

Метки
mql4, mql4 помощь, вопросы mql4


Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Выкл.
Pingbacks are Выкл.
Refbacks are Выкл.



Текущее время: 10:54. Часовой пояс GMT.


Перевод: zCarot
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
SEO by vBSEO