Занятие 4

Вход только для группы Мастерская Forex Роботов 3. Для входа пройдите авторизацию.
Аватара пользователя
Николай
Сообщения: 59
Зарегистрирован: 14 ноя 2016, 00:07

Занятие 4

Сообщение Николай » 01 май 2017, 18:00

Тема вебинара:
Работаем над функциями:
1) Дорабатываем функции установки ордеров.
2) Функция удаления ордеров.
3) Функция учета данных по ордерам.
ссылка в вебинарную комнату http://www.webinar.texno-forex.ru/masterskaya3/
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Как и на чем заработать уже за первый месяц и делать это снова и снова Узнайте как
Регистрация и учебные материалы бесплатно.

Аватара пользователя
BERSERKER
Сообщения: 6
Зарегистрирован: 02 дек 2016, 13:26

Re: Занятие 4

Сообщение BERSERKER » 06 май 2017, 20:10

Почему при выборе нужного ордера использовали етот вариант?

Код: Выделить всё

   int total=OrdersTotal(); //количество открытых ордеров
   for(i=total;i>=0;i--){   //перебираем все ордера в цикле
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){ //выбираем ордер
         if(OrderMagicNumber()!=id  || OrderSymbol()!=Symbol()){continue;} //если ордер не наш, переходим к следующему
         if(comment==OrderComment() || comment=="alt"){ //если комментарий наш или по умолчанию


А не класический способ?

Код: Выделить всё

    for ( int i=OrdersTotal()-1; i>=0;i--)//Получаем всего ордеров, создаем цыкл, перебираем ордера
      {
       if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))//Указываем как будем выбирать ордер, находим ордер
         {
          if (OrderMagicNumber()==id && OrderSymbol()==Symbol() )//Выбраный ордер наш?
           
            if(OrderType()==OP_BUY)//Если ордер БАЙ


В каких случая лучше использовать один вариант,а в каких другой?

Не нужно ли в функциях установки ордеров вместо пустого комментария тоже написать "alt"?
То есть если я правильно понял то пустая строка

Код: Выделить всё

int OpenOrdersBuy(double lot, int lotDigits, int id=0, int slip=10, string comment="")


и запись

Код: Выделить всё

void CloseOrders(int id, int type, string comment="alt", int slip=100)


это разные комментарии. И если мы устанавливали ордер с пустым комментарием, а хотим удалить ево с комментарием comment="alt" то терминал решит что это разные ордера.
Жаба - хотя и зверь маленький, но давит не хуже медведя.

Аватара пользователя
Valentin
Администратор
Сообщения: 26
Зарегистрирован: 13 ноя 2016, 22:42

Re: Занятие 4

Сообщение Valentin » 07 май 2017, 14:59

BERSERKER писал(а):Почему при выборе нужного ордера использовали етот вариант?
А не класический способ?
В каких случая лучше использовать один вариант,а в каких другой?

И тот и другой способ является классическим. В программировании любая задача имеет множество решений.

BERSERKER писал(а):Не нужно ли в функциях установки ордеров вместо пустого комментария тоже написать "alt"?

В функции удаления ордеров комментарий "alt", который присваивается при вызове функции переменной по умолчанию, означает что удаление будет проводится без учета комментария при установке ордера. Если мы при вызове функции удаления зададим другой комментарий, тогда при удалении ордера будет учитываться также совпадение и по комментарию.

Аватара пользователя
BERSERKER
Сообщения: 6
Зарегистрирован: 02 дек 2016, 13:26

Re: Занятие 4

Сообщение BERSERKER » 13 май 2017, 23:33

Valentin писал(а):В функции удаления ордеров комментарий "alt", который присваивается при вызове функции переменной по умолчанию, означает что удаление будет проводится без учета комментария при установке ордера. Если мы при вызове функции удаления зададим другой комментарий, тогда при удалении ордера будет учитываться также совпадение и по комментарию.


Это не документированная функция? А то я пытался найти описание этой особенности в справке, но не смог.
Жаба - хотя и зверь маленький, но давит не хуже медведя.


Вернуться в «Мастерская Forex Роботов 3»

Кто сейчас на конференции

Сейчас этот форум просматривают: Alexa [Bot] и 0 гостей