Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 752

 
Господа не подскажете где найти полезные, статьи, по работам с кнопками, в метатрейдер 4.
 
BillionerClub:
Господа не подскажете где найти полезные, статьи, по работам с кнопками, в метатрейдер 4.
Здесь.
OBJ_BUTTON - Типы объектов - Константы объектов - Константы, перечисления и структуры - Справочник MQL4
OBJ_BUTTON - Типы объектов - Константы объектов - Константы, перечисления и структуры - Справочник MQL4
  • docs.mql4.com
Следующий скрипт создает и перемещает на графике объект "Кнопка". Для создания и изменения свойств графического объекта написаны специальные функции, которые вы можете использовать "как есть" в своих собственных программах. //| Создает кнопку                                                   |               chart_ID=0,               ...
 
Alexey Viktorov:
Здесь.

Доброе время суток, гуру программисты, помогите исправить автофибку.

1. Нужно перевернуть растяжку фибо, что бы не от 0 растягивалась, а от 100, тоесть растяжка должна начинаться от последнего HI до LOW и от LOW до HI и начало растяжки от 100 уровня по барно за ценой как в автофибо, только наоборот. Если фибо растянулось нашло HI или LOW фибка переворачивается и закрашивается в другой цвет, если с цветом сложно пусть так и остается.
2. включать и отключать ценовой канал.
3. Возможность в коде добавлять и изменять уровни и на каждом уровне должна указываться цена, нужен уровень 23.6 и другие уровни.
4. в момент выставления ордера в сетке фибо в сторону растяжки фибо прекращает растягиватся, после отработки ордера, фибо удаляется. Растяжку начинает новое фибо в развернутое в противоположную сторону и покрашенную в другой цвет..

для моего понимания, прошу отметить в коде что меняли.

Файл прилагается....


Заранее благодарен.

#property link      "___"

#property  indicator_chart_window

#property indicator_buffers  2

#property  indicator_color1  LightSkyBlue

#property  indicator_color2  Plum

 
extern int       Band_Period   = 10;

extern int       price_type    = 0; // 0 = High/Low | 1 = Open/Close

 
//---- buffers

double WWBuffer1[];

double WWBuffer2[];

double WWBuffer3[];

double ATR;

int init() {

   IndicatorBuffers(2);


   SetIndexStyle(0,DRAW_LINE,1);

   SetIndexStyle(1,DRAW_LINE,1);
   

   SetIndexLabel(0, "High");

   SetIndexLabel(1, "Low");
   

   SetIndexBuffer(0, WWBuffer1);

   SetIndexBuffer(1, WWBuffer2);
   

   IndicatorDigits(Digits+2);

   
   IndicatorShortName("Automatic Fibonacci");

   
   ObjectCreate("AutoFibo", OBJ_FIBO, 0, Time[0],High[0],Time[0],Low[0]);
   

   return(0);

}

int deinit() {

   ObjectDelete("AutoFibo");

}

int start() {

   int    counted_bars=IndicatorCounted();

   int    limit,i;

   

   if(counted_bars>0) counted_bars--;

   limit=Bars-counted_bars;
   

   for(i=limit-1; i>=0; i--) {
 

      WWBuffer1[i] = getPeriodHigh(Band_Period,i);

      WWBuffer2[i] = getPeriodLow(Band_Period,i);
      

      ObjectSet("AutoFibo", OBJPROP_TIME1, Time[Band_Period]);

      ObjectSet("AutoFibo", OBJPROP_TIME2, Time[0]);

      if (Open[Band_Period] < Open[0]) { // Up

         ObjectSet("AutoFibo", OBJPROP_PRICE1, getPeriodHigh(Band_Period,i));

         ObjectSet("AutoFibo", OBJPROP_PRICE2, getPeriodLow(Band_Period,i));

      } else {

         ObjectSet("AutoFibo", OBJPROP_PRICE1, getPeriodLow(Band_Period,i));

         ObjectSet("AutoFibo", OBJPROP_PRICE2, getPeriodHigh(Band_Period,i));

      }


   }

   return(0);

}

 

double getPeriodHigh(int period, int pos) {

   int i;

   double buffer = 0;

   for (i=pos;i<=pos+period;i++) {

      if (price_type == 0) {

         if (High[i] > buffer) {

            buffer = High[i];

         }

      } else {

         if (Open[i] > Close[i]) { // Down

            if (Open[i] > buffer) {

               buffer = Open[i];

            }

         } else {

            if (Close[i] > buffer) {

               buffer = Close[i];

            }

         }

      }

   }

   return (buffer);

}

double getPeriodLow(int period, int pos) {

   int i;

   double buffer = 100000;

   for (i=pos;i<=pos+period;i++) {

      if (price_type == 0) {

         if (Low[i] < buffer) {

            buffer = Low[i];

         }

      } else {

         if (Open[i] > Close[i]) { // Down

            if (Close[i] < buffer) {

               buffer = Close[i];

            }

         } else {

            if (Open[i] < buffer) {

               buffer = Open[i];

            }

         }

      }

   }

   return (buffer);

}

Файлы:
AutoFibo.mq4  6 kb
 
Всем форумчанам привет.

Ребята помогите пожалуйста начинающему познавать
азы программирования на MQL4.MT4
    
Интересует Функция SendMail

Как правильно написать код
чтобы при достижении  советником заданного процента просадки депозита,
советник один рас отправил бы Е-майл сообщение.
Помогите пожалуйста, очень надо !

Зарание огромное спасибо.
 
Ruslan:
Всем форумчанам привет.

Ребята помогите пожалуйста начинающему познавать
азы программирования на MQL4.MT4
    
Интересует Функция SendMail

Как правильно написать код
чтобы при достижении  советником заданного процента просадки депозита,
советник один рас отправил бы Е-майл сообщение.
Помогите пожалуйста, очень надо !

Зарание огромное спасибо.
Как только просадка депозита достигает заданного процента, отсылаете сообщение на эл.почту.
 
Ruslan:
Всем форумчанам привет.

Ребята помогите пожалуйста начинающему познавать
азы программирования на MQL4.MT4
    
Интересует Функция SendMail

Как правильно написать код
чтобы при достижении  советником заданного процента просадки депозита,
советник один рас отправил бы Е-майл сообщение.
Помогите пожалуйста, очень надо !

Зарание огромное спасибо.

У вас не работает поиск по форуму?

Изменить скрипт
Изменить скрипт
  • 2018.02.20
  • www.mql5.com
Здравствуйте. Поскольку сам mql не знаю, кому не сложно, помогите пожалуйста чуть изменить скрипт...
 
Artyom Trishkin:
Как только просадка депозита достигает заданного процента, отсылаете сообщение на эл.почту.
Артём может вы могли бы написать хоть какой то пример кода, как это должно выгледеть ?
 
Ruslan:
Артём может вы могли бы написать хоть какой то пример кода, как это должно выгледеть ?
Мог бы, но не буду. Очень всё просто. Почитайте справку - интереснейшее занятие.
 
Artyom Trishkin:
Мог бы, но не буду. Очень всё просто. Почитайте справку - интереснейшее занятие.
Когда человек только только начинает изучать MQL для него не всё так просто, по крайней мере для меня.
Но всё же спасибо хоть и за такой ваш ответ.
 
Ruslan:
Когда человек только только начинает изучать MQL для него не всё так просто, по крайней мере для меня.
Но всё же спасибо хоть и за такой ваш ответ.
Все ж начинали. Дал совет по себе.
Причина обращения: