Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 334

 
Melko:

II Вот элементарная ф-ция выставления отлож. ордеров, параметры не важны, а важно заставить советника (можно использовать имеющийся в нем цикл перебора ордеров) после получения «новой цены» или перебрать, или каким-то иным образом сообразить не наставлять ордера с одной ценой. При этом цикл выставления ордеров не должен останавливаться. Помогите кто может.

Продублируйте ещё раз сто во всех ветках форума, может быстрее откликнутся.
 

Доброго времени суток, всем !

Просмотрев все страницы советников, обращаясь к кодам советников на основе отложенных ордеров,

а так же, полистав страницы Форума, перечитав еще раз учебник по MQL и Документацию, я не нашел ответа.

Возможно плохо смотрел. Решил спросить тут.

Пишу советник на основе выставления отложенных ордеров. Ранее, с критерием открытия позиции на основе данных индикатора не было проблем (<,>,= и т.д.).

Но, в настоящий момент, система безиндикаторная. Критерием открытия позиции является ЦЕНА.

А именно, при Биде равном уровню ЦЕНЫ, допустим ХХХ.00 или ХХХ.50 (для йеновых пар), блок критериев говорит, что

есть критерий на покупку (продажу) и отправляет в блок открытия ордеров.

Приблизительный пример на рис. 1, когда уровень фиксирован и задается, например пользователем.

int start()                                   // Спец. функция start
  {
//----
   double
   Level,                                     // Сигнальный уровень
   Price;                                     // Текущая цена
   Level=140.00;                              // Задаём уровень
   Price=Bid;                                 // Запрашиваем цену
//----
    if (Price==Level)                          // Оператор if с условием
     {
      Alert("Курс равен  заданному уровеню");  // Сообщение трейдеру
     }

   return;// Выход из start()
  }

Вопрос в том, как прописать условие, что бы текущий БИД сравнивать с заранее не установленными, но ровными уровнями,

например 140.00, 141.00, 142.00 .... а именно с ХХХ.00

Первая часть условия понятна, например

if (NormalizeDouble(Price,Digits) >= NormalizeDouble(Level,Digits))

Во второй части с Level, как быть.

Заранее всем благодарен,

С уважением,


P.S. Если это уже обсуждалось и я проглядел, ткните меня пож.

 
Melko:

II Вот элементарная ф-ция выставления отлож. ордеров, параметры не важны, а важно заставить советника (можно использовать имеющийся в нем цикл перебора ордеров) после получения «новой цены» или перебрать, или каким-то иным образом сообразить не наставлять ордера с одной ценой. При этом цикл выставления ордеров не должен останавливаться. Помогите кто может.

Удалите все свои портянки и раньше выставления ордеров научитесь вставлять код нажимом кнопки SRC !
 
Shum_sp:

Доброго времени суток, всем !

Просмотрев все страницы советников, обращаясь к кодам советников на основе отложенных ордеров,

а так же, полистав страницы Форума, перечитав еще раз учебник по MQL и Документацию, я не нашел ответа.

Возможно плохо смотрел. Решил спросить тут.

Пишу советник на основе выставления отложенных ордеров. Ранее, с критерием открытия позиции на основе данных индикатора не было проблем (<,>,= и т.д.).

Но, в настоящий момент, система безиндикаторная. Критерием открытия позиции является ЦЕНА.

А именно, при Биде равном уровню ЦЕНЫ, допустим ХХХ.00 или ХХХ.50 (для йеновых пар), блок критериев говорит, что

есть критерий на покупку (продажу) и отправляет в блок открытия ордеров.

Приблизительный пример на рис. 1, когда уровень фиксирован и задается, например пользователем.

Вопрос в том, как прописать условие, что бы текущий БИД сравнивать с заранее не установленными, но ровными уровнями,

например 140.00, 141.00, 142.00 .... а именно с ХХХ.00

Первая часть условия понятна, например

Во второй части с Level, как быть.

Заранее всем благодарен,

С уважением,


P.S. Если это уже обсуждалось и я проглядел, ткните меня пож.


if (NormalizeDouble(Price,Digits) >= NormalizeDouble(Bid,0)) //Для 4-х знаков можно и 1 или 2 вместо 0.
 
evillive:


Перебор, имхенько.

Сам ответишь?

 
tara:


Перебор, имхенько.

Сам ответишь?


Каков вопрос, как говорится, таков и ответ. Кто же знает как там прайс считается, да и левел не указан заранее...


Но если price = Bid, то

if (Bid >= NormalizeDouble(Bid,0)) //опять же можно и 1 или 2 вместо 0.
 
Shum_sp:

Доброго времени суток, всем !

Просмотрев все страницы советников, обращаясь к кодам советников на основе отложенных ордеров,

а так же, полистав страницы Форума, перечитав еще раз учебник по MQL и Документацию, я не нашел ответа.

Возможно плохо смотрел. Решил спросить тут.

Пишу советник на основе выставления отложенных ордеров. Ранее, с критерием открытия позиции на основе данных индикатора не было проблем (<,>,= и т.д.).

Но, в настоящий момент, система безиндикаторная. Критерием открытия позиции является ЦЕНА.

А именно, при Биде равном уровню ЦЕНЫ, допустим ХХХ.00 или ХХХ.50 (для йеновых пар), блок критериев говорит, что

есть критерий на покупку (продажу) и отправляет в блок открытия ордеров.

Приблизительный пример на рис. 1, когда уровень фиксирован и задается, например пользователем.

Вопрос в том, как прописать условие, что бы текущий БИД сравнивать с заранее не установленными, но ровными уровнями,

например 140.00, 141.00, 142.00 .... а именно с ХХХ.00

Первая часть условия понятна, например

Во второй части с Level, как быть.

Заранее всем благодарен,

С уважением,


P.S. Если это уже обсуждалось и я проглядел, ткните меня пож.


При такой схеме можно просто сравнивать переменные, в том числе на равенство.
 
Shum_sp:

Вопрос в том, как прописать условие, что бы текущий БИД сравнивать с заранее не установленными, но ровными уровнями,

например 140.00, 141.00, 142.00 .... а именно с ХХХ.00



int Level=140;                              // Задаём уровень
 
:)
 
artmedia70:


Доброго времени суток!


Имеется в виду, что очень много прописывать все уровни.

Советник САМ должен определит, что уровень ХХХ.00, пользователь не должен в этом участвовать и указывать уровни, при которых работать.

Я не могу понять, как ему объяснить, что текущая цена ХХХ.00

Спасибо всем.

Причина обращения: