Ваши вопросы по языку MQL4

hoz

Активный участник
От сюда следует что в prop_id задаётся идентификатор, а в value значение этого идентификатора.


Здесь упоминается что это флаг, да и тип его указан bool.
А теперь вопрос, какие же значения может иметь флаг с типом bool?

Истина или ложь.:oops:
Вопрос исчерпан.

Кстати. Но до этого же я писал так:
PHP:
ObjectSet("trendLine",OBJPROP_STYLE,DRAW_SECTION)
DRAW_SECTION - это отрезок между непустыми значениями. Это же не луч, а канкретно отрезок. Неужели этого было мало для терминала и он не понял, что нужен отрезок?
Странно, конечно, что в документации написано, что отрезок между непустыми значениями, ведь между пустыми значениями не построишь объект, так как что б нарисовать что-то нам уже нужны значения..
 
Последнее редактирование:

Алекc1234

Местный житель
Привет всем! Такой вопрос. Открылся рыночный ордер на свече. Мне нужно написать в коде - размер свечи(open-close), на котором открылся ордер. То есть Close-Open/Point, но не для любой свечи, а именно для той, на которой открылся ордер... Спасибо тем, кто подскажет, как это написать
 

hoz

Активный участник
Привет всем! Такой вопрос. Открылся рыночный ордер на свече. Мне нужно написать в коде - размер свечи(open-close), на котором открылся ордер. То есть Close-Open/Point, но не для любой свечи, а именно для той, на которой открылся ордер... Спасибо тем, кто подскажет, как это написать
Ну в тот момент, когда откроется ордер нужно найти размер бара так:
PHP:
BarSize = iHigh( string symbol, int timeframe, int shift)  - iLow( string symbol, int timeframe, int shift)
, где
shift будет 0, т.е. текущий бар...
 
Последнее редактирование:

eevviill

Заблокирован
Ну в тот момент, когда откроется ордер нужно найти размер бара так:
BarSize = iHigh( string symbol, int timeframe, int shift) - iLow( string symbol, int timeframe, int shift), где
shift будет 0, т.е. текущий бар...
Тоесть
PHP:
High[0]-Low[0]
Не. Я думаю он спраштвает как найти например через час бар на котором открылся ордер.
 
Последнее редактирование:

AlexeyVik

Программист mql4 mql5
Истина или ложь.:oops:
Вопрос исчерпан.

Кстати. Но до этого же я писал так:
PHP:
ObjectSet("trendLine",OBJPROP_STYLE,DRAW_SECTION)
DRAW_SECTION - это отрезок между непустыми значениями. Это же не луч, а канкретно отрезок. Неужели этого было мало для терминала и он не понял, что нужен отрезок?
Странно, конечно, что в документации написано, что отрезок между непустыми значениями, ведь между пустыми значениями не построишь объект, так как что б нарисовать что-то нам уже нужны значения..


Ты просто путаешь "Стили рисования - Перечисление стилей рисования для функций SetIndexStyle() и SetLevelStyle()." и "Свойства объектов - Идентификаторы свойств объекта используются в функциях ObjectGet() и ObjectSet()."
 

hoz

Активный участник
Тоесть
PHP:
High[0]-Low[0]
Не. Я думаю он спраштвает как найти например через час бар на котором открылся ордер.


Ну по сути на выходе будет тоже самое. Только у тебя это более кратко вышло.


Ты просто путаешь "Стили рисования - Перечисление стилей рисования для функций SetIndexStyle() и SetLevelStyle()." и "Свойства объектов - Идентификаторы свойств объекта используются в функциях ObjectGet() и ObjectSet()."


Тогда возникает вопрос. Как их не путать? В учебнике вообще про рисование ничего нет по сути.
 

Ugar

Гуру форума
Истина или ложь.:oops:
Вопрос исчерпан.

Кстати. Но до этого же я писал так:
PHP:
ObjectSet("trendLine",OBJPROP_STYLE,DRAW_SECTION)
DRAW_SECTION - это отрезок между непустыми значениями. Это же не луч, а канкретно отрезок. Неужели этого было мало для терминала и он не понял, что нужен отрезок?
Странно, конечно, что в документации написано, что отрезок между непустыми значениями, ведь между пустыми значениями не построишь объект, так как что б нарисовать что-то нам уже нужны значения..
DRAW_SECTION это всего лишь пунктирная линия
 

hoz

Активный участник
Тоесть
PHP:
High[0]-Low[0]
Не. Я думаю он спраштвает как найти например через час бар на котором открылся ордер.

DRAW_SECTION это всего лишь пунктирная линия

отрезок между непустыми значениями переводится на русский язык как пунктирная линия?:oops:
 

AlexeyVik

Программист mql4 mql5
Тогда возникает вопрос. Как их не путать? В учебнике вообще про рисование ничего нет по сути.
Я учебники не читаю к счастью. А чтобы не путать, в MetaEditor`e выдели то о чём хочешь подробней узнать и нажми F1. Прочтёшь много интересного и полезного.
 

hoz

Активный участник
Я учебники не читаю к счастью. А чтобы не путать, в MetaEditor`e выдели то о чём хочешь подробней узнать и нажми F1. Прочтёшь много интересного и полезного.

Я так постоянно делаю, что из браузера не лезть в документацию..
Вот была строка:

PHP:
ObjectSet("trendLine",OBJPROP_STYLE,DRAW_SECTION)

Там сказано что OBJPROP_STYLE устанавливает стиль объекта. Ну я поглядел какие стили как называются и вписал DRAW_SECTION
Но отрезка не появилось в главном окне. И какова логика дальнейшей реализации намеченного, если бы мне Ugar не подсказал, что нужно задать false в ObjectSet("trendLine",OBJPROP_RAY,false); ?
 

AlexeyVik

Программист mql4 mql5
Я так постоянно делаю, что из браузера не лезть в документацию..
Вот была строка:

PHP:
ObjectSet("trendLine",OBJPROP_STYLE,DRAW_SECTION)
Там сказано что OBJPROP_STYLE устанавливает стиль объекта. Ну я поглядел какие стили как называются и вписал DRAW_SECTION
Но отрезка не появилось в главном окне. И какова логика дальнейшей реализации намеченного, если бы мне Ugar не подсказал, что нужно задать false в ObjectSet("trendLine",OBJPROP_RAY,false); ?
Я об этом тебе и говорю. В самом верху написано ... стилей рисования для функций SetIndexStyle() и SetLevelStyle().
Вот это ты упорно не хочешь увидеть. Это свойство для трендовых линий использовать нельзя.
 
  • Like
Реакции: hoz

Ugar

Гуру форума
Андрей, ты совсем зарапортовался...
STYLE_DOT | 2 | Пунктирная линия
Вот мой индикатор дивергенций на cci
divercci.gif

А вот я добавил строчку
ObjectSet(obj_name,OBJPROP_STYLE,DRAW_SECTION);
divercci_section.gif

Действительно, как оказалось. DRAW_SECTION имеет значение 1.
А 1 это для линии
STYLE_DASH 1 Штриховая линия
 

aleks7557

Новичок форума
подскажите пожалуйста.как в сове прописать этот же индикатор но с другими настройками и с другого ТФ:

string _P2="- Настройка индикатора -";

extern int RSI_Period = 40;
extern int RSI_Price = 0; //0-6
extern int Volatility_Band = 34; //20-40
extern int RSI_Price_Line = 2;
extern int RSI_Price_Type = 0; //0-3
extern int Trade_Signal_Line = 7;
extern int Trade_Signal_Type = 0; //0-3
extern int NumberOfComputations = 2;
extern int PeriodNorm=10;
extern int NumberOfBars = 2000;
extern int SSAPrice = PRICE_CLOSE;
extern int SSANumberOfComputations = 3;
extern int SSAPeriodNormalization = 10;
extern int SSANumberOfBars = 300;
extern int FirstBar = 300;
 

hoz

Активный участник
aleks7557, вообще то ты раздел по путал. Тут задаются общие вопросы по языку программирования, а не как сделать..
Тем более ни совы ни настроек других ты не указал. Тут вроде как не провидцы общаются.
 

koko12345

Новичок форума
ребят а как прикрутить функцию мартингейла с готовому советнику????
 

aleks7557

Новичок форума
aleks7557, вообще то ты раздел по путал. Тут задаются общие вопросы по языку программирования, а не как сделать..
Тем более ни совы ни настроек других ты не указал. Тут вроде как не провидцы общаются.
меня как раз и интересуют общие вопросы по языку программирования-в сове используются один индикатор на тф15 для открытия ордера.и этот же на тф Н4 для отслеживания тренда но с другими настройками.
Вопрос -как прописать в условиях ведь переменные индикатора одинаковые .а настройки разные?
пс использую шаблон .не судите строго
 

hoz

Активный участник
меня как раз и интересуют общие вопросы по языку программирования-в сове используются один индикатор на тф15 для открытия ордера.и этот же на тф Н4 для отслеживания тренда но с другими настройками.
Вопрос -как прописать в условиях ведь переменные индикатора одинаковые .а настройки разные?
пс использую шаблон .не судите строго

Вот тебе функция:
PHP:
double Lots()
 {
   int LossCount = 0;
   double LotM=LotsArray[0];
   int total = OrdersHistoryTotal();
   for (int i = total-1; i >= 0; i--)
    {
      OrderSelect(i, SELECT_BY_POS, MODE_HISTORY);
      if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic)
       {
         if (OrderProfit() > 0)
          {
            if (LossCount == 0) LotM=LotsArray[0];
            break;
          }         
          else
           {
            LossCount++;
            LotM=LotsArray[LossCount];
           }
       }
    }
   return(LotM);
}


Вставляешь её в сову, и добавляешь переменную, значение которой это функция возвращает в ordersend()
 

hoz

Активный участник
Я хочу получить значение угла наклона линии.
Вот я указал согласно справке:
PHP:
  ObjectGet("trendLine",OBJPROP_ANGLE);
При выводе на печать параметра OBJPROP_ANGLE всегда выдаётся следующее не зависимо от реального угла:

PHP:
Print("OBJPROP_ANGLE = ", ObjectGet("trendLine",OBJPROP_ANGLE));
Но возникает вопрос, почему тут нет параметров относительно какой оси Y или X получать угол.
Помогите понять как его вообще получать и правильно строить. Что-то в справке по этому поводу вообще пусто.
 
Последнее редактирование модератором:

wiuty

Активный участник
Подскажите пожалуйста, как заставить советника работать на счете ECN (Альпари). На NDD и на стандарте у других дц работает без проблем.
 
Верх