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

Как посчитать расстояния в тиках

  • Автор темы Evgeniy Pivovarov
  • Дата начала
E

Evgeniy Pivovarov

New Member
NinjaTrader
  • #1
Здравствуйте!
Один вопрос. Как мне посчитать расстояния в тиках между двумя МА с разными периодами?
Я так понимаю надо сделать вычитания. Например double nq = EMA(30)[1] - EMA(100)[1]; и полученное выражения надо преобразовать в тики вопрос только как!
И еще один странный артефакт! Выводишь данные на принт некоторые значения получаются примерно таким -1,7170833960467E-05 с чем это связано понять немому.

Прошу сильно не пинать. Может я чета пропустил и не знаю функции!
 
A

Arkadiy

Well-Known Member
NinjaTrader
  • #2
Добрый день. Если речь идет об НТ8, вероятно вам нужно использовать функцицю TickSize. ссылка
насчет второго вопроса, скорее всего вам надо округлять до какого то знака. Функция шарпа Math.Round(). читать тут
 
  • Like
Реакции: Alexander
T

thinarthrill

Well-Known Member
NinjaTrader
  • #3
Evgeniy Pivovarov сказал(а):
double nq = EMA(30)[1] - EMA(100)[1];

А если еще сгладите, то получите готовый индикатор MACD (разница сглаженных EMA)

Evgeniy Pivovarov сказал(а):
преобразовать в тики вопрос только как!

double nq = (EMA(30)[1] - EMA(100)[1])*TickSize;


Evgeniy Pivovarov сказал(а):
Выводишь данные на принт некоторые значения получаются примерно таким -1,7170833960467E-05 с чем это связано понять немому.
EMA вещественного типа, т.к. хранит дробные значения (среднее значение). На графике то их округляет Ninjatrader, а в памяти они с большим хвостом хранятся. Их можно округлить
double nq = Bars.Instrument.MasterInstrument.RoundToTickSize(EMA(30)[1] - EMA(100)[1])*TickSize);
 
  • Like
Реакции: Arkadiy
Верх Низ