• Demo счет NinjaTrader, регистрируется в брокерской компании NinjaTrader Brokerage . NinjaTrader™, LLC
    Ссылка на демо счет NinjaTrader
    Фид на соединении Continuum/CQG.
    Для справки: Continuum - это брэнд CQG, и ни чем они не отличаются друг от друга.
    Обратите внимание, что в настоящее время CQG не высылает логин и пароль на электронные адреса от mail.ru, bk.ru, list.ru, inbox.ru, поэтому необходимо повторить регистрацию с электронного адреса от другого домейна (yahoo, gmail, и тд).
  • NinjaTrader с зарекомендовавшим себя брокерским сервисом предоставляет наилучшие условия для фьючерсной торговли, включая:
    • Низкие комиссии: Экономьте на торгах через низкие и понятные комиссии
    • Низкая маржа: Всего $50 для микро контрактов
    • Низкие минимумы: Откройте счет от $400
    • Бесплатная платформа: Включает весь необходимый функционал для торговли в реале
  • Уважаемые посетители форума!
    При регистрации на форуме отправляется письмо подтверждения на ваш почтовый ящик, если письмо не пришло, просьба проверить папку "спам" вашего почтового ящика, возможно письмо попало туда.
  • Сколько я реально плачу комиссии?
    Подробнее по ссылке

Profit Target и Stop Loss по времени.

ktoyaest

New Member
NinjaTrader
#1
Добрый день, всем!

Подскажите, как реализовать закрытие позиции в стратегии по времнеи в NT8?
Т.е. стратегия при определенных условиях открыла позицию и по истечению 5 минут сработал TP либо SL не зависимо будет прыбыль или убыток.

Заранее благодарю за помощь!
 

ktoyaest

New Member
NinjaTrader
#3
Тут всё просто.
Запоминаем время входа.
Затем сравниваем текущее время и время входа.
Если прошло более 5 минут выходим из сделки.
Спасибо за совет, но я никак не силен в напсание этого хоть и простого алгоритма.
Буквально с неделю занимаюсь постоением стратегий в Построителе стратегий NT8. Но как там это реализовать, непонимаю. Буду благодарен даже денюжкой (в разумных пределах) если кто поможет с написанием выше описанного алгорима и чтоб его можно было вставить в стратегию. Уж очень это мне важно.
 

Muratik

Well-Known Member
NinjaTrader
#5
Буквально с неделю занимаюсь постоением стратегий в Построителе стратегий NT8. Но как там это реализовать, непонимаю.
В построителе стратегий этого не сделать, скорее всего.
Светлана, в одном из последних вебинаров по Strategy Builder в NT8, показала как создать условие, по времени, и привязать к нему действие (название вебинара не помню). Причём настоятельно рекомендовала сделать его первым, что бы робот первым делом смотрел на время.
ktoyaest, скорее всего эта поможет найти нужное Вам решение.
 

Muratik

Well-Known Member
NinjaTrader
#7
Там можно создать условие по времени, а не по промежутку времени.
Просто подумалось, что к выставляемому стратегией ордеру (вход) можно привязать противоположный (выход) по времени/через нужное время (5 мин).
Не может быть что бы в Построителе не было такой возможности - если он может создать условие для входа по индикатору, или там ещё чему нибудь, то, скорее всего, сможет создать и условие выйти по /через какое то время.
Надо просто поискать в нём как установить промежуток времени.
 
Последнее редактирование:

Muratik

Well-Known Member
NinjaTrader
#8
Там можно создать условие по времени, а не по промежутку времени.
NT8, если обратили Ваше драгоценнейшее внимание на этот момент, то может пропишите такую возможность где нибудь здесь?:
Actions.png
Промежуток времени в Condition Builder.png
Или в каком то другом модуле Strategy Builder.
Хорошо что, благодаря ktoyaest обнаружился этот недостаток.:thumbsup:
 

Muratik

Well-Known Member
NinjaTrader
#11
На обращение пришёл ответ от Chelsea B:

К сожалению, это потребует манипулирования объектами DateTime и не будет тем, на что способен построитель стратегий.

Сценарий должен быть разблокирован и изменен вручную.

Вы можете сравнить время баров.

Например:

private int SavedBar;

if (/ * условие для сохранения времени бара * /)
saveBar = CurrentBar;

if (Time [CurrentBar - saveBar] .AddMinutes (5)> = Time [0])
{
// время сохраненного бара не менее 5 минут
}

Ниже приведена ссылка на справочное руководство по Time [0] и CurrentBar.

NinjaScript > Language Reference > Common > ISeries<T> > TimeSeries<DateTime> > Time

NinjaScript > Language Reference > Common > OnBarUpdate() > CurrentBar
OFFTOP

Оригинал на английском:
Unfortunately, this would require manipulating DateTime objects and would not be something that the Strategy Builder is capable of.

The script would need to be unlocked and modified by hand.

You can compare the time of bars.

For example:

private int savedBar;

if (/* condition for saving bar time */)
savedBar = CurrentBar;

if (Time[CurrentBar — savedBar].AddMinutes(5) >= Time[0])
{
// it is at least 5 minutes since the time of the saved bar
}

Below is a link to the help guide on Time[0] and CurrentBar.

https://ninjatrader.com/support/help...eries_time.htm

https://ninjatrader.com/support/help...currentbar.htm

Please let me know if this does not resolve your inquiry.

 
Последнее редактирование:

NTTrade

Well-Known Member
NinjaTrader
#12
Можно и так.

Создать переменную DateTime StartTime

if(Условие для открытия позиции)
{
StartTime = Time[0];
}

Условие для закрытия позиции

if(Time[0] >= StartTime.AddMinutes (5))
{
Закрываем позицию.
}
 

Muratik

Well-Known Member
NinjaTrader
#13
стратегия при определенных условиях открыла позицию и по истечению 5 минут сработал TP либо SL не зависимо будет прыбыль или убыток.
ktoyaest, заинтриговали - закрытие позиции по истечении 5 минут после открытия...
Пришла на ум такая ситуация - робот поймал/увидел полностью сформировавшийся Дожи, торганул и ч/з 5 минут закрылся. :smile:
 

Muratik

Well-Known Member
NinjaTrader
#14
Из ответа Chelsea B:
"I've received tracking ID# SFT-4169 for this request for the ability to add minutes to a datetime object in Strategy Builder.

Please note it is up to the NinjaTrader Development to decide if or when any request will be implemented."
Гуглперевод:
"Я получил идентификатор отслеживания # SFT-4169 для этого запроса на возможность добавления минут к объекту даты и времени в построителе стратегий.
Пожалуйста, обратите внимание, что разработка NinjaTrader должна решить, будет ли любой запрос реализован или нет."
Подождём-с)))
 

Iman

Well-Known Member
NinjaTrader
#15
ktoyaest, заинтриговали - закрытие позиции по истечении 5 минут после открытия...
Пришла на ум такая ситуация - робот поймал/увидел полностью сформировавшийся Дожи, торганул и ч/з 5 минут закрылся. :smile:
На каком ТФ будешь ловить доджи?
 

Muratik

Well-Known Member
NinjaTrader
#16
На каком ТФ будешь ловить доджи?
Просто это первое, что на ум пришло, после слов - "закрытие позиции по истечении 5 минут от открытия".
А лучший (оптимальный) ТФ для такого робота, быстрее всего, выдаст Strategy Builder.
 

Iman

Well-Known Member
NinjaTrader
#18
Просто это первое, что на ум пришло, после слов - "закрытие позиции по истечении 5 минут от открытия".
А лучший (оптимальный) ТФ для такого робота, быстрее всего, выдаст Strategy Builder.

Цель открытой позиции должен быть профит, а эта идея очень "специфическая". Что-то из бинарных оптионов. Анализатор стратегий показывает историю, и не даёт никаких гарантий на будущее.
 

Muratik

Well-Known Member
NinjaTrader
#19
"а эта идея очень "специфическая"".
Просто пришёл образ для робота - есть Дожи, ждём одну свечу/бар и, с тиком начала следующего бара, входим. На 5-ти минутках - выходим ч/з 5 минут.
 

Iman

Well-Known Member
NinjaTrader
#20
На 5-ти минутках - выходим ч/з 5 минут.
уверен что ты это и визарде запрограмми.. на открытии бара(бар=5m), я сам без нт сейчас, а-то бы ..
Используй
if (Position.MarketPosition == MarketPosition.Flat)....для входа

if (Position.MarketPosition == MarketPosition.Long) {ExitLong

if (Position.MarketPosition == MarketPosition.Short) {ExitShort
 
Вверх Снизу