Ответить
26.09.2012, 18:02
Аватар для eevviill
eevviill eevviill вне форума Заблокирован
За второе место в конкурсе 

Регистрация: 30.07.2009 / Сообщений: 5,474
Поблагодарили 9,031 раз(а) / Репутация: 9031
  • Отправить сообщение для eevviill с помощью Skype™
Василий, тут вариантов несколько, но не полная информация для правильного решения.
Можно расставить последовательность команд в определённой последовательности так чтобы сначала закрылись ордера, переключить флаг и реверс, а потом открывать ордера.
Или можно в цикле закрытия ордеров проверять наличие в OrderComment() строки REVERS.
Здравствуйте. А какя ещё нужна информация? Я про советник DC.
27.09.2012, 06:52
Аватар для eevviill
eevviill eevviill вне форума Заблокирован
За второе место в конкурсе 

Регистрация: 30.07.2009 / Сообщений: 5,474
Поблагодарили 9,031 раз(а) / Репутация: 9031
  • Отправить сообщение для eevviill с помощью Skype™
Мне по большому счёту нужно чтобы после выполнения условия некоторые операции выполнились один раз и всё.
27.09.2012, 07:15
Аватар для AlexeyVik
AlexeyVik AlexeyVik вне форума Программист mql4 mql5
Регистрация: 19.11.2009 / Сообщений: 2,590
Поблагодарили 3,715 раз(а) / Репутация: 3711
Здравствуйте. А какя ещё нужна информация? Я про советник DC.
Я понял, что о нём речь. Потому и сказал о комментарии ордера.
Мне по большому счёту нужно чтобы после выполнения условия некоторые операции выполнились один раз и всё.
А вот это как-раз и не понятно. Вариантов слишком много. Включай скайп, разберёмся.
27.09.2012, 22:45
Регистрация: 27.09.2012 / Сообщений: 2
Поблагодарили 1 раз в 1 сообщении / Репутация: 2
Здравствуйте! Помогите с написанием скрипта пожалуйста:
Код HTML:
bool Result1=1;
  for (int i=0; i<OrdersTotal(); i++)         
     {
      if (OrderSelect(i,SELECT_BY_POS)
        {
         if Result1=((OrderMagicNumber()==Magic1) && (OrderType()>1)) //A
           {
             if (Result1==0)     //B
                {
                     OrderSend(Symbol(),OP_BUYSTOP... и т.д
Суть такова: Если находится ордер А, то ордер ниже НЕ должен выставляться!
И наоборот - если ордер со значением А не находится, то сделка открывается!
PS: В строке B я вообще не соображаю, что писать, так что не серчайте на ошибки) Если можно, то напишите пожалуйста скрипт с пояснениями чтобы понимать!
28.09.2012, 07:42
Регистрация: 13.03.2009 / Сообщений: 2,362
Поблагодарили 1,967 раз(а) / Репутация: 2044
Сообщение от: Сергей Ниоткуда
Здравствуйте! Помогите с написанием скрипта пожалуйста:
Код HTML:
bool Result1=1;
  for (int i=0; i<OrdersTotal(); i++)         
     {
      if (OrderSelect(i,SELECT_BY_POS)
        {
         if Result1=((OrderMagicNumber()==Magic1) && (OrderType()>1)) //A
           {
             if (Result1==0)     //B
                {
                     OrderSend(Symbol(),OP_BUYSTOP... и т.д
Суть такова: Если находится ордер А, то ордер ниже НЕ должен выставляться!
И наоборот - если ордер со значением А не находится, то сделка открывается!
PS: В строке B я вообще не соображаю, что писать, так что не серчайте на ошибки) Если можно, то напишите пожалуйста скрипт с пояснениями чтобы понимать!
Код:
bool Result1=true;
  for (int i=0; i<OrdersTotal(); i++)         
     {
      if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)
        {
         if((OrderMagicNumber()==Magic1) && (OrderType()>1))Result1=false;//A
        }
      }
if (Result1) OrderSend(Symbol(),OP_BUYSTOP... и т.д
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
28.09.2012, 08:06
Аватар для eevviill
eevviill eevviill вне форума Заблокирован
За второе место в конкурсе 

Регистрация: 30.07.2009 / Сообщений: 5,474
Поблагодарили 9,031 раз(а) / Репутация: 9031
  • Отправить сообщение для eevviill с помощью Skype™
Сообщение от: Сергей Ниоткуда
Здравствуйте! Помогите с написанием скрипта пожалуйста:
Код HTML:
bool Result1=1;
  for (int i=0; i<OrdersTotal(); i++)         
     {
      if (OrderSelect(i,SELECT_BY_POS)
        {
         if Result1=((OrderMagicNumber()==Magic1) && (OrderType()>1)) //A
           {
             if (Result1==0)     //B
                {
                     OrderSend(Symbol(),OP_BUYSTOP... и т.д
Суть такова: Если находится ордер А, то ордер ниже НЕ должен выставляться!
И наоборот - если ордер со значением А не находится, то сделка открывается!
PS: В строке B я вообще не соображаю, что писать, так что не серчайте на ошибки) Если можно, то напишите пожалуйста скрипт с пояснениями чтобы понимать!
Не знаю что ты конкретно имеешь ввиду, но возможно тебе поможет команда break. Она отсанавливает цыкл.

PHP код:
bool order2_open=false;
for (
int i=0i<OrdersTotal(); i++)         
     {
      if (
OrderSelect(i,SELECT_BY_POS)
        {
          if ((
OrderMagicNumber()==Magic1) && (OrderType()>1))
 
order2_open=true;
break;
}

01.10.2012, 06:39
Регистрация: 27.09.2012 / Сообщений: 2
Поблагодарили 1 раз в 1 сообщении / Репутация: 2
Ребята! Спасибо за помощь! Выручили!
05.10.2012, 12:21
Аватар для SlavaR
SlavaR SlavaR вне форума Активный участник
Регистрация: 25.05.2010 / Адрес: Москва / Сообщений: 81
Поблагодарили 33 раз(а) / Репутация: 34
  • Отправить сообщение для SlavaR с помощью ICQ Отправить сообщение для SlavaR с помощью Skype™

По умолчанию Помогите!

Здравствуйте.
Помогите пожалуйста, с написанием работы кода советника.
Должен работать так: сначала выставляются байстоп и селстоп ордера. Как цена достигла одного из ник, и стала рыночной, второй, убирается, и на его место должен выстаиться удвоенный. А получается постоянное удаление и установка этого ордера, потому что незнаю, как прописать ещё одно нужное условие, ну например удаление по тикету.
Вот код:
Заранее всем премного благодарен, осообенно eevviill за то что сподвиг на это и за его уроки продолжай - надо .

PHP код:
 //+------------------------------------------------------------------+
//|            модуль установки   ордеров                            |
//+------------------------------------------------------------------+
   
if (li_64 == && li_68 == && ld_24 MaxLoss) {    //если 
      
price_112 NormalizeDouble(Ask FirstStep PointDigits);  // то цена = 
      
if (li_56 == ||price_112 NormalizeDouble(ld_76 FirstStep PointDigits)) {
         if (
li_56 == 0lots_120 lot// если li_56(бай) не изменилось то лот равен условленному
               
OrderSend(Symbol(), OP_BUYSTOPlots_120price_112300" TStopOrd_T BuyS"Magic0Blue); //посылаем ордер  
      
}
   }
      
      if (
cmd_72 == OP_SELL  && li_60 != 0) {    //если 
      
price_112 NormalizeDouble(Ask FirstStep PointDigits);  // то цена = 
      
if (cmd_72 == OP_SELL || price_112 NormalizeDouble(ld_76 FirstStep PointDigits)) {
         if (
li_60 != && cmd_72 == OP_SELL )lots_120 lot MathPow(K_Lotli_60) + li_60 PlusLot//иначе lot_120 = 
         
OrderSend(Symbol(), OP_BUYSTOPlots_120price_112300"TStopOrd_T BuyS "Magic0Blue); //посылаем ордер
         
}
     }  
    
      if (
li_68 == && li_64 == && ld_16 MaxLoss)  {    //если 
       
price_112 NormalizeDouble(Bid FirstStep PointDigits);   // то цена = 
      
if (li_60 == || price_112 NormalizeDouble(ld_100 FirstStep PointDigits)) {
         if (
li_60 == 0lots_120 lot// если li_60 sell не изменилось то лот равен условленному
               
OrderSend(Symbol(), OP_SELLSTOPlots_120price_112300" TStopOrd_T SellS"Magic0Red); //посылаем ордер                
      
}
   } 
       
       if (
cmd_72 == OP_BUY  && li_56 != 0) {     //если
      
price_112 NormalizeDouble(Bid FirstStep PointDigits);  
      if (
cmd_72 == OP_BUY || price_112 NormalizeDouble(ld_100 FirstStep PointDigits)) {
         if (
li_56 != && cmd_72 == OP_BUYlots_120 lot MathPow(K_Lotli_56) + li_56 PlusLot//иначе lot_120 =
         
OrderSend(Symbol(), OP_SELLSTOPlots_120price_112300" TStopOrd_T SellS"Magic0Red); //посылаем ордер
       
}
   } 
   
 
if (
cmd_72 == OP_BUYSTOP && li_60 == 1  || lots_120 == lot)OrderDelete(OrderTicket());
 if (
cmd_72 == OP_SELLSTOP && li_56 == 1  || lots_120 == lot)OrderDelete(OrderTicket()); 
05.10.2012, 12:51
Аватар для AlexeyVik
AlexeyVik AlexeyVik вне форума Программист mql4 mql5
Регистрация: 19.11.2009 / Сообщений: 2,590
Поблагодарили 3,715 раз(а) / Репутация: 3711
Здравствуйте.
Помогите пожалуйста, с написанием работы кода советника.
Должен работать так: сначала выставляются байстоп и селстоп ордера. Как цена достигла одного из ник, и стала рыночной, второй, убирается, и на его место должен выстаиться удвоенный. А получается постоянное удаление и установка этого ордера, потому что незнаю, как прописать ещё одно нужное условие, ну например удаление по тикету.
Вот код:
Заранее всем премного благодарен, осообенно eevviill за то что сподвиг на это и за его уроки продолжай - надо .
Читать декомпил не по-мне. А на вопрос ответить могу.
В этом случае надо добавить условие наличия противоположного ордера. На человеческом языке так: если ордера бай нету и ордера селстоп нету то поставим ордер селстоп со стартовым лотом, а если есть то удалим селстоп и поставим ордер селстоп с удвоенным лотом.
05.10.2012, 13:53
Аватар для SlavaR
SlavaR SlavaR вне форума Активный участник
Регистрация: 25.05.2010 / Адрес: Москва / Сообщений: 81
Поблагодарили 33 раз(а) / Репутация: 34
  • Отправить сообщение для SlavaR с помощью ICQ Отправить сообщение для SlavaR с помощью Skype™
Читать декомпил не по-мне. А на вопрос ответить могу.
В этом случае надо добавить условие наличия противоположного ордера. На человеческом языке так: если ордера бай нету и ордера селстоп нету то поставим ордер селстоп со стартовым лотом, а если есть то удалим селстоп и поставим ордер селстоп с удвоенным лотом.
Данное условие я прописывал, именно с начальным лотом, но почему-то оно не работает. То есть я прописал переменную ob_1 = начальному лоту и вставил в код причем в разные места и делал её и булиан как, сейчас, и дабл, всё равно не удалят.
PHP код:
  if (cmd_72 == OP_BUYSTOP && li_60 == && ob_1 == (true))OrderDelete(OrderTicket()); 
эта строка звучит так, если есть байстоп и сел с начальным лотом, то удаляем стоп ордер. Я к тому, что это условие я писал, но именно когда прописываешь начальный лот, код перестаёт удалять ордер
пипец какойто

Последний раз редактировалось SlavaR; 05.10.2012 в 14:03.
05.10.2012, 15:04
Аватар для AlexeyVik
AlexeyVik AlexeyVik вне форума Программист mql4 mql5
Регистрация: 19.11.2009 / Сообщений: 2,590
Поблагодарили 3,715 раз(а) / Репутация: 3711
Данное условие я прописывал, именно с начальным лотом, но почему-то оно не работает. То есть я прописал переменную ob_1 = начальному лоту и вставил в код причем в разные места и делал её и булиан как, сейчас, и дабл, всё равно не удалят.
PHP код:
  if (cmd_72 == OP_BUYSTOP && li_60 == && ob_1 == (true))OrderDelete(OrderTicket()); 
эта строка звучит так, если есть байстоп и сел с начальным лотом, то удаляем стоп ордер. Я к тому, что это условие я писал, но именно когда прописываешь начальный лот, код перестаёт удалять ордер
пипец какойто
Чтобы удалить стоп. ордер или закрыть рыночный его нужно выбрать функцией OrderSelect() проверить его тип, символ, желательно магик, определить тикет и только потом писать OrderDelete(OrderTicket());
А с какого будуна тебе пришло в голову объявить булеву переменную и присвоить ей размер лота???
Ведь в таком случае если лот будет больше 0, не важно сколько, будет true, начальный лот или конечный компу по-барабану.
05.10.2012, 15:40
Аватар для SlavaR
SlavaR SlavaR вне форума Активный участник
Регистрация: 25.05.2010 / Адрес: Москва / Сообщений: 81
Поблагодарили 33 раз(а) / Репутация: 34
  • Отправить сообщение для SlavaR с помощью ICQ Отправить сообщение для SlavaR с помощью Skype™
Чтобы удалить стоп. ордер или закрыть рыночный его нужно выбрать функцией OrderSelect() проверить его тип, символ, желательно магик, определить тикет и только потом писать OrderDelete(OrderTicket());
А с какого будуна тебе пришло в голову объявить булеву переменную и присвоить ей размер лота???
Ведь в таком случае если лот будет больше 0, не важно сколько, будет true, начальный лот или конечный компу по-барабану.
сделаю
Благодарю.
05.10.2012, 18:25
Аватар для hoz
hoz hoz вне форума Активный участник
Регистрация: 01.04.2011 / Сообщений: 532
Поблагодарили 112 раз(а) / Репутация: 111
  • Отправить сообщение для hoz с помощью ICQ
Я занялся написанием индикатора. По сути на данный момент мне нужно, чтоб рисовалась линия по 2 точках на выбранной машке. Есс-но точки на машке будем выбирать по сдвигу N-баров назад.

На скрине показано, что я хочу нарисовать.


Есс-но я предположил, что нужно изначально найти это 2 точки на машке, по которым нужно рисовать линию.
Я это добавил в код:
PHP код:
 double point1OfMa iMA(Symbol(),maTF,maPeriod,maShiftByPrice,maMethod,maPrice,shiftBarsBack1),   // Находим значение точек для...
           
point2OfMa iMA(Symbol(),maTF,maPeriod,maShiftByPrice,maMethod,maPrice,shiftBarsBack2);   // отрисовки линии по ним. 
Но потом когда начал писать функцию ObjectCreate у меня возникла мысль, что выходит эти значения тут как-бы не нужны.
Ведь в функции ObjectCreate нужно указывать время открытия и цену каждой точки, а точка на машке это другое. Из-за неопытности, т.к. пишу первый индикатор у меня неопределённости.
Т.к. мы рисует линии по машке, а iMA возвращает как я понимаю, цену на тот момент времени на сдвиге определённого бара. Как правильно это понять? Алгоритм не совсем понимаю.

По логике нужно писать так?
PHP код:
ObjectCreatestring nameint typeint windowiTime(string symbolint timeframeshiftBarsBack1), double point1OfMaiTime(string symbolint timeframeshiftBarsBack2), point2OfMa
Про переменные point1OfMa и point2OfMa я уже упомянул выше, они укажут на цену на тот момент времени учитывая сдвиг на машке на shiftBarsBack1 и shiftBarsBack2.
А время уже возьмём из массива времени Time[] через функцию iTime(string symbol, int timeframe, shift), потому что у них будет разные сдвиги т.е. параметр shiftBarsBack1 и shiftBarsBack2.
Верно?

Последний раз редактировалось hoz; 05.10.2012 в 18:40.
05.10.2012, 19:40
Регистрация: 13.03.2009 / Сообщений: 2,362
Поблагодарили 1,967 раз(а) / Репутация: 2044
Я занялся написанием индикатора. По сути на данный момент мне нужно, чтоб рисовалась линия по 2 точках на выбранной машке. Есс-но точки на машке будем выбирать по сдвигу N-баров назад.

На скрине показано, что я хочу нарисовать.


Есс-но я предположил, что нужно изначально найти это 2 точки на машке, по которым нужно рисовать линию.
Я это добавил в код:
PHP код:
 double point1OfMa iMA(Symbol(),maTF,maPeriod,maShiftByPrice,maMethod,maPrice,shiftBarsBack1),   // Находим значение точек для...
           
point2OfMa iMA(Symbol(),maTF,maPeriod,maShiftByPrice,maMethod,maPrice,shiftBarsBack2);   // отрисовки линии по ним. 
Но потом когда начал писать функцию ObjectCreate у меня возникла мысль, что выходит эти значения тут как-бы не нужны.
Ведь в функции ObjectCreate нужно указывать время открытия и цену каждой точки, а точка на машке это другое. Из-за неопытности, т.к. пишу первый индикатор у меня неопределённости.
Т.к. мы рисует линии по машке, а iMA возвращает как я понимаю, цену на тот момент времени на сдвиге определённого бара. Как правильно это понять? Алгоритм не совсем понимаю.

По логике нужно писать так?
PHP код:
ObjectCreatestring nameint typeint windowiTime(string symbolint timeframeshiftBarsBack1), double point1OfMaiTime(string symbolint timeframeshiftBarsBack2), point2OfMa
Про переменные point1OfMa и point2OfMa я уже упомянул выше, они укажут на цену на тот момент времени учитывая сдвиг на машке на shiftBarsBack1 и shiftBarsBack2.
А время уже возьмём из массива времени Time[] через функцию iTime(string symbol, int timeframe, shift), потому что у них будет разные сдвиги т.е. параметр shiftBarsBack1 и shiftBarsBack2.
Верно?
Вроде верно. Единственное что создать объект мало. Нужно ещё задать ему свойства. Например цвет, тольщину, луч... Иначе линия может оказаться невидимой и уходящей в бесконечность.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
eevviill , hoz 
05.10.2012, 23:52
Аватар для hoz
hoz hoz вне форума Активный участник
Регистрация: 01.04.2011 / Сообщений: 532
Поблагодарили 112 раз(а) / Репутация: 111
  • Отправить сообщение для hoz с помощью ICQ
Вот то, что есть на данный момент:

PHP код:
extern string  h1 "основные параметры машки";
extern int     maTF 5;
extern int     maPeriod 50;
extern int     maShiftByPrice 0;
extern int     maMethod 0;
extern int     maPrice 0;
extern string  h2 "===============================";

string         h3 "значения shift для машки";
extern double         shiftBarsBack1 5;   // Первое значение shift.
extern double         shiftBarsBack2 10;  // Второе значение shift.
string         short_Name;
extern string  h4 "===============================";

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 DarkGreen
#property indicator_minimum 30
#property indicator_maximum -30
//+------------------------------------------------------------------+
//|               Функция инициализации индикатора                   |
//+------------------------------------------------------------------+
int init()
  {
   
IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS));
  
// ArrayInitialize
   
  // -------------- блок инициализации закончен ----------------------
   
return(0);
  }
//+------------------------------------------------------------------+
//|              Функция деинициализации индикатора                  |
//+------------------------------------------------------------------+
int deinit()
  {
    
ObjectsDeleteAll(); // Очистим график от всего.
   
return(0);
  }
//+------------------------------------------------------------------+
//|                  Функция итерации эксперта                       |
//+------------------------------------------------------------------+
int start()
  {
    
double point1OfMa iMA(Symbol(),maTF,maPeriod,maShiftByPrice,maMethod,maPrice,shiftBarsBack1),   // Находим значение точек для...
           
point2OfMa iMA(Symbol(),maTF,maPeriod,maShiftByPrice,maMethod,maPrice,shiftBarsBack2);   // отрисовки линии по ним.
    
    
ObjectCreate("trendLine",OBJ_TREND,0,iTime(Symbol(),maTF,shiftBarsBack1),point1OfMa,iTime(Symbol(),maTF,shiftBarsBack2),point2OfMa);
    
ObjectSet("trendLine",OBJPROP_COLOR,Black);
    
ObjectSet("trendLine",OBJPROP_WIDTH,4);
    
ObjectSet("trendLine",OBJPROP_STYLE,DRAW_SECTION);
    
   return(
0);
  } 

Получилось не то, что нужно. Хотя что-то получилось, что уже радует. Вот скрин:



Судя по скину линия рисуется не по тем точкам. А также она не имеет конца. По ходу это не отрезок, а прямая.
Есть недочёт какой-то?
06.10.2012, 07:31
Регистрация: 13.03.2009 / Сообщений: 2,362
Поблагодарили 1,967 раз(а) / Репутация: 2044
Получилась не прямая, луч. Попробуй поменять флаг "луч". Для этого используй ObjectSet
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
06.10.2012, 10:11
Аватар для hoz
hoz hoz вне форума Активный участник
Регистрация: 01.04.2011 / Сообщений: 532
Поблагодарили 112 раз(а) / Репутация: 111
  • Отправить сообщение для hoz с помощью ICQ
В документации есть свойство объекта OBJPROP_RAY, которое позволяет Получать/устанавливать флаг свойства луч для объектов типа OBJ_TREND и ему подобных
Для свойства отрезок подобного не нашлось. Как быть тогда?

Через
PHP код:
etIndexStyle(1,DRAW_SECTION); 
я установил свойство линии в отрезок:

Вот что вышло:
PHP код:
extern string  h1 "основные параметры машки";
extern int     maTF 5;
extern int     maPeriod 50;
extern int     maShiftByPrice 0;
extern int     maMethod 0;
extern int     maPrice 0;
extern string  h2 "===============================";

string         h3 "значения shift для машки";
extern double         shiftBarsBack1 5;   // Первое значение shift.
extern double         shiftBarsBack2 10;  // Второе значение shift.
string         short_Name;
extern string  h4 "===============================";

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 DarkGreen
#property indicator_minimum 30
#property indicator_maximum -30
//+------------------------------------------------------------------+
//|               Функция инициализации индикатора                   |
//+------------------------------------------------------------------+
int init()
  {
   
IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS));
   
SetIndexStyle(1,DRAW_SECTION);
  
// ArrayInitialize
   
  // -------------- блок инициализации закончен ----------------------
   
return(0);
  }
//+------------------------------------------------------------------+
//|              Функция деинициализации индикатора                  |
//+------------------------------------------------------------------+
int deinit()
  {
    
ObjectsDeleteAll(); // Очистим график от всего.
   
return(0);
  }
//+------------------------------------------------------------------+
//|                  Функция итерации эксперта                       |
//+------------------------------------------------------------------+
int start()
  {
    
double point1OfMa iMA(Symbol(),maTF,maPeriod,maShiftByPrice,maMethod,maPrice,shiftBarsBack1),   // Находим значение точек для...
           
point2OfMa iMA(Symbol(),maTF,maPeriod,maShiftByPrice,maMethod,maPrice,shiftBarsBack2);   // отрисовки линии по ним.
    
    
ObjectCreate("trendLine",OBJ_TREND,0,iTime(Symbol(),maTF,shiftBarsBack2),point2OfMa,iTime(Symbol(),maTF,shiftBarsBack1),point1OfMa);
  
//  ObjectSet("trendLine",OBJPROP_COLOR,Black);
  //  ObjectSet("trendLine",OBJPROP_WIDTH,4);
  //  ObjectSet("trendLine",OBJPROP_STYLE,DRAW_SECTION);
   // OBJ_TREND
    
   
return(0);
  } 
Но тем не менее, рисуется всё-равно луч.
06.10.2012, 13:32
Регистрация: 13.03.2009 / Сообщений: 2,362
Поблагодарили 1,967 раз(а) / Репутация: 2044
После установки объекта добавь строчку
ObjectSet("trendLine",OBJPROP_RAY,false);

У меня же получается отрезки рисовать на индикаторе
Нажмите на изображение для увеличения
Название: divercci.gif
Просмотров: 17
Размер:	8.6 Кб
ID:	89866
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!

Последний раз редактировалось Ugar; 06.10.2012 в 13:47.
06.10.2012, 14:35
Аватар для hoz
hoz hoz вне форума Активный участник
Регистрация: 01.04.2011 / Сообщений: 532
Поблагодарили 112 раз(а) / Репутация: 111
  • Отправить сообщение для hoz с помощью ICQ
PHP код:
ObjectSet("trendLine",OBJPROP_RAY,false); 

Про дополнительный параметр false или true в функции ObjectSet в документации ни слова. Как это можно было узнать интересно?
06.10.2012, 15:01
Регистрация: 13.03.2009 / Сообщений: 2,362
Поблагодарили 1,967 раз(а) / Репутация: 2044
PHP код:
ObjectSet("trendLine",OBJPROP_RAY,false); 
Про дополнительный параметр false или true в функции ObjectSet в документации ни слова. Как это можно было узнать интересно?
Цитата:
bool ObjectSet( string name, int prop_id, double value)Изменение значения указанного свойства объекта. В случае успеха функция возвращает TRUE, иначе FALSE. Для получения информации об ошибке необходимо вызвать функцию GetLastError().
См. также ObjectGet(). Параметры:
name - Имя объекта.
prop_id
- Идентификатор свойства объекта. Может быть любым из списка свойств объекта.
value - Новое значение указанного свойства.
От сюда следует что в prop_id задаётся идентификатор, а в value значение этого идентификатора.

Цитата:
OBJPROP_RAY 10 bool Получает/устанавливает флаг свойства луч для объектов типа OBJ_TREND и ему подобных
Здесь упоминается что это флаг, да и тип его указан bool.
А теперь вопрос, какие же значения может иметь флаг с типом bool?
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!

Последний раз редактировалось Ugar; 06.10.2012 в 15:06.
Ответить

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


Опции темы

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

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



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


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