Для изменения размера нажмите или перетащите

Тиковые сделки

TradeGrid - таблица сделок.

Основные свойства

Ниже показаны внеший вид компонета, а также фрагменты кода с его использованием. Пример кода взят из Samples/Quik/Sample.

GUI Trade Grid
XAML
<Window x:Class="Sample.TradesWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:loc="clr-namespace:StockSharp.Localization;assembly=StockSharp.Localization"
    xmlns:xaml="http://schemas.stocksharp.com/xaml"
    Title="{x:Static loc:LocalizedStrings.Str985}" Height="284" Width="544">
  <xaml:TradeGrid x:Name="TradeGrid" x:FieldModifier="public" />
</Window>
C#
private void ConnectClick(object sender, RoutedEventArgs e)
{
    if (!_isConnected)
    {

        .......................................

        if (Trader == null)
        {
            // создаем подключение
          Trader = new QuikTrader
          {
              LuaFixServerAddress = Address.Text.To<EndPoint>(),
              LuaLogin = Login.Text,
              LuaPassword = Password.Password.To<SecureString>(),
              LogLevel = LogLevels.Debug
          };


            .......................................            

            // Добавляем инструменты в компонент SecurityPicker
            Trader.NewSecurity += security => _securitiesWindow.SecurityPicker.Securities.Add(security);

            // Добавляем свои сделки в таблицу MyTradeGrid
            Trader.NewMyTrade += trade => _myTradesWindow.TradeGrid.Trades.Add(trade);

            // Добавляем сделки в таблицу TradeGrid
            Trader.NewTrade += trade => _tradesWindow.TradeGrid.Trades.Add(trade);

            // Добавляем заявки в таблицу OrderGrid
            Trader.NewOrder += order => _ordersWindow.OrderGrid.Orders.Add(order);

            // Добавляем стоп-заявки в таблицу OrderGrid
            Trader.NewStopOrder += order => _stopOrdersWindow.OrderGrid.Orders.Add(order);

            Trader.OrderRegisterFailed += _ordersWindow.OrderGrid.AddRegistrationFail;
            Trader.OrderCancelFailed += fail => this.GuiAsync(() => MessageBox.Show(this, fail.Error.Message, "Ошибка отмены ордера"));
            Trader.StopOrderRegisterFailed += _stopOrdersWindow.OrderGrid.AddRegistrationFail;
            Trader.StopOrderCancelFailed += fail => this.GuiAsync(() => MessageBox.Show(this, fail.Error.Message, "Ошибка отмены стоп ордера"));


            // Добавляем портфели в таблицу PortfolioGrid
            Trader.NewPortfolio += portfolio => _portfoliosWindow.PortfolioGrid.Portfolios.Add(portfolio);

            // Добавляем позиции в таблицу PortfolioGrid
            Trader.NewPosition += position => _portfoliosWindow.PortfolioGrid.Positions.Add(position);

            // устанавливаем поставщик маркет-данных для компонента SecurityPicker
            _securitiesWindow.SecurityPicker.MarketDataProvider = Trader;

            ShowSecurities.IsEnabled = ShowTrades.IsEnabled =
                ShowMyTrades.IsEnabled = ShowOrders.IsEnabled =
                    ShowPortfolios.IsEnabled = ShowStopOrders.IsEnabled = true;
        }

        Trader.Connect();

        _isConnected = true;
        ConnectBtn.Content = LocalizedStrings.Disconnect;
    }
    else
    {
        Trader.Disconnect();

        _isConnected = false;
        ConnectBtn.Content = LocalizedStrings.Connect;
    }
}