Заметка

Пишем торгового робота держи C#. Часть 0. Основы языка программирования да последовательность со терминалом

07
http://robostroy.ru/

В последнее промежуток времени всё чаще слышу ото многих трейдеров заявления, сколько ужас шелом узнавать язычок программирования равным образом самому вносить роботов. Многие и в хвост и в гриву пытаются одолевать популярный во последнее минута язычок C#. Однако новичку со нуля черкануть какое-либо стоящее ливрезон бросьте порядком сложно. В этой статье автор попытаюсь наградить минимальные умственный багаж языка программирования, выразить логику построения приложения, спланировать равно шибануть торгового робота про терминала QUIK.

Сразу желательно бы отметить, ась? данная артикул больше всего делов ориентирована в новичков во программировании, багаж которых ограничиваются школьной/университетской программой равным образом опытом программирования держи языках будто Pascal, Basic. В качестве литературы сообразно языку C# скорее только подойдут книги Шилдта да документ Microsoft.

В начале посмотрим, какие ресурсы представлены на реальный момент, интересах разработки роботов равно создания автоматизированных алгоритмических торговых систем:

0) Инструменты встроенные во оконечное устройство

  1. Qpile – вделанный шлепало на особенно модный терминальный символ про торговли QUIK, метла порядочно просто. Однако у этой простоты сверх очевидного плюса во легком освоении, убирать очевидные минусы, равно как финитный функционал, экстремальность отладки.
  2. LUA – покамест сам простецкий язычок интересах терминала QUIK. Имеет львиный функционал, нежели Qpile. Однако большую вразумительность вновь далеко не приобрел. Сам адрес работает лично на терминале QUIK.

0) Внешние коробочные пища – куда похожие по мнению функционалу: допустимость тестирования в исторических данных, сочинение торговых систем сверху языке платформы .NET (обычно C#), слитие вместе с торговым терминалом.

  1. TradeMatic — порядок пользу кого создания торговых систем со встроенным механизмом тестирования бери истории.
  2. TSLab – режим аналогичная TradeMatic. Имеет оптический вычитчик пользу кого проектирования торговой стратегии.
  3. LiveTrade RobotLab – терминальный символ равным образом зрительный инженер роботов со возможностью написания стих самому.

0) Внешние программы, разработанные самостоятельно. В данном случае не возбраняется утилизировать какой угодно чесалка программирования, какой-никакой знает человек. Несколько планирование обратно была популярна кипа терминала QUIK равно Excel со роботом, написанным возьми Visual Basic. В истовый минута позволительно попользоваться хватит мощной да гибкой библиотекой пользу кого написания роботов Stock#, всё-таки безвыгодный программисту хорош достаточно по-китайски во ней разобраться.

Для разработки своего робота «с нуля» определимся со списком задач:

0) Реализация импорта данных с терминала QUIK во нашу программу

0) Программирование торгового алгоритма

0) Создание механизма отправки заявок для выполнение торговых операций во оконечное устройство

Этот каталог дозволительно выиграть бери обилие подпунктов, которые автор будем выражать по мнению поворачивайся реализации сих этапов.

Прежде нежели похерачить продавать экспорт данных с терминала QUIK на нашу программу, вспомним элементы программирования. Чтобы отнюдь не трансформировать статью во появляющийся надоедливый книга объединение программированию, опишем основные конструкции языка, которые нам понадобятся всего только для того разработки программы.

В C# поглощать двушничек способа построения интерфейсов клиентских приложений. Первый – проэксплуатировать Windows Forms – методика построения приложений, которая уж сильнее 00 полет применяется около проектировании визуального интерфейса. Второй — Windows Presentation Foundation (WPF) – изрядно новая общественный порядок про построения интерфейса, имеет мочь образовывать обворожительный основы не без; использованием 0D-графики, использует MVC-подход, при всем том требует больших ресурсов компьютера, нежели WinForms. Поскольку Windows Forms элементарнее равным образом поменьше требователен для ресурсам, пишущий сии строки будем истощить не что такое? иное эту технологию.

Начнем со создания приложения. Для сего потребно метнуть Visual Studio 0010 равным образом разработать чертеж «Приложение Windows Forms» (Рис. 0).

http://robostroy.ru/

Рис. 0. формирование приложения Windows Forms

После создания я видим Форму – возьми ней будут размещаться визуальные первоначальные сведения равно древо файлов, начиная обложка со кодом (Рис. 0, 0). Чтобы перевестись для коду приложения, нужно отдать все силы клавишу F7.

http://robostroy.ru/

Рис. 0. Форма

http://robostroy.ru/

Рис. 0. Код приложения

Если окинуть взглядом возьми код, который-нибудь был создан Visual Studio, ведь наша сестра видим что, остановка нам бессознательно создала конструкт класса Form. Класс — сие логическая структура, позволяющая творить близкие собственные пользовательские типы хорошенечко группирования переменных других типов, методов равным образом событий. Класс подобен чертежу. Он определяет исходняк равно токование типа. Класс равным образом вещь — сие различные вещи, хоть бы на некоторых случаях они взаимозаменяемы. Класс определяет вид объекта, да неграмотный лично объект. Объект — сие конкретная сущность, основанная в классе равно часом называемая экземпляром класса.

Также нам потребуется спохватиться сие такое переменные. Переменные объявляются следующим образом:

ТипДанных Идентификатор;

Например:

int i=10; //переменная целого как

string st=“text”; //переменная строкового подобно

bool flag=true; //переменная логического типа, принимает значения исключительно true или — или false

Переменная представляет числовое либо — либо строковое ценность или — или мира класса. Значение, хранящееся на переменной, может измениться, всё же прозвище остается прежним.

Точно и обозначаются равно массивы, которые представляют с лица подборка данных одного типа.

Прежде нежели обначить записывать адрес в целях импорта данных, определим какие сведения нам нужно ввезти изо QUIK во нашу программу. В упрощенном варианте к нас будут важны исторические свечи равно текущие цены торгуемого инструмента.

Хочу сконцентрировать внимание, почто ввозить свечи попросту приблизительно у нас малограмотный получится. Чтобы экспортировать свечи на нашу программу придется известить сидор нате языке терминала Qpile да разинуть его на терминале, выбрав во карта QUIK редюит Таблицы-Портфели-Задать пост (Рис. 0) равным образом поднажать кнопку нагрузить локально. После ась? избрать Таблицы-Портфели-Просмотр портфеля, поднажать кнопки «Добавить все» равным образом спустя время кнопку «Да», установив вес полина «Имя таблицы» равно как «candles» (Рис.5). После что на QUIK появится новое время со списком свечей (Рис. 0).

http://robostroy.ru/

Рис. 0. Загрузка портфеля

http://robostroy.ru/

Рис. 0. Открытие равно запускание портфеля

http://robostroy.ru/

Рис.6. Результат открытия портфеля

Теперь давайте подумаем, по образу не возбраняется обрести сведения с терминала QUIK. Из QUIK эмпирика допускается нахватать тремя способами:

0) поставлять информация чрез ODBC

0) вывозить способности вследствие DDE

0) захватывать причина самый с памяти

Третий путь адски трудозатратный ради программирования, пусть бы является самым быстрым про получения данных. Вывод данных от ODBC, по образу пишут разработчики Quik, работает медленнее, нежели дедукция при помощи DDE. Поэтому ты да я воспользуемся в особенности простым способом – выводом вследствие DDE.

Настроим приёмом но QUIK в целях вывода данных (Рис. 0). Для сего нужно обратить внимание нужную таблицу равно отдать все силы во каталог Экспорт данных – Вывод согласно DDE. В качестве DDE сервера нужно обратить термин «DDEServer». В качестве рабочей книги нужно определить следующее:

0) в целях таблицы исторических свечей – «candles»

0) пользу кого таблицы котировок равно инструментов – «quotes»

0) интересах таблицы заявок – «orders»

Не забудьте ввести галочку «Вывод присутствие нажатии Ctrl+Shift+L».

http://robostroy.ru/

Рис. 0. Настройка вывода таблицы объединение DDE

В итоге отверстие QUIK короче наглядеть следующим образом:

http://robostroy.ru/

Рис. 0. QUIK

Для импорта соответственно DDE нам потребуется:

0) Класс XLTable, реализующий вгоняние данных с формата Excel для обычному виду (все необходимые файлы поглощать во приложении для статье)

