StockSharp.BusinessEntities

StockSharp.BusinessEntities
Atom
1/30/2017
klim95vlad


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


Tags:


Thanks:


Support

Avatar
Date: 1/31/2017
Reply


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

Thanks:

klim95vlad

Avatar
Date: 1/31/2017
Reply


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);
    }
}

}

Thanks:

Support

Avatar
Date: 2/1/2017
Reply


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

Thanks: klim95vlad

klim95vlad

Avatar
Date: 2/1/2017
Reply


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

Thanks:


Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy