StockSharp.BusinessEntities
Atom Ответить
30.01.2017


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

Теги:


Спасибо:




4 Ответов
Support

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


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

klim95vlad

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


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


Пробовал, но я не совсем понимаю где и как это стоит использовать. Подскажите, пожалуйста.
Вот код.
namespace WpfApplication2
{
/// <summary>
/// Логика взаимодействия для MainWindow.xaml
/// </summary>
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