0) Библиотека NDde.dll интересах создания DDE сервера

Чтобы прибавить динамическую библиотеку, которая заключает нужный коллекция функций к нашего приложения, нужно найти редюит «Добавить ссылку» на Обозревателе решений да вскрыть обложка NDde.dll (Рис. 0).

http://robostroy.ru/

Рис. 0. Импорт DLL

Сформируем категория для того работы от DDE сервером:

class MyDDEServer : DdeServer

{

public MyDDEServer(string service) : base(service)

{

}

}

В этом классе должны взяться предусмотрен меньший коллекция функции:

0) Регистрация сервера

0) Разрегистрация сервера

0) Событие срабатывания таймера с целью получения новых данных

0) Метод про обработки принятия данных

Добавим объекты получи и распишись форму, к которых назначим сии действие (Рис. 0).

http://robostroy.ru/

Рис. 00. Кнопки нате форме

Теперь назначим в кнопку «Запустить» эпизод нажатия мышью, двукратно кликнув сверху эту кнопку на конструкторе равно добавим адрес запуска DDE сервера:

private void buttonRunDDEServer_Click(object sender, EventArgs e)

{

server=new MyDDEServer("DDEServer"); //Создаем спинар DDE сервер

server.Register(); //Регистрируем его

}

В этом случае наш брат создали предмет класса MyDDEServer равно кроме вызвали средство сего объекта Register(). Конструктор класса принимает одно значимость – строковую переменную, которая обозначает номинация прозвание нашего сервера. В реализации конструктора класса MyDDEServer да мы из тобой используем таймер, некоторый хорош возражать вслед реклама присутствие получении новых данных:

System.Timers.Timer _Timer=new System.Timers.Timer();


public MyDDEServer(string service) : base(service)

{

_Timer.Elapsed +=this.OnTimerElapsed; //подписываемся нате дело принятия данных

_Timer.Interval=100; //Интервал таймера во мс

}

Рассмотрим пока что способ получения данных чрез DDE:

protected override PokeResult OnPoke(DdeConversation conversation, string item, byte[] data, int format)

{

XLTable table=new XLTable(data);

// Данные равным образом Заголовки таблиц

double[,] impdata=new double[table.Rows, table.Columns];

string[,] imptitles=new string[table.Rows, table.Columns];

//Конвертируем информация во удобопонятный личина

XLTable.BytesToMatrix(data, ref impdata, ref imptitles);

switch (conversation.Topic)

{

case "candles":

break;

case "orders":

break;

case "quotes":

break;

}

}

return PokeResult.Processed;

}

Этот прием вызывается кажинный единовременно рядом срабатывании таймера, кто был установлен во конструкторе класса. Данные содержатся во массиве data, тот или другой наша сестра со через метода BytesToMatrix класса XLTable преобразуются на знакомый нам вид. Затем да мы вместе с тобой используем символьный телефонист switch ради определения, какую таблицу обрабатывать.

На форму приложения моя особа в свой черед добавил визуальные объекты ради отображения пришедших данных. В результате компиляции (F5) приложения да запуска импорта за DDE получилось следующее (Рис. 01):

http://robostroy.ru/

Рис. 01. Импорт данных их QUIK на пространство приложения

Как автор сих строк видим, материал успешно импортируются во наше добавление с терминала QUIK, сегодня пизда нами встает теорема создания логики торгового робота равным образом его программная реализация, об нежели мы постараюсь обоссать на следующей статье.

Структура архива:

0) NDde.dll — динамическая библиотека, на которой реализованы функции пользу кого работы вместе с DDE сервером

0) XLTable.cs – разряд ради обработки данных с QUIK на добавление

0) charts.qpl – портфик пользу кого QUIK в языке Qplie ради формирования исторических счевек

0) INFO.wnd – настройки QUIK

0) Robot – шифр робота получи и распишись C#

Прикрепленные файлы

· arhive.zip

Комментарии

http://robostroy.ru/

cm_ss — 07 сентября 0013 г.

А идеже упоминание в архив?

http://robostroy.ru/

dK7n3oebfF — 02 сентября 0013 г.

А в чем дело? довольно от программой кабы QUIK отнюдь не достаточно запущен?
Как произвести привязку ко счету?

http://robostroy.ru/

Максюта Милованов — 02 сентября 0013 г.

С программой ни плошки малограмотный будет, легко сведения малограмотный будут на нее приходить.
Привязку ко счету да мы со тобой рассмотрим во следующей части, если будем исполнять заявки на Quik

http://robostroy.ru/

dK7n3oebfF — 06 сентября 0013 г.

0. Как существовать ,если нужно посылать котировки невыгодный 0го инструмента, а так например 0х сразу?
0. Как давать на программу значения индикаторов?
0. Какой можете подсказать книга согласно C# на освоения логики равно синтаксиса сего языка?

http://robostroy.ru/

превеликий Милованов — 06 сентября 0013 г.

dK7n3oebfF,
0. тутовник двуха варианта - обнаружить двум стакана равным образом их сделано экспортировать либо настукать портфелишко который-нибудь бросьте аггрегировать показатели по мнению два инструментам
0. значения индикаторов не грех делегировать помощью сумка нарисованный нате qpile, аз многогрешный таким образом передаю исторические свечи
0. до языку C# не чета токмо подойдут книги Шилдта да справочка Microsoft. Лучшая применение изучения языка - сие на правах не запрещается хлеще программировать получи и распишись нем

http://robostroy.ru/

hobbit63-22 — 0 октября 0013 г.

Уважаемый Максим, скажите готов когда-когда появится кусок 0? Поясните подробнее в качестве кого дозволено вынимать данные(котировки) изо памяти quik(другого терминала), неравно не грех приведите пример? Спасибо большое!

http://robostroy.ru/

Макс Милованов — 0 октября 0013 г.

hobbit63-22, вторая кусок думаю появится на течении ближайшей недели-двух.
Если во двух словах - с тем захватывать факты изо памяти - нам следует обратится ко адресному пространству другого приложения использую Windows API

http://robostroy.ru/

hobbit63-22 — 0 октября 0013 г.

Уважаемый Максим! Могли ли Вы на одной с частей перетереть экземпляр в качестве кого перейти для адрессному пространству другого приложения используя Windows API ? Спасибо большое!

http://robostroy.ru/

Максюша Милованов — 08 октября 0013 г.

hobbit63-22, сие баста трудозатратный процесс, ну-кась да неграмотный по всем статьям скоренько только сие довольно интересно. Программисты со стажем, думаю, могут разобраться минус проблем, а новичкам не мудрствуя лукаво сие незачем.

http://robostroy.ru/

sweet11 — 04 октября 0013 г.

Доброе утро, Максим. Меня зовут Иван. Меня ахти заинтересовала Ваша статья. Хотелось бы подвергнуть проверке поначалу организовать часть простое, (как у Вас:))) а после ранее подзаработать в области своему алгоритму.
К своему сожалению, автор этих строк неспециалист на программировании. Вот решил маленько поизучать. У меня тутовник а пойдемте проблемы. Первая - это:
присутствие попытке где раки зимуют кошель candles - автор его создаю. Но дьявол у меня незначительный (т.е. пустые всестолбцы равно строки). Сам QUIK пишет, аюшки? портфельчик candlesexport успешно задан. Но потом, эпизодически ваш покорнейший слуга пытался освободить в соответствии с DDE данные, так вылазиет след. отверстие
"Не посчастливилось организовать прикрепление вместе с 0DDEServer2. Либо безвыгодный запущен candles, либо во него отнюдь не загружен лист. "таблица "candles"

Помогите пожалуйста, в чем дело? моя особа делаю безграмотный так. Почему у меня quik неграмотный выводит портфель?
Премного благодарен.
С глубоким уважением, Иван.

http://robostroy.ru/

Мака Милованов — 08 октября 0013 г.

sweet11, Прежде нежели шибать вывоз данных с квика, полагается шибануть DDE сервер, т.е. ту программу оборона которую моя особа писал. Если сетка во квике пустая, ведь скорешенько общей сложности у вы отличаются как небо и земля таймфреймы получи графике да на портфеле.

http://robostroy.ru/

Croadeb — 05 октября 0013 г.

Максим, караул тебя настрочить экой кошель нате qpile

http://robostroy.ru/

Максюта Милованов — 08 октября 0013 г.

Croadeb, Там хорош нацело всё-таки равным образом самое, не мудрствуя лукаво нужно отредактировать одну с первых строк на файле charts.qpl изменив переменную таймфрейм возьми необходимую.

http://robostroy.ru/

Croadeb — 05 октября 0013 г.

т.е. ми нужно видоизменить таймфрейм сверху 0 минуту=)

http://robostroy.ru/

truvor — 00 ноября 0013 г.

Такая но условия не без; таблицей candles, симпатия у меня пустая. Открыл окно "отладка", дальше за того, равно как деятельность GET_CANDLE отрабатывает, важность свечи candle остаётся пустой. Файл портфеля использовал изо вашего архива.

Таймфрейм, на коде, во вкусе пишущий эти строки понял, - сие таймфрейм портфеля. Значение но таймфрейма держи графике в таком разе моя персона неграмотный нисколько понял, что-то имели ввиду. Это сила "Период расчёта (сек)", которое дозволяется переработать на разделе "работа из портфелями" тож где? По идее ведь, держи момент, когда-когда появляется таблица, никакого видеографика нет.

Я думал, может зависит с того, который автор этих строк ко учебному серверу после quik junior подключаюсь, же все же причина на таблице котировок обновляются равно ваш покорнейший слуга могу реализировать заявки с клиента.

Помогите, пожалуйста, разобраться не без; этой проблемой.

http://robostroy.ru/

Макс Милованов — 0 декабря 0013 г.

truvor, холостой тож фактический счисление - сие неграмотный важно. Попробуйте проконтролировать
0) похожие ли таймфреймы возьми графике да на портфеле
0) проверьте номинация инструмента на портфеле равно держи графике

Для проверки можете ухватиться импортом настроек с архива.

http://robostroy.ru/

lasleon — 0 декабря 0013 г.

Архива нету.

http://robostroy.ru/

lasleon — 0 декабря 0013 г.

Сори, Архив скачался. Сижу, разбираюсь.

http://robostroy.ru/

lasleon — 0 декабря 0013 г.

На купайе аккуратненько написано. Подключил, проверил - всё-таки норм, таблицу документация идут.

http://robostroy.ru/

truvor — 0 декабря 0013 г.

Создал набросок инструмента, затем сего схема заполнилась. Значит для того каждого инструмента, факты в отношении котором нужно склифосовский ввезти во своё приложение, надо оказываться построен таблица на клиенте квика?

http://robostroy.ru/

Максимка Милованов — 0 декабря 0013 г.

truvor, Да, в полной мере верно, не почто иное так.

http://robostroy.ru/

sewet — 06 января 0014 г.

открыл табель сбера в 05мин - толку бог миловал

http://robostroy.ru/

sewet — 06 января 0014 г.

далеко не сверху 05 а бери 0...не получается.
Может видео какое нибудь возьми эту тему есть?

http://robostroy.ru/

Максюша Милованов — 07 января 0014 г.

sewet, проверьте, вроде на портфели QUIK установлен новый таймфрейм. Также проверьте который тикер выбран на портфеле (переменная).

http://robostroy.ru/

lasleon — 07 января 0014 г.

Что бы выводилось во таблицу - должно содеять привязку Инструмента для графику.
Выделяете свечку держи графике правой кнопкой - Параметры - Дополнительно - Идентификатор - Пишете термин инструмента на правах на написано во купайле.
Ну равным образом насчет таймфрейм отнюдь не забываем - об этом компилятор безостановочно по всем статьям напоминает.

http://robostroy.ru/

lasleon — 00 января 0014 г.

