StockSharp.BusinessEntities
Atom
30.01.2017
klim95vlad


Добрый день. Возникла проблема с инструментами, практически все значения равны null. С Quik соединение есть, все портфели и инструменты в combobox загружаются, по рыночной цене заявки выставляются, но пытаюсь вытащить цену лучшего бида и выдает ошибку (decimal x = Security.BestBid.Price).


Теги:


Спасибо:


Support

Фотография
Дата: 31.01.2017
Ответить


Вы инструменты регистрировали при помощи Connector.RegisterSecurity(Security)?

Спасибо:

klim95vlad

Фотография
Дата: 31.01.2017
Ответить


Support: Вы инструменты регистрировали при помощи Connector.RegisterSecurity(Security)?

Пробовал, но я не совсем понимаю где и как это стоит использовать. Подскажите, пожалуйста. Вот код. namespace WpfApplication2 { ///

/// Логика взаимодействия для MainWindow.xaml /// public partial class MainWindow : Window { public QuikTrader Trader; public MainWindow() { InitializeComponent(); }

    private void button_Click(object sender, RoutedEventArgs e)
    {
        Trader = new QuikTrader(QuikTerminal.GetDefaultPath())
        {
            LuaFixServerAddress = "127.0.0.1:5001".To<EndPoint>(),
            LuaLogin = "quik",
            LuaPassword = "quik".To<SecureString>()
        };

        Trader.Connect();

        Trader.NewSecurities += securities => this.GuiAsync(() =>
        {
            comboBox.ItemsSource = Trader.Securities;

        });

    }

    private void comboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {

    }

    private void textBox_TextChanged(object sender, TextChangedEventArgs e)
    {

    }

    private void button1_Click(object sender, RoutedEventArgs e)
    {
        decimal X = ((Security)comboBox.SelectedItem).BestBid.Price;
        textBox.Text = Convert.ToString(X);
    }
}

}

Спасибо:

Support

Фотография
Дата: 01.02.2017
Ответить


Значения в полях Level1 появляются после регистрации... Зарегистрировать можно так; private void comboBox_SelectionChanged(object sender, SelectionChangedEventArgs e) { var security = (Security)comboBox.SelectedItem; if (Trader.RegisteredSecurities.Contains(security)) return; Trader.RegisterSecurity(security); }

Спасибо: klim95vlad

klim95vlad

Фотография
Дата: 01.02.2017
Ответить


Support: Значения в полях Level1 появляются после регистрации... Зарегистрировать можно так; private void comboBox_SelectionChanged(object sender, SelectionChangedEventArgs e) { var security = (Security)comboBox.SelectedItem; if (Trader.RegisteredSecurities.Contains(security)) return; Trader.RegisterSecurity(security); } Получилось! Спасибо большое!!

Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy