Группа "Стол заказов MQL"

Рейтинг 2146



РЕКОМЕНДУЮ



Время свечи

Приветствую Андрей.Прошу сделать индикатор, со следующими параметрами:
1)Выбор день недели
2)Выбор времени свечи
Первая свеча
Выбор high/low
выбор цвета линии
Вторая свеча
Выбор high/low
выбор цвета линии
3) Выбор количества недель отображения линии

По внесёнными параметрам, в обозначенный день, индикатор наносит от этих свечей на N минут/длину(задаётся в коде) горизонтальную линию, от high/low в зависимости от выбора.
На графике это будет выглядеть так:
ПРИМЕР:
день недели — Вт
1 свеча------------------- 09.00
Провести линию----- high
Цвет линии----_-------- DeepSkyBlue
2 свеча_------------------ 15.00
Провести линию----- low
Цвет линии------------ Gold
Количество недель — 5
  • 0
  • Просмотров: 1516
  • 26 октября 2020, 22:16
  • Bluesman
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

Вступите в группу "Стол заказов MQL", чтобы следить за обновлениями
ПРИСОЕДИНИТЬСЯ К ГРУППЕ
присоединиться
  Предыдущая запись в группе
Время свечи
Следующая запись в группе  
Советник на движении свечи
26 октября 2020
29 октября 2020

Брокер для ваших роботов, 15 лет на рынке

Комментарии (10)

+
0
Андрей, будут комментарии?
avatar

  17  Bluesman Автор Сообщений: 67

  • 27 октября 2020, 15:19
+
0
чертим линию от заданной свечи на указанное количество баров или как?
avatar

  35  AM2 Сообщений: 16266 - Андрей

  • 27 октября 2020, 21:04
+
0
индикатор наносит от этих свечей на N секунд/длину(задаётся в коде) горизонтальную линию.



int… = .....; // Длинна линии в секундах

в коде прописывается необходимое количество секунд

Редактирован: 27 октября 2020, 22:18
avatar

  17  Bluesman Автор Сообщений: 67

  • 27 октября 2020, 22:13
+
0
на 30-е
avatar

  35  AM2 Сообщений: 16266 - Андрей

  • 27 октября 2020, 22:17
+
0
Благодарю за отзывчивость.
avatar

  17  Bluesman Автор Сообщений: 67

  • 27 октября 2020, 22:20
+
0
много вопросов по этому индикатору, но то что понял сделал:




//+------------------------------------------------------------------+
//|                                                   CandleTime.mq4 |
//|                                              Copyright 2020, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2020, AM2"
#property link      "http://www.forexsystems.biz"
#property version   "1.00"
#property strict
#property indicator_chart_window

input int days=5;
input int bars=10;
input int t1=9;
input int t2=15;

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping

//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void PutTrendLine(string name,datetime time1,double price1,datetime time2,double price2,color clr)
  {
   ObjectDelete(0,name);
   ObjectCreate(0,name,OBJ_TREND,0,time1,price1,time2,price2);
//--- установим цвет линии
   ObjectSetInteger(0,name,OBJPROP_COLOR,clr);
//--- установим стиль отображения линии
   ObjectSetInteger(0,name,OBJPROP_STYLE,0);
//--- установим толщину линии
   ObjectSetInteger(0,name,OBJPROP_WIDTH,2);
//--- включим (true) или отключим (false) режим продолжения отображения линии вправо
   ObjectSetInteger(0,name,OBJPROP_RAY_RIGHT,false);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
//---
   for(int i=0; i<days; i++)
     {
      datetime begin=iTime(NULL,PERIOD_D1,i);
      datetime tm1=begin+t1*3600;
      datetime tm2=tm1+bars*3600;
      datetime tm3=begin+t2*3600;
      datetime tm4=tm2+bars*3600;
      int bar1=iBarShift(NULL,0,tm1);
      int bar2=iBarShift(NULL,0,tm3);

      PutTrendLine("up"+string(i),tm1,high[bar1],tm2,high[bar1],DeepSkyBlue);
      PutTrendLine("dn"+string(i),tm3,low[bar2],tm4,low[bar2],Gold);
     }


//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+

avatar

  35  AM2 Сообщений: 16266 - Андрей

  • 28 октября 2020, 21:55
+
0
Андрей, приветствую. Первое, что не соответствует тех. заданию, твой индикатор проводит линии каждый день:

Я просил сделать индикатор, который должен проводит линии только от выбранного в параметрах дня недели.Это самый важный параметр
Прошу сделать индикатор, со следующими параметрами:
1)Выбор день недели

ПРИМЕР:
день недели — Вт

То бишь, на скрине, что я привел в примере(тот что сверху) линии проведены по вторникам за последние 5 недель
В твоем варианте он проводит линии каждый день.

Нет в меню выбора откуда проводим линию:
Первая свеча
Выбор high/low
выбор цвета линии
Вторая свеча
Выбор high/low

подразумевается. что после строк в меню t1 =… t2=… будет строчка выбора откуда проводим линию, от high или low свечи
день недели — Вт
1 свеча------------------- 09.00
Провести линию от----- high
Цвет линии----_-------- DeepSkyBlue
2 свеча_------------------ 15.00
Провести линию от----- low
Цвет линии------------ Gold
Количество недель — 5

Резюме: необходимые и основные параметра индикатора — это выбор дня недели и время свечи.Пожалуйста, реши вопрос с выбором дня недели.
много вопросов по этому индикатору

Андрей, с удовольствием и подробно отвечу на все вопросы связанных с тех. заданием.

Редактирован: 29 октября 2020, 11:35
avatar

  17  Bluesman Автор Сообщений: 67

  • 29 октября 2020, 10:06
+
0
avatar

  35  AM2 Сообщений: 16266 - Андрей

  • 29 октября 2020, 18:24
+
0
Андрей!*hi*  При много благодарен!
Если можно это исправить, то будь любезен. А не получиться, да и ладно.



Ты лучший.Да прибудет с тобой сила.
Редактирован: 29 октября 2020, 21:13
avatar

  17  Bluesman Автор Сообщений: 67

  • 29 октября 2020, 21:12
+
+1
Если можно это исправить


вот эту строчку можете подставить:


for(int i=1; i<=weaks; i++)


тогда так будет выглядеть:

avatar

  35  AM2 Сообщений: 16266 - Андрей

  • 29 октября 2020, 21:54

Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий