• Тинькофф Банк-лучшие банковские продукты еще выгоднее
    Выбирайте продукт от банка Тинькофф
  • Уважаемые форумчане, друзья и посетители!
    Поступило предложение ( ссылка на обсуждение ) на сбор средств поддержания форума в рабочем состоянии с 1 июня ( оплата хостинга, бэкап ежедневный на другой хостинг и тд), отчетность будет предоставляться ежемесячно. Пока на ЮMoney ( яндекс деньги), доступно картой перевод, далее добавлю другие способы. Сумму перевода указывайте на ваш выбор исходя из своих возможностей.
    Форум продолжает свою работу благодаря Вашим пожертвованиям.

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

ktoyaest

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

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

Заранее благодарю за помощь!
 
Тут всё просто.
Запоминаем время входа.
Затем сравниваем текущее время и время входа.
Если прошло более 5 минут выходим из сделки.
 
Тут всё просто.
Запоминаем время входа.
Затем сравниваем текущее время и время входа.
Если прошло более 5 минут выходим из сделки.

Спасибо за совет, но я никак не силен в напсание этого хоть и простого алгоритма.
Буквально с неделю занимаюсь постоением стратегий в Построителе стратегий NT8. Но как там это реализовать, непонимаю. Буду благодарен даже денюжкой (в разумных пределах) если кто поможет с написанием выше описанного алгорима и чтоб его можно было вставить в стратегию. Уж очень это мне важно.
 
В построителе стратегий этого не сделать, скорее всего.
 
Буквально с неделю занимаюсь постоением стратегий в Построителе стратегий NT8. Но как там это реализовать, непонимаю.
В построителе стратегий этого не сделать, скорее всего.

Светлана, в одном из последних вебинаров по Strategy Builder в NT8, показала как создать условие, по времени, и привязать к нему действие (название вебинара не помню). Причём настоятельно рекомендовала сделать его первым, что бы робот первым делом смотрел на время.
ktoyaest, скорее всего эта поможет найти нужное Вам решение.
 
Муратик как всегда))
Там можно создать условие по времени, а не по промежутку времени.
 
Там можно создать условие по времени, а не по промежутку времени.
Просто подумалось, что к выставляемому стратегией ордеру (вход) можно привязать противоположный (выход) по времени/через нужное время (5 мин).
Не может быть что бы в Построителе не было такой возможности - если он может создать условие для входа по индикатору, или там ещё чему нибудь, то, скорее всего, сможет создать и условие выйти по /через какое то время.
Надо просто поискать в нём как установить промежуток времени.
 
Последнее редактирование:
Там можно создать условие по времени, а не по промежутку времени.
NT8, если обратили Ваше драгоценнейшее внимание на этот момент, то может пропишите такую возможность где нибудь здесь?:
Actions.png
Промежуток времени в Condition Builder.png
Или в каком то другом модуле Strategy Builder.
Хорошо что, благодаря ktoyaest обнаружился этот недостаток.:thumbsup:
 
На обращение пришёл ответ от 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.

 
Последнее редактирование:
  • Like
Реакции: Iman
Можно и так.

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

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

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

if(Time[0] >= StartTime.AddMinutes (5))
{
Закрываем позицию.
}
 
стратегия при определенных условиях открыла позицию и по истечению 5 минут сработал TP либо SL не зависимо будет прыбыль или убыток.
ktoyaest, заинтриговали - закрытие позиции по истечении 5 минут после открытия...
Пришла на ум такая ситуация - робот поймал/увидел полностью сформировавшийся Дожи, торганул и ч/з 5 минут закрылся. :smile:
 
Из ответа 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 должна решить, будет ли любой запрос реализован или нет."
Подождём-с)))
 
ktoyaest, заинтриговали - закрытие позиции по истечении 5 минут после открытия...
Пришла на ум такая ситуация - робот поймал/увидел полностью сформировавшийся Дожи, торганул и ч/з 5 минут закрылся. :smile:
На каком ТФ будешь ловить доджи?
 
На каком ТФ будешь ловить доджи?
Просто это первое, что на ум пришло, после слов - "закрытие позиции по истечении 5 минут от открытия".
А лучший (оптимальный) ТФ для такого робота, быстрее всего, выдаст Strategy Builder.
 
  • Like
Реакции: Iman
Просто это первое, что на ум пришло, после слов - "закрытие позиции по истечении 5 минут от открытия".
А лучший (оптимальный) ТФ для такого робота, быстрее всего, выдаст Strategy Builder.

Цель открытой позиции должен быть профит, а эта идея очень "специфическая". Что-то из бинарных оптионов. Анализатор стратегий показывает историю, и не даёт никаких гарантий на будущее.
 
"а эта идея очень "специфическая"".
Просто пришёл образ для робота - есть Дожи, ждём одну свечу/бар и, с тиком начала следующего бара, входим. На 5-ти минутках - выходим ч/з 5 минут.
 
На 5-ти минутках - выходим ч/з 5 минут.
уверен что ты это и визарде запрограмми.. на открытии бара(бар=5m), я сам без нт сейчас, а-то бы ..
Используй
if (Position.MarketPosition == MarketPosition.Flat)....для входа

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

if (Position.MarketPosition == MarketPosition.Short) {ExitShort
 
Назад
Верх Низ