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

NinjaTrader 8 Не работает счет от начало торгового дня

alexmar12

New Member
NinjaTrader
#1
Не могу понять по чему не идут данные от начало дня

Вот код
if (Bars.IsFirstBarOfSession) //Если бар начало сессии
{
iCumDelta = 0;
}
else
{
iCumDelta = iCumDelta + (BuySellVolume().Buys[0] - BuySellVolume().Sells[0] - BuySellVolume().Sells[0]);
}

Но почему-то считает от текущего бара как будто не загружает историю хотя я включил проигрывание тика

Моя цель была суммировать с каждый баром от начало дня общую дельту
 

Arkadiy

Well-Known Member
NinjaTrader
#2
могу ошибаться но попробуй включить в индикаторе параметр Calculeta = On Each Tick
 

alexmar12

New Member
NinjaTrader
#5
Абсолютно точно у меня идикатор с подгрузкой стоит Дельта и BuySel Volume. Если б не стоял то они бы не показывали историю
 

thinarthrill

Well-Known Member
NinjaTrader
#6
В коде Text myTextDelta = Draw.Text(this, "myTextDelta", iCumDelta.ToString(), 0, High[0] + (5 * TickSize), TextDelta);
добавьте CurrentBar
Text myTextDelta = Draw.Text(this, "myTextDelta"+CurrentBar, iCumDelta.ToString(), 0, High[0] + (5 * TickSize), TextDelta);
 

alexmar12

New Member
NinjaTrader
#7
Спасибо для проверки буду иметь сегодня с утра заработал может глюк какой был вчера..
 

alexmar12

New Member
NinjaTrader
#8
Помогите понять у меня почему-то глюк

У меня стоит параметр
Calculate= Calculate.OnBarClose;

И поставил вычесление

Код:
// Начало кода
            if (Bars.IsFirstBarOfSession) //Если бар начало сессии
            {
                iCumDelta  = 0;
            }
            else
            {
                iCumDeltaOne =iCumDelta;

                if (VOL()[0] > MinVolume) // Если объем бара превышает параметр минимального объема
                {
                    iCumDelta  = iCumDelta + 1;//(-BuySellVolume().Sells[0]);
                } 

            }

            if (iCumDelta < 0)
            {
                TextDelta = Brushes.Red;
            } else
            {
                TextDelta = Brushes.Lime;
            }
            
            Text myTextDelta = Draw.Text(this, "myTextDelta" +CurrentBar, iCumDelta.ToString(), 0, High[0] + (5 * TickSize), TextDelta);
            
            // Конец кода
Тоесть если свеча с объемом более определенного значения должно увеличиваться на 1 а у меня увеличиваться аж на 14

http://dl3.joxi.net/drive/2017/05/23/0012/1159/824455/55/5e6813cf9f.jpg
 

alexmar12

New Member
NinjaTrader
#9
Я разобрался спасибо писать не надо.. Суть в том что стоял Calculeta = On Each Tick
И поэтому функция выполнялась по каждому тику Это было нужно для BuySel Volume
В общем поставил выполнение на проверку CurrentBar и все стало на место