• Demo счет NinjaTrader, регистрируется в брокерской компании NinjaTrader Brokerage . NinjaTrader™, LLC
    Ссылка на демо счет NinjaTrader
    Фид на соединении Continuum/CQG.
    Для справки: Continuum - это брэнд CQG, и ни чем они не отличаются друг от друга.
  • Уважаемые посетители форума!
    При регистрации на форуме отправляется письмо подтверждения на ваш почтовый ящик, если письмо не пришло, просьба проверить папку "спам" вашего почтового ящика, возможно письмо попало туда.
  • Сколько я реально плачу комиссии?
    Подробнее по ссылке

имена ордеров

ShamanK

New Member
NinjaTrader
#1
всем привет,
ситуация: есть несколько ордеров ( в рынке) с разными именами.
вопрос: как их прочесть ?

надежды на ответ нет, но все же может кто подскажет?
 
M

maverick

Guest
#2
ShamanK сказал(а):
всем привет,
ситуация: есть несколько ордеров ( в рынке) с разными именами.
вопрос: как их прочесть ?

надежды на ответ нет, но все же может кто подскажет?
Добрый день. Уточните свой вопрос. Не очень понятно, что для Вас означает (с разными именами). Есть 3-и вида ордеров. Лимит по которому входят в рынок ниже цены на покупку (область BUY) выше цены на продажу (область SELL). Лимит по которому выходят из рынка если позиция Лонг (длинная), то Лимит стоит в области SELL, если позиция Шорт (короткая), то Лимит стоит в области BUY. Стоп-Лимит принцип такой же, что и у Лимит, только выставляется он выше цены. И просто Стоп (хотя он тоже из разряда лимит ордеров), он ставится при позиции Лонг ниже цены входа в области SELL и при позиции Шорт выше цены входа в области BUY.
 

ShamanK

New Member
NinjaTrader
#3
суть:
вхожу маркетным ордером посредством привода. привод передает в нинзю имя ордера:

EnterLong(1, 1,"ИМЯ");

соответственно когда закрываю позицию то:

ExitLong("ИМЯ");

однако все бы ничего, если бы суммарный размер позиции всегда был равен 1

но увы.

необходимо входить в рынок поэтапно ( доливаясь)
тоесть нажал на приводе кнопочку - бай - отослал в нинзю приказ о покупке и имя ордера
нажал еще раз и так далее, пока не набрал необходимый суммарный сайз.

в качестве имени передается порядковый номер очередного ордера.
тоесть если в рынке 0 открытых ордеров - то передается 1 и тд..
при исполнении ордера нинзя передает приводу общее количество ордеров

qv1 = Positions[0].Quantity.ToString();

привод считывает количество и при необходимости войти еще одним ордером в рынок передает нинзе имя в виде qv1+1

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

тоесть сначала я октрыл 10 раз по одному ордеру, и потом обратным порядком закрыл все эти 10 ордеров по одному ордеру за раз.

проблема заключается в том, что когда я все ордера таким образом закрыл - новый торговый приказ несет в себе имя1 ( так как ноль в рынке ) и нинзя его просто не видит. она недавно ордер с таким именем уже закрыла, и теперь с таким же именем открывать не желает (((

тоесть необходимо как то либо обнулять кучу ордеров при их закрытии
умные люди подсказали создавать массив ордеров ( но я не догнал как это сделать)

либо же ВСЕГДА ордерам давать уникальные имена, а в самой нинзе как то считывать имена ордеров находящихся в рынке.
 
M

maverick

Guest
#4
ShamanK сказал(а):
суть:
вхожу маркетным ордером посредством привода. привод передает в нинзю имя ордера:

EnterLong(1, 1,"ИМЯ");

соответственно когда закрываю позицию то:

ExitLong("ИМЯ");

однако все бы ничего, если бы суммарный размер позиции всегда был равен 1

но увы.

необходимо входить в рынок поэтапно ( доливаясь)
тоесть нажал на приводе кнопочку - бай - отослал в нинзю приказ о покупке и имя ордера
нажал еще раз и так далее, пока не набрал необходимый суммарный сайз.

в качестве имени передается порядковый номер очередного ордера.
тоесть если в рынке 0 открытых ордеров - то передается 1 и тд..
при исполнении ордера нинзя передает приводу общее количество ордеров

qv1 = Positions[0].Quantity.ToString();

привод считывает количество и при необходимости войти еще одним ордером в рынок передает нинзе имя в виде qv1+1

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

тоесть сначала я октрыл 10 раз по одному ордеру, и потом обратным порядком закрыл все эти 10 ордеров по одному ордеру за раз.

проблема заключается в том, что когда я все ордера таким образом закрыл - новый торговый приказ несет в себе имя1 ( так как ноль в рынке ) и нинзя его просто не видит. она недавно ордер с таким именем уже закрыла, и теперь с таким же именем открывать не желает (((

тоесть необходимо как то либо обнулять кучу ордеров при их закрытии
умные люди подсказали создавать массив ордеров ( но я не догнал как это сделать)

либо же ВСЕГДА ордерам давать уникальные имена, а в самой нинзе как то считывать имена ордеров находящихся в рынке.
Да через массив лучше всего, который при закрытии всех позиций обнуляется. В этом вопросе ничем помочь не могу. Спросите у Vladko, он здесь разбирается не плохо в программировании, возможно, он Вам поможет с массивом.
 

ShamanK

New Member
NinjaTrader
#5
Vladko и есть тот умный человек ))
это он подсказал - что надо обнулять ордер
и надо создавать массив ордеров.

я просто пока не могу догнать "архитектуру" сего действа.
 
Вверх Снизу