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

Не работает ExitLongLimit и AvgFillPrice... где ошибка?

SKS_trade

New Member
NinjaTrader
#1
Коллеги, добрый день!

Прошу подсказать где ошибка.
Есть кусок кода, в котором открывается позиция лонг, а далее ставится лимитный ордер на выход. При выполнении функции ExitLongLimit соответствующий объект iOrder остается в значении null. Также при вызове свойства AvgFillPrice присвоенного ранее объекта iOrder всегда получается 0.


public class SKS001v1 : Strategy
{
#region Variables
// Wizard generated variables
private double sL = 100; // Default setting for SL
private int contracts = 2; // Default setting for Contracts
private IOrder entryOrder = null; //рыночный ордер
private IOrder entryOrdersL = null; //ордер стоп-лос

// User defined variables (add any user defined variables below)
double oppos_price = 0; // цена открытия позиции
double stlos_price = 0; // цена стоп-лоса
#endregion

/// <summary>
/// This method is used to configure the strategy and is called once before any strategy method is called.
/// </summary>
protected override void Initialize()
{
Add(SMA(N));
SetProfitTarget("", CalculationMode.Ticks, TP);
SetStopLoss("", CalculationMode.Ticks, SL, false);

CalculateOnBarClose = false;
}

/// <summary>
/// Called on each bar update event (incoming tick)
/// </summary>
protected override void OnBarUpdate()
{
entryOrder = EnterLong(contracts); //значение entryOrder присваивается
oppos_price = entryOrder.AvgFillPrice; // но AvgFillPrice дает почему-то всегда 0 ???
stlos_price = oppos_price - sL;
entryOrdersL = ExitLongLimit(contracts,stlos_price); // значение entryOrdersL остается null ???
}
}
 
Вверх Снизу