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

    Подробнее по ссылке

  3. Сколько я реально плачу комиссии?
    Подробнее по ссылке
Скрыть объявление
Вебинар NinjaTrader: Работа с графиками 101
Когда: среда, 10 январь, 12-00 по Чикаго (CT), 20-00 по Московскому времени
Подробнее по ссылке

Закрыть/прекратить показ объявления можно по крестику, верхнем правом углу.

Образцы кодов стратегий для NT 6.5

Тема в разделе "Написание роботов. Обсуждение.", создана пользователем broker_mirus, 10 мар 2010.

  1. broker_mirus

    broker_mirus Administrator Команда форума Помогли тебе - помоги другим! NinjaTrader

    В этой ветке выложены запрограммированные для Вас девелоперами НТ популярные стратегии.

    Что бы посмотреть пример, импортируйте его в НТ:
    1. Загрузите файл на рабочий стол
    2. В окне Control Center, выберите в меню File>Utilities>Import NinjaScript
    3. Выберите сохраненный Вами файл на рабочем столе.

    -Использование фильтрования времени для ограничения торговой сессии
    -Использование нескольких сигналов на вход/выход одновременно
    -Торговля на пересечениях (кроссоверах)
     
  2. broker_mirus

    broker_mirus Administrator Команда форума Помогли тебе - помоги другим! NinjaTrader

    Использование фильтрования времени для ограничения торговой сессии

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

    Важные элементы кода:

    DayOfWeek
    Time
    ToTime
    ToDay
     

    Вложения:

  3. broker_mirus

    broker_mirus Administrator Команда форума Помогли тебе - помоги другим! NinjaTrader

    Использование нескольких сигналов на вход/выход одновременно

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

    Прикрепленный образец показывает, как:
    - Добавить указатели, доработанные пользователем для стратегии, на график
    - Определить, как НТ будет активировать ордера при совпадении условий
    - Как обозначить вход/выход по определенному условию индивидуально

    Важные элементы кода:

    Add()
    EntriesPerDirection
    EnterLongStopLimit
    EnterLongLimit
    EnterLongStop
    EnterLongStopLimit
     

    Вложения:

  4. broker_mirus

    broker_mirus Administrator Команда форума Помогли тебе - помоги другим! NinjaTrader

    Торговля на пересечениях (кроссоверах)

    Подобно концепции торговли на пробитии, многие трейдеры торгуют на пересечениях – будь то пересечение ценового барьера или скрещивание двух индикаторов.
    Приведенный образец демонстрирует следующее:
    - Определение и хранение первых 15ти самых высоких и самых низких значений баров текущей сессии
    - Отправка ордеров long и short в зависимости от того, какой барьер пересечен
    - Использование трейлинговых стопов для выхода из позиции

    Подсказка: Этот образец устанавливает CalculateOnBarClose на False, для того, что бы ордера уходили именно в момент пересечения, а не в тот момент, когда закроется бар, в течении которого это пересечение произощло.
    Важные элементы кода:
    CalculateOnBarClose
    CrossAbove()
    CrossBelow()
    SetTrailStop()
    SetStopLoss()
    SetProfitTarget()
     

    Вложения:

  5. StatBars

    StatBars New Member NinjaTrader

    Здравствуйте.

    Прошу помощи у всех кто работает с NT.
    Мне нужно получить цены Ask/Bid с 2-х инструментов сразу, естественно почитал хелп накидал код - что-то вроде:

    Вы не авторизованны на нашем форуме и не имеете возможности видеть этот код!

    Для того, что его посмотреть, Вам надо:

    Принтами потом выяснилось, что если запускать эту стратегию на 2-х разных инструментах(first_Pair и second_Pair) то на second_Pair цена у first_Pair отличается от цены которую выводит стратегия запущенная на first_Pair. ВОт вобщем первичная проблема.
    Попробовал всё это решить подключением NT к своему приложению(DLL), всё нормально работает! НО через некоторое время программа перестаёт получать котировки, хотя проверяю через деббагер запросы из моей программы идут, но ответ(return) из NT один и тот же, иногда бывает просто 0 возвращает хотя в NT цены нормально движутся.
    А мне для автоматической торговли нужна стабильность программы(решения) это для меня самое важное.
    Можете помочь?
     
  6. broker_mirus

    broker_mirus Administrator Команда форума Помогли тебе - помоги другим! NinjaTrader

    Вот тут бы, если бы кто-то из программистов подсказал, было бы замечательно.
     
  7. Александр

    Александр New Member NinjaTrader

    Интересно... Quantum-Zen здесь ещё появится? ::rolleyes24.gif:: Или ограничется одним сообщением?)))
     
  8. Alexander

    Alexander Administrator Команда форума Помогли тебе - помоги другим!

    Должен появиться, с ним общался в переписке, пока держат личные дела.
    Кроме Quantum-Zen вижу на форуме других спецов, наверно присматриваются.
    • Господа программисты, как писал, для Вас все условия, хотите оказывать платные услуги трейдерам в дополнение к бесплатным - пожалуйста, откроем для вас личные закрытые разделы при надобности.
     
    Muratik нравится это.
  9. NTDeveloper

    NTDeveloper New Member NinjaTrader

    После того, как Вы в Initialize добавили 2 серии данных, аски и биды Вы можете получать следующим образом:

    Вы не авторизованны на нашем форуме и не имеете возможности видеть этот код!

    Для того, что его посмотреть, Вам надо:

    т.е. в скобках единица соответствует first_Pair в Вашем примере, двойка соответствует second_Pair
     
  10. Bifff

    Bifff New Member NinjaTrader

    Здравствуйте!
    Прошу помочь в написании стратегии. Необходимо установить срок действия лимитного ордера. Например необходимо, чтобы ордер EnterLongLimit отменялся по истечении 5 баров. Пробовал использовать CancelOrder, однако появились непонятные трудности. Просьба выложить часть простенького кода, чтобы выполнялась вышеописанная операция. Спасибо.
     
  11. NTDeveloper

    NTDeveloper New Member NinjaTrader

    Здравствуйте.
    Напрямую это, к сожалению, сделать нельзя, нужно немного поколдовать)

    Например, в момент поступления сигнала на выставление лимитного ордера, Вы запоминаете данное время и вычисляете время, которое будет через 5 баров(назовем его t1). И пока текущее время меньше этого второго времени(t1), Вы выполняете установку лимитного ордера:

    Вы не авторизованны на нашем форуме и не имеете возможности видеть этот код!

    Для того, что его посмотреть, Вам надо:

    Если есть более простые способы решения этого вопроса, прошу поделиться..
     
  12. Bifff

    Bifff New Member NinjaTrader

    NTDeveloper, спасибо. Попробую применить вашу идею. Если доработаю свою, то обязательно поделюсь с Вами.
     
  13. Bifff

    Bifff New Member NinjaTrader

    NTDeveloper, вот как удалось осуществить отмену лимитного ордера с использованием CancelOrder()

    Вы не авторизованны на нашем форуме и не имеете возможности видеть этот код!

    Для того, что его посмотреть, Вам надо:


    Ну вот как-то так :) Если будут вопросы попробую ответить.
    В свою очередь хотел еще поинтересоваться возможно ли как-то параметр CalculateOnBarClose изменять в процессе работы системы?
     
  14. NTDeveloper

    NTDeveloper New Member NinjaTrader

    да, нормальный вариант.

    Насчет CalculateOnBarClose думаю наврядли можно в процессе работы стратегии это дело изменять. Единственное, можно пойти на собственные функции и методы определения нового бара, например запоминать время нулевого бара и сравнивать на каждом тике его со временем опять же нулевого бара...
     
  15. FOKS

    FOKS Member NinjaTrader

    Просьба кто знает, как настроить в АТМ условие (стратегию): Если Close бара выше ЕМА то покупать, а если Close бара ниже ЕМА - то продавать? Система реверсная. ::smile24.gif:: Мне бы узнать именно как это сделать имеющимися в Нинзе настройками. С кодами не разберусь к сожалению. ::yield::
     
  16. NTDeveloper

    NTDeveloper New Member NinjaTrader

    Вот сделал небольшое видео, на котором показал как создать нужную Вам стратегию
    http://www.screencast.com/t/YzkyNmQ1NWYt
     
  17. broker_mirus

    broker_mirus Administrator Команда форума Помогли тебе - помоги другим! NinjaTrader

    Спасибо Вам огромное, что нашли на это время! :)
     
  18. FOKS

    FOKS Member NinjaTrader


    Благодарю за ответ! Оказалось, что я делал настройки стратегии по такомуже порядку, но при настройках графиков, которые не соответствуют "общепринятым", Нинзя глючит не по-детски. С чем и обращусь к вам за платной консультацией в личку. Обращался я так же на официальный сайт Нинзи в техподдержку, но пока не ответили...
     
  19. hammerlights

    hammerlights New Member NinjaTrader

    Доброго времени - у меня такие вопросы.
    1. Метод OnBarUpdate() - отвечает за обновление бара, тоесть как только приходит новый тик то он срабатывает ?
    2. Не мог бы ты дать пример кода - как воити в длинную позицию с выставлением Стоплосса , тейкпрофита, объема сделки(лота), установки какого нибудь примечания на ордер(что бы можно было потом найти его через селект или forsearch).
    3. Выставление трала идет как функция и выполняеться уже на сервере - или надо вести его на клиенте - тащя стоплосс за ценой?
    4. Если есть пример кода выбора(select-а, forsearch) ордера по допустим какому нибудь примечанию или мэйджеку, для последующей обработки ордера.
     
  20. NTDeveloper

    NTDeveloper New Member NinjaTrader

    Пример: рыночный бай
    int Lot=1;
    EnterLong(Lot,"строковой идентификатор сделки");

    установка стоп лосса в пунктах:
    int SL=50;
    SetStopLoss(CalculationMode.Ticks,SL);

    Тейк профит:
    SetProfitTarget(CalculationMode.Ticks,TP);

    Идет на клиентской части, вот пример процедуры:

    Вы не авторизованны на нашем форуме и не имеете возможности видеть этот код!

    Для того, что его посмотреть, Вам надо:

    Поиск ордера, открытого вышеуказанным способом по magic можно лишь среди позиций на счете(Account.Orders, либо позиций в данной стратегии this.Orders)

    Вы не авторизованны на нашем форуме и не имеете возможности видеть этот код!

    Для того, что его посмотреть, Вам надо:

     

Поделиться этой страницей