public CustomExportMessage(DdeCustomTable table) : this(CustomExportType.Table) { if (table == null) throw new ArgumentNullException(nameof(table)); Table = table; }
/// <summary> /// Остановить экспорт данных из торговой системы в программу для произвольной таблицы, зарегистрированной в <see cref="QuikTrader.CustomTables"/>. /// </summary> /// <param name="customTable">Описание DDE экспорта произвольной таблицы.</param> public void StopExport(DdeCustomTable customTable) { CheckIsDde(); SendInMessage(new CustomExportMessage(customTable) { IsSubscribe = false }); }
///// <summary> ///// Запустить экспорт данных из торговой системы в программу по таблицам, указанных параметром ddeTables. ///// </summary> ///// <example><code>// запускаем экспорт по таблице инструментов и заявкам. ///// _trader.StartExport(_trader.SecuritiesTable, _trader.OrdersTable);</code></example> ///// <param name="ddeTables">Таблицы, для которых необходимо запустить экспорт через DDE.</param> //public void StartExport(IEnumerable<DdeTable> ddeTables) //{ // CheckIsDde(); // ExportState = ConnectionStates.Connecting; // SendInMessage(new CustomExportMessage(ddeTables) { IsSubscribe = true }); //} ///// <summary> ///// Остановить экспорт данных из торговой системы в программу по таблицам, указанных параметром ddeTables. ///// </summary> ///// <param name="ddeTables">Таблицы, для которых необходимо остановить экспорт через DDE.</param> //public void StopExport(IEnumerable<DdeTable> ddeTables) //{ // CheckIsDde(); // SendInMessage(new CustomExportMessage(ddeTables) { IsSubscribe = false }); //} /// <summary> /// Запустить экспорт данных из торговой системы в программу для произвольной таблицы, зарегистрированной в <see cref="QuikTrader.CustomTables"/>. /// </summary> /// <param name="customTable">Описание DDE экспорта произвольной таблицы.</param> public void StartExport(DdeCustomTable customTable) { CheckIsDde(); //ExportState = ConnectionStates.Connecting; SendInMessage(new CustomExportMessage(customTable) { IsSubscribe = true }); }
public CustomExportMessage(DdeCustomTable table) : this(CustomExportType.Table) { if (table == null) { throw new ArgumentNullException("table"); } Table = table; }
/// <summary> /// Остановить экспорт данных из торговой системы в программу для произвольной таблицы, зарегистрированной в <see cref="QuikTrader.CustomTables"/>. /// </summary> /// <param name="customTable">Описание DDE экспорта произвольной таблицы.</param> public void StopExport(DdeCustomTable customTable) { CheckIsDde(); MarketDataAdapter.SendInMessage(new CustomExportMessage(false, customTable)); }
/// <summary> /// Запустить экспорт данных из торговой системы в программу для произвольной таблицы, зарегистрированной в <see cref="QuikTrader.CustomTables"/>. /// </summary> /// <param name="customTable">Описание DDE экспорта произвольной таблицы.</param> public void StartExport(DdeCustomTable customTable) { CheckIsDde(); ExportState = ConnectionStates.Connecting; MarketDataAdapter.SendInMessage(new CustomExportMessage(true, customTable)); }
private void ConnectClick(object sender, RoutedEventArgs e) { if (!_isConnected) { if (Path.Text.IsEmpty()) MessageBox.Show(this, LocalizedStrings.Str2969); else { if (Trader == null) { // создаем подключение Trader = new QuikTrader(Path.Text) { IsDde = true }; // возводим флаг, что соединение установлено _isConnected = true; // подписываемся на событие ошибки соединения Trader.ConnectionError += error => this.GuiAsync(() => MessageBox.Show(this, error.ToString())); // добавляем тип QuikCandle для преобразования строчки из таблица Исторические свечи в объект QuikCandle _table = new DdeCustomTable(typeof(QuikCandle)); Trader.CustomTables.Add(_table); Trader.NewCustomTables += (type, objects) => { // нас интересует только QuikCandle if (type == typeof(QuikCandle)) _candlesWindow.Candles.AddRange(objects.Cast<QuikCandle>()); }; Trader.Connected += () => this.GuiAsync(() => { ShowCandles.IsEnabled = true; ExportDde.IsEnabled = true; _isConnected = true; ConnectBtn.Content = LocalizedStrings.Disconnect; }); Trader.Disconnected += () => this.GuiAsync(() => { _isConnected = false; ConnectBtn.Content = LocalizedStrings.Connect; }); } Trader.Connect(); } } else Trader.Disconnect(); }
internal void StopDde(DdeCustomTable customTable) { if (customTable == null) throw new ArgumentNullException(nameof(customTable)); StopDde(customTable.TableName); }
internal void StartDde(DdeCustomTable customTable) { if (customTable == null) throw new ArgumentNullException(nameof(customTable)); StartDde(customTable.DdeSettings); }
/// <summary> /// Запущен ли экспорт данных через DDE для произвольной таблицы, зарегистрированной в <see cref="QuikTrader.CustomTables"/>. /// </summary> /// <param name="table">Описание DDE экспорта произвольной таблицы.</param> /// <returns><see langword="true"/>, если экспорт запущен, иначе, <see langword="false"/>.</returns> public bool IsDdeStarted(DdeCustomTable table) { if (table == null) throw new ArgumentNullException(nameof(table)); return IsDdeStarted(table.TableName); }
/// <summary> /// Начать расчёт заново по открытой таблице. /// </summary> /// <param name="table">Описание DDE экспорта произвольной таблицы, для которой необходимо начать заново расчёт.</param> public void StartTableCalculation(DdeCustomTable table) { if (table == null) throw new ArgumentNullException(nameof(table)); StartTableCalculation(table.TableName); }