Программируем на языке qlua

Скачать Программируем на языке qlua
Недавно искали:

Itnull

Команда форума
Администратор
Регистрация
22.05.13
Сообщения
25.548
Реакции
9.495
Веб-сайт
itnull.me
  • Автор темы
  • Администратор
  • Модер.
  • Команда форума
  • #1
Описание:

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

Можно заказать торгового робота знакомому программисту или компании, которая этим занимается. Но не каждый трейдер готов раскрывать алгоритм. Такой трейдер готов учиться, тем более, что это не так сложно, как кажется на первый взгляд. Стоит один раз научиться и можно писать роботов сотням, только идеи нужно успевать придумывать.

Почему стоит выбрать LUA:

Стабильная работа. Язык программирования LUA полностью интегрирован в терминал QUIK и работает стабильно и надежно. Роботам на языке LUA можно доверять свои деньги.
Высокая скорость работы. Язык LUA отличается высокой скоростью работы и позволяет реализовывать сложные расчеты, не замедляя работу терминала КВИКа.
Прост в изучении. Язык LUA при огромных возможностях достаточно прост в изучении даже для неподготовленного пользователя и позволяет быстро его освоить.
Подходит для профессионалов. Для программистов со стажем язык ЛУА включает множество возможностей, в частности, интергация кодов на С и С++.

Формат курса:

Видеокурс состоит из 5 частей, в которые входят 60+ видео-уроков

Программа курса:

ЧАСТЬ I. ПОДГОТОВКА К ИЗУЧЕНИЮ. СОСТАВЛЕНИЕ АЛГОРИТМА ТОРГОВОГО РОБОТА

Урок 1. Введение к курсу по программированию. Как правильно изучать язык программирования ЛУА

Введение к курсу
Определение целей и задач курса

Урок 2. Язык программирования ЛУА

Происхождение и название языка ЛУА
Преимущества языка ЛУА
Недостатки языка ЛУА

Урок 3. Необходимые и рекомендуемые программы для изучения и программирования на ЛУА

Терминал КВИК 7-й версии
Демо версия терминала КВИК от разработчиков терминала
Текстовый редактор с подсветкой конструкций языка ЛУА
Отладчик Декода
Программа Visual Studio
Программа для создания блок-схем Diagram Designer
Робот для автозапуска терминала КВИК

Урок 4. Заказ и установка Демо версии терминала КВИК

Заказ Демо версии терминала КВИК
Особенности Демо версии терминала КВИК
Установка и запуск робота для автозапуска терминала КВИК

Урок 5. Текстовый редактор для работы с кодами

Подсветка конструкций языка ЛУА
Скрытие блоков и функций кода
Он-лайн обновление данных в файле
Дополнительное окно для сравнения кодов
Другие возможности редактора

Урок 6. Ресурсы дополнительной информации по изучению языка ЛУА

Форум по терминалу КВИК. Разделе ЛУА
Справочное руководство по терминалу КВИК (info.chm)
Справочное руководство QLUA.chm
Поиск нужной информации в поисковых системах
Дополнительные сайты для изучения языка ЛУА

Урок 7. Загрузка торговых роботов на языке ЛУА в терминал КВИК

Загрузка роботов в терминал КВИК
Запуск роботов в терминале КВИК
Остановка и удаление роботов в терминале КВИК

Урок 8. Различие между расширением lua * luac

Компиляция кодов на языке ЛУА
Различие в скорости исполнения скриптов
Закрытый и открытый код скрипта

Урок 9. Индикатор Параболик SAR

Построение индикатора Параболик SAR в терминале КВИК
Особенности данного индикатора и отличия от других индикаторов
Мозговой штурм и зарождение алгоритма Робота

Урок 10. Построение алгоритма робота в виде диаграммы (блок-схемы)

Особенности стиля программиста
Два основных варианта написания торговых роботов
Что важнее алгоритм или код робота?
Как сохранить прибыльный алгоритм от кражи
Составление алгоритма в виде диаграммы
Подведение итогов первой части курса

ЧАСТЬ II. ПОСТРОЕНИЕ И ЗАПУСК ШАБЛОНА ТОРГОВОГО РОБОТА ДЛЯ ТЕРМИНАЛА КВИК

Урок 11. Функции обратного вызова

Возможность обработки событий в терминале КВИК
Функция обратного вызова OnInit() . Необходимость ее использования
Функция OnStop(). Завершение кода при нажатии кнопки «Остановить»
Функция OnClose(). Штатное и аварийное закрытие терминала КВИК
Функция отдельного дополнительного потока терминала main()

Урок 12. Сервисные функции

IsConnected - подключение к серверу терминала КВИК
getScriptPath - путь, по которому находится запускаемый скрипт
getWorkingFolder - путь, по которому находится файл info.exe
getInfoParam - параметры для информационного окна
message - отображение сообщений в терминале КВИК
sleep - приостановка выполнения кода скрипта
PrintDbgStr – функция для вывода отладочной информации

Урок 13. Потоки и схема работы скриптов на языке ЛУА в терминале КВИК

Понятие потока
Блок – схема работы Торговых Роботов на языке ЛУА в КВИКе
Организация основного и дополнительного потоков

Урок 14. Комментарии к коду

Строчные комментарии в языке ЛУА
Блочные комментарии в языке ЛУА
Зачем нужно делать комментарии к коду программы

Урок 15. Структура программы Торгового Робота

Переводим блок-схему алгоритма в текстовый вид
Организация функции main() в виде бесконечного цикла
Добавление в код Робота основных функций обработки событий

Урок 16. Подключение библиотек

Возможность работать с классами
Подключение отдельных файлов с различными функциями
Команда dofile()

Урок 17. Типы переменных в языке ЛУА

nil неопределенный тип
Логическая переменная boolean
Числовой тип number
Строковый тип string
Тип функция function
Массивы и таблицы в языке ЛУА
Отличие от языка qPile

Урок 18. Локальные и глобальные переменные. Приведение типов в языке ЛУА

Ключевое слово local
Приведение к строковому типу переменной tostring()
Приведение к числовому типу переменной tonumber ()

Урок 19. Создание и вывод в терминал таблицы Робота

Инициализация таблицы AllocTable()Создание таблицы CreateWindow()
Удаление таблицы с Роботом и остановка Робота DestroyTable()
Создание колонок в таблице Робота AddColumn()
Добавление строк и запись в ячейки InsertRow() * SetCell()
Название таблицы Робота SetWindowCaption()
Изменение формы таблицы Робота SetWindowPos()

Урок 20. Запуск прототипа Торгового Робота

Получение и вывод серверного времени с биржи
Вывод сообщений в терминал КВИК
Контроль работы Торгового Робота

ЧАСТЬ III. ОСНОВНЫЕ КОНСТРУКЦИИ ЯЗЫКА ЛУА

Урок 21. Арифметические операторы в языке ЛУА

Сложение строк (конкатенация, склеивание)
Сложение чисел +
Вычитание чисел –
Умножение чисел *
Деление чисел /
Возведение в степень ^
Остаток от деления %

Урок 22. Операторы отношения в языке ЛУА

Знак больше
Знак больше или равно
Знак меньше
Знак меньше или равно
Знак равно
Знак не равно

Урок 23. Логические операторы в языке ЛУА

Оператор and
Оператор or
Оператор not
ЛОЖЬ и ИСТИНА в языке ЛУА

Урок 24. Математические функции в языке ЛУА

Стандартные математические операции
Специальные математические функции языка
Подсказки текстового редактора

Урок 25. Работа со строками в языке ЛУА

Основные функции для работы со строками в языке ЛУА
Различные методы записи при работе со строками
Определение длины строки в языке ЛУА. Функция len #
Функция для форматирования строк format
Функция для обрезки строк sub

Урок 26. Отладчик DECODA

Самый крутой отладчик для языка ЛУА
Правила работы с отладчиком Декода
Возможности отладчика и просмотр переменных и массивов
Сложности при работа с Декода

Урок 27. Отладка через VISUAL STUDIO

Отладка кода при помощи команды PrintDbgStr()
Просмотр переменных при помощи редактора Visual Studio

Урок 28. Дата и время в языке ЛУА

Формат полей в дате в языке ЛУА
Функция для работы с датами в ЛУА os.clock() * os.time() * os.date()
Просмотр даты в отладчике Декода

Урок 29. Конструкция if

Общий вид конструкции if
Модификации конструкции if

Урок 30. Конструкции while-do * repeat-until

Конструкция while-do
Конструкция repeat-until
Отличие данных циклов
Выход из цикла при помощи оператора break

Урок 31. Три типа конструкции for

Стандартная конструкция for
Конструкция for с циклом по индексам массива (ipairs)
Конструкция for с циклом по ключам массива (pairs)
Сложности из-за отсутствия оператора continue
Выход из цикла при помощи оператора break

Урок 32. Работа с файлами

Важность вывода информации в лог-файлы
Функции io.open * seek * write * flush * close
Ошибки при отсутствии закрытия файлов

Урок 33. Дополнительные функции при работе с таблицей робота

Функция контроля открытия таблицы IsWindowClosed()
Подсветка строк и ячеек таблицы SetColor()
Мигающие строки в таблице с Роботом Highlight()
Использование символа ; для разделения строк
Настройка таблицы нашего Робота

Урок 34. Обработка событий при взаимодействии с таблицей Робота

Функция обратного вызова для обработки событий в таблице Робота
Различные типы взаимодействия
Функция SetTableNotificationCallback()
Настройка отклика нашего Робота на нажатие ячеек в таблице

Урок 35. Описание алгоритма Робота Параболик

Список необходимых функций, которые нужно создать
Подведение итогов третьей части курса

ЧАСТЬ IV. ОТПРАВКА ТРАНЗАКЦИЙ В ТЕРМИНАЛЕ КВИК

Урок 36. Получение данных из таблицы Текущие торги

Список основных параметров для торговых инструментов
Функция getParamEx()
Функция getParamEx2()
Смотрим справочник по языку qPile
Нахождение статуса торговой сессии по нужному инструменту

Урок 37. Принципы работы с таблицами в КВИКе

Список основных таблиц, к которым можно обращаться
Функция getNumberOf()
Функция getItem()

Урок 38. Нахождение позиции по инструменту

Таблица Квика "futures_client_holding"
Применение функций getNumberOf() * getItem()
Находжение позиции инструмента на срочном рынке ФОРТС

Урок 39. Работа с графиками в ЛУА

Два возможных способа получения доступа к графикам
Доступ к графикам по уникальным тегам

Урок 40. Работа с графиками в ЛУА при помощи идентификаторов

Получение информации с ценовых графиков
Получение графической информации от индикаторов
Функции для работы с графиками getLinesCount ()
Описание функции количества свечей на графике getNumCandles()
Доступ к свечкам по индексу getCandlesByIndex()

Урок 41. Получение сигнала с графика для Робота Параболик SAR

Как прописать уникальные идентификаторы для графиков и индикаторов
Схема получения сигнала для индикатора Параболик SAR
Создание функции для получения сигнала на открытие позиции с графика
Проверка корректности сигнала с графика

Урок 42. Вспомогательные функции

Функция определения знака числа
Проблемы при получении дробных числовых значений в терминале КВИК
Функция округления цены инструмента до шага инструмента

Урок 43. Отправка транзакций в терминале КВИК

Общие сведения об отправке транзакций
Функция sendTransaction()
Необходимость проверки результатов транзакции

Урок 44. Отправка транзакций на планку

Что такое планка?
Проблема дополнительного ГО
Проблема терминала Метатрейдер 5

Урок 45. Пишем функцию CorrectPos()

Требования, предъявляемые к нашей функции
Нахождение необходимых полей для отправки транзакций
Заполнение необходимых полей таблицы для отправки транзакции
Вывод полной информации в лог-файл
Проверка корректности исполнения транзакции
Аварийная остановка Робота в случае сбоя

Урок 46. Проверка работы функции CorrectPos()

Выявление ошибок и опечаток при помощи Декоды
Тестирование корректной работы нашей функции
Сложности и опасности при работе с Роботами

ЧАСТЬ V. ОКОНЧАТЕЛЬНАЯ ОТЛАДКА РОБОТА. ОПТИМИЗАЦИЯ ТОРГОВЫХ РОБОТОВ

Урок 47. Введение к 5-й части курса

Список оставшихся функций, которые надо создать
Способы оптимизации работы с таблицами

Урок 48. Функция выставление стоп-профита

Список необходимых параметров для выставления стоп-профита
Заполнение всех полей для таблицы транзакции
Вывод всей информации в лог-файл
Комментарии для терминала КВИК

Урок 49. Функция удаления стоп-профита по номеру заявки

Список необходимых параметров для удаления стоп-профита
Заполнение всех полей для таблицы транзакции
Вывод всей информации в лог-файл

Урок 50. Работа с флагами

Понятие двоичной системы счисления
Побитовые операции с двоичными числами. Операция and
Кодировка информации при помощи флагов
Функция для работы с флагами bit.band()

Урок 51. Функция удаления всех стоп-профитов

Список необходимых параметров для удаления стоп-профита
Заполнение всех полей для таблицы транзакции
Использование функций для работы с флагами
Вывод всей информации в лог-файл

Урок 52. Отбор строк таблиц по заданным параметрам

Оптимизация работы с таблицами в терминале КВИК
Функция SearchItems()

Урок 53. Определение «Правильной» цены входа в позицию

Проблема получения данных из таблицы сделок
Использование функции SearchItems()
Как правильно рассчитать цену входа
Определение цены входа для внутридневной торговли

Урок 54. Продолжаем писать код Робота

Три типа торговли Робота ЛОНГ/ШОРТ/РЕВЕРС
Коррекция позиции по сигналу с графика
Вывод данных в таблицу Робота
Стороннее вмешательство в алгоритм Робота

Урок 55. Функция контроля профита

Алгоритм работы функции контроля профитов
Удаление лишних стоп-заявок
Поиск правильной стоп-заявки
Выставление при необходимости новой Стоп-заявки

Урок 56. Запуск готовой программы

Исправление ошибок и опечаток
Незаменимая помощь программы Декода
Проверка корректности работы алгоритма

Урок 57. Что можно улучшить в работе Робота

Дополнительные функции защиты от сбоев
Особенности конкретного брокера
Возможность ввода параметров он-лайн
Комбинация языков СИ-ШАРП * ЛУА * СИ++

Урок 58. Демонстрация робота с возможностью изменения параметров он-лайн

Запуск готового Торгового Робота с конфигуратором
Возможность ввода параметров он-лайн
Дополнительные возможности Робота
Удобство при использовании конфигуратора
Возможность контролировать возможные значения параметров

Урок 59. Возможности языка ЛУА, которые не вошли в наш код робота

Работа с другими типами таблиц
Таблица обезличенных сделок
Работа с биржевыми стаканами. Функция OnQuote()
Возможность создания собственных индикаторов в КВИКе
Работа с метками

Урок 60. Подведение итогов курса

Продажник
Скрытое содержимое доступно для зарегистрированных пользователей!



Скачать
 
Назад
Сверху Снизу