.
Пишем биржевого робота на C#. Урок 3. Модернизация структуры библиотеки биржевого симулятора
Автор megabax   
01.10.2011 г.
Структура программы на примере простейшей программы

  Пишем биржевого робота на C#. Урок 3. Модернизация структуры библиотеки биржевого симулятора

Что бы смотреть урок полностью, подпишитесь на платный раздел.

В платном разделе статья находиться здесь.


Исходники к уроку можно скачать в платном разделе.

На уроке 1 мы рассмотрели библиотеку биржевого симулятора. Теперь я эту библиотеку немножко улучшил. В частности, добавил интерфейс ITerminalDriver, который предназначен для подключения к реальному или виртуальному биржевому терминалу.  Биржевые терминалы бывают разные: Quik, AlorTrade, AlfaDirect, Metatrader. И для каждого существуют свои средства программирования. Что бы все это стандартизировать, и был придуман интерфейс ITerminalDriver - на основе него уже будут создаваться классы для работы с различными терминалами. Что бы легко было протестированную на симуляторе стратегию запрограммировать для реальной торговли, виртуальные сделки так же моделируются через класс, созданный на основе интерфейса ITerminalDriver. Этот класс называется VirtualStockDriver. Пример, приведенный на уроке 1, теперь переделан под этот класс (новый пример вместе с исходниками библиотек можно в в платном разделе). Давайте рассмотрим его.

И так, объявление полей класса главного окна формы:

 

    public partial class FRMStock : Form

    {

        public Account account;

        public ITerminalDriver stockDriver;

...

 

Эмуляция покупки (кнопочка "Купить"):

        private void btnBuy_Click(object sender, EventArgs e)

        {

            StockOrderInfo oi = new StockOrderInfo();

            oi.count=Convert.ToInt16(tbCount.Text);

            oi.stopType="";

            oi.ticker=account.items[dgvItems.CurrentRow.Index].ticker;

            oi.type="buy";

            stockDriver.sendOrder(oi);

            UpdateData();

        }

 

...