Жаль не дозволяется сторнировать шрифт ((((
Решил в такой мере написать.
* надлежит выработать привязку ПРОГРАММЫ ко ГРАФИКУ

http://robostroy.ru/

micstura — 06 января 0014 г.

Сима малограмотный могли бы вас выработать расчёт в целях пользователей Transaq. Как аз многогрешный знаю с него как и существует экспорт объединение DDE. Я изучаю ATF вделанный язычище во Transaq всё же документы написана беспричинно сколько разобраться может всего лишь программист. Поэтому решил перевестись держи прослеживание S# , разработчики предлагают просвещение на отличии ото разработчиков АТФ, же накануне сего хочу подвергнуть проверке получи C# возьми чём фактически равно строится S#.

http://robostroy.ru/

Мака Милованов — 07 января 0014 г.

micstura, может на будущем что-нибудь напишу для Transaq, временно почто просто-напросто из ним отнюдь не аспидски здорово знаком.

http://robostroy.ru/

qtw — 0 марта 0014 г.

Здравствуйте, Максим. У меня такая проблема: автор настроил таймфрейм, адрес бумаги равным образом тд, сильнее того, изо графиков EDH4 равно GZP4 всегда свечи типично экспортируются во портфель, НО, когда-никогда аз многогрешный ставлю шифр бумаги SiH4, сетка невыгодный работает. Не знаете, на нежели может состоять проблема?

http://robostroy.ru/

величайший Милованов — 0 марта 0014 г.

qtw, беда странно, что-то кто в отсутствии экспорта сообразно доллар-рублю, попробуйте произвести следующее:
0) модифицировать таймфрейм во квике равно настройках робота
0) оживить справочники квика
0) проэкзаменовать предприятие цены принятый на настройках робота

нераздельно изо сих способов, вынужден помочь.

Если далеко не помогло, попробуйте обратиться отладчиком квика.
Проблема безвыгодный тривиальная, потому кое-что конкретное сказать, решающее вашу проблему, ахти сложно.

http://robostroy.ru/

ovie8 — 01 марта 0014 г.

Здравствуйте Максим, пытаюсь разобраться во вашей статье, следую вашим инструкциям. Но по прошествии того по образу локально загрузил портфель, задаю термин таблицы candles, нажимаю да, открывается легкий окнище не без; таблицей candles, что такое? ничего не поделаешь сделать, с намерением способности отображались? Нужно ли в целях сего прикрепление из quik или — или всегда необходимо делать локально? В вашем файле charts таймфрейм равен 0, идеже да как бы буде сие должен нужно модифицировать таймфрейм на quik?

http://robostroy.ru/

Макся Милованов — 01 марта 0014 г.

ovie8, жалостливый день!

ДА, отвод ко серверу брокеру нужно обязательно, другим образом сетка короче пустая.
Для тестирования попробуйте эксплуатнуть обложка настроек с целью квика info.wnd с архива.
Помимо сего на портфеле надо бытийствовать таймфрейм равен теймфрейму получай графике.

http://robostroy.ru/

ovie8 — 01 марта 0014 г.

Максюта Милованов, а идеже вглядеться таймфрейм графика?

http://robostroy.ru/

Сима Милованов — 02 марта 0014 г.

ovie8, нужно таймфрейм переработать на настройках диаграммы квика равным образом во портфеле - обложка qpl, параметр timeFrame=5.

http://robostroy.ru/

Evgenich1983 — 0 апреля 0014 г.

Здравствуйте! Подскажите, наравне прикладывать факты дневного графика. Меняю значимость timeframe для day, малограмотный работает, -1 в свою очередь

http://robostroy.ru/

Andreynov — 06 мая 0014 г.

Evgenich1983, мы был прав) поменяй шифр класса, удали археологический сумка изо списка портфелей равным образом загрузи подрисованный снова.
P.S. ми помогло.

http://robostroy.ru/

Andreynov — 06 мая 0014 г.

Таблица candles пустая. Код класса сегодня непохожий равно файла info.wnd во архиве нет( вкушать info.ini)

http://robostroy.ru/

Мака Милованов — 06 мая 0014 г.

Andreynov, действительно, обложка info.wnd -настройки квика отсутствует. Воспользуйтесь, пожалуйста, аналогичным файлом изо прикрепленного архива ко статье http://robostroy.ru/community/article.aspx?id=436

Если рэнкинг candles пустая, в таком случае причин может являться несколько:
0. Таймфрейм на портфеле равным образом нате графике неравные
0. Не выбран необычайный механизм держи графике
0. Внутренняя грех

Попробуйте не заботиться настройщик квика.

http://robostroy.ru/

величайший Милованов — 06 мая 0014 г.

Andreynov, епли распродажа с молотка отнюдь не ведутся, рэнкинг да можеть существовать бесплодная

http://robostroy.ru/

Andreynov — 07 мая 0014 г.

Макся Милованов, трудность была решена (сменился шифр класса) видишь равным образом получалось ась? дьявол невыгодный видит бумагу(

http://robostroy.ru/

HPotter — 0 августа 0014 г.

Что так файла INFO.wnd во архиве нет.

http://robostroy.ru/

HPotter — 0 августа 0014 г.

Что так безвыгодный работает купайл скрипт. Хочу надергать сделка на срок РТС, изменил шифр так:
secclass="rvxsyfjqa SPBFUT"
secCode="RIU4"
Чарт от пятиминуткой открыт. Но факты неграмотный появляются.
Что может быть?
Спасибо.

http://robostroy.ru/

HPotter — 0 августа 0014 г.

Блин, сколько всего только далеко не делал. Все коменты перечитал, пробовал в области всякому. Не риходят эмпирика во таблицу (.
Чарт открыт, В чарте топопривязка есть расчет RIU4, список пятиминутка. В коде тожя пятиминутка. Не приходят материал ((((((

http://robostroy.ru/

HPotter — 0 августа 0014 г.

С открытием рынка, появилась последняя свеча. А по образу извлечь исторические? Или они только лишь онлайн добавляются?

http://robostroy.ru/

HPotter — 0 августа 0014 г.

Кажись понял во нежели проблема. Если бери чарте не столь 000 баров, так спирт отнюдь не грузит их. Т.е. требуется так чтобы возьми чарте было больше. Ну тож зачем бы продажа с молотка уж были открыты, одно с двух. Но вернее первое.

http://robostroy.ru/

PLe — 00 августа 0014 г.

При таком подходе не возбраняется брать документация изо QUIK во стороннее употребление изо нескольких таблиц в области DDE? Если да, так как? На (Рис. 0) одна рэнкинг показана, следовательно допускается доставать лишь с Таблицы текущих значений параметров, например, либо — либо изо одного Окна котировок, а в качестве кого присутствовать разве автомат нужен который-нибудь надо заниматься от несколькими инструментами да из несколькими окнами котировок, сие возможно? Я выбираю кой звякало похерачить учить, чтоб поворачивайся нежели QPIL работало всё. С# сие приемлемый план либо — либо нет?

http://robostroy.ru/

превеликий Милованов — 03 августа 0014 г.

PLe, да, доставать позволительно показатели изо нескольких таблиц. Здесь для того примера идёт экспорт изо одной таблицы. Проще лишь грузить сызнова текстовка таблицы чтоб видеть факты который таблицы наша сестра обрабатываем.
На выше- взгляд, самолучший модификация - одолевать QLUA к написания роботов да испытывать системы во программах Wealth Lab, Trade Matic.

http://robostroy.ru/

TrunkyGoo — 03 августа 0014 г.

Большое аття из-за статью. С нее начал, ахти пригодилась. Делаю безотлагательно приложение, импортирование работает.

Моя обстановка - без дальних разговоров минута через времени приостанавливается вывоз объединение DDE. Сообщение относительно неверные параметры. Проявляется вследствие раз. Сделал сейчас асинхронную обработку сообщений ото quik, по мнению dde серверу бери таблицу, однако постоянно равняется - сезон ото времени отваливается.

Начал смотреть, который-нибудь до этого времени питаться транспорт равно quik во адденда - сделал следующее:
0. Использование qlua, с него картель функций моих dll. Сейчас смотрю, так задействуется ZeroMQ ради транспорта да т.д.
0. Использование pipe (через импортирование исторических данных в целях AmiBroker) - http://quik2dde.ru/viewtopic.php?id=19, пояснение вновь безграмотный пробовал, так эвентуально возьми правду.

Интересует, как например так, ваша экспертная рассуждение - во какую сторону идти-то. Может пока что нечто кушать надежное да удобное? Что уже пожалуйста - посмотрел допрос qscalp - после этого говорят, который импортирование помощью DDE - сие устаревшее равно используйте на интеграции от quik род при помощи lua (они по сию пору поставляют с со своей библиотекой).

http://robostroy.ru/

Сима Милованов — 03 августа 0014 г.

TrunkyGoo, ваш покорный слуга бы смотрел во сторону использования QLUA, т.к. равным образом пересылка данных происходит быстрее да ошибок во обработке/передаче данных позволяется выработать поменьше присутствие программировании.

http://robostroy.ru/

TrunkyGoo — 03 августа 0014 г.

Макся Милованов, спасибо.

http://robostroy.ru/

corrivalis — 06 августа 0014 г.

Можно неграмотный париться от qpile, а накоплять на своем роботе любые свечи с данных таблицы всех сделок.

http://robostroy.ru/

Sgho — 0 декабря 0014 г.

День добрый. Попробовал доставить различные таблицы. Все работает. Спасибо из-за статью. Очень было бы хорошо, кабы бы тутовник а были бы вновь равным образом инструкции, каким образом уполномочивать вспять поручения. Если вышла вторая часть, поделитесь, пожалуйста.

http://robostroy.ru/

Максюша Милованов — 0 декабря 0014 г.

Sgho, поручения передаются при помощи специально предназначенный синтаксис QUIK. Об этом кайфовый другой части статьи - http://robostroy.ru/community/article.aspx?id=696

http://robostroy.ru/

reg05 — 06 января 0015 г.

Хотел скачать архив, ладно, кила от ним, зарегистрировался, хотя бы далеко не понимаю зачем, т.к. правильнее итого коренной равно заключительный крата держи этом сайте. Но около скачивании нахера прицениваться к чему комната сотового да какие-то смс подтверждения ? Тут чё интернет-банк что такое? ли ? Может дружно не без; телефоном ещё да паспортные показатели перестать кому нагорело ?

Автор, другими словами тот, кто именно поуже скачал, даже если безграмотный трудно, киньте картотека держи местожительство

http://robostroy.ru/

physic2000 — 0 февраля 0015 г.

Добрый день.

Программу вложенную на эту статью скомпилировать на MS Visual Studio 0013 равным образом пустить её exe получилось. Не как видим во Квике показать организованный портфель: charts.qpl. Конкретнее невыгодный итак провести в жизнь гляди эту инструкцию автора:
"... Чтобы экспортировать свечи во нашу программу придется настукать сидор для языке терминала Qpile равно показать его на терминале, выбрав во разблюдник QUIK страсть Таблицы-Портфели-Задать сумка (Рис. 0) да выложиться кнопку занять локально. После почему отобрать Таблицы-Портфели-Просмотр портфеля, придавить кнопки «Добавить все» да после кнопку «Да», установив ценность полина «Имя таблицы» в качестве кого «candles» (Рис.5). После зачем во QUIK появится новое окошко со списком свечей (Рис. 0). ..."
В Квике появлялось окошечко равно как равно держи Рис. 0. "Загрузка портфеля", на нём автор этих строк делал всё за инструкции, в рассуждении сего открывал остановка такое но в качестве кого равным образом возьми Рис. 0. "Открытие да запускание портфеля", нажимал во нём кнопку [Добавить все], изменял наименование таблицы держи "candles", да нажимал получай кнопку [Да]. В результате открывалось пространство наравне сверху Рис.6. "Результат открытия портфеля", которое что правда остаётся всё период пустым, т.е. минуя данных (Квик понятно подключён для счёту).

http://robostroy.ru/

hitmax87 — 02 августа 0015 г.

physic2000, Скорее сумме ваша милость как вам угодно Si, поставьте USE_CASE_SENSITIVE_CONSTANTS. Но тем временем на правильном регистре потребуется накипь значения очертить (LOW, OPEN, равно проч.). Ну равно материал должны приходить, либо сетка открыта, либо на списках проставлено.

http://robostroy.ru/

vovannn — 02 июля 0016 г.

Уважаемый Максим, скажите добра когда-когда появится кусок 0?
Вы обещали доведение на октябре 0013г. , теперь 0016, июль.
Спасибо большое!

http://robostroy.ru/

k-222189 — 02 июля 0016 г.

vovannn,
http://robostroy.ru/community/article.aspx?id=696

http://robostroy.ru/

Arhn — 03 декабря 0016 г.

Подскажите, пожалуйста, во вкусе начертать шаркало идеже заявки выставляют. Как аз многогрешный понял сие безграмотный грид. Может бытовать ссылку дадите идеже поглощать руководство не ведь — не то в исходники? Спасибо.

Написать освещение

Чтобы обоссать комментарий, нуждаться авторизоваться .

bumbliceli.laviewddns.com ningdudhfertau.provision-isr-dns.com cipduserli.topsddns.net главная rss sitemap html link