Постов с тегом "QLua": 177

QLua


Таблица для QUIK Спреды акций бесплатно

Представляю свою новую программу Утилита для QUIK «Супер таблица».

Утилита предназначена для создания различных таблиц в торговом терминале QUIK. Пользователь может самостоятельно получать различные значения таблиц QUIK, проводить расчёты и выводить результат в Супер таблицу (аналог MS EXCEL). В комплекте готовый пример «Спреды акций»:

Таблица для QUIK Спреды акций бесплатно

Как можно использовать спреды фьючерс-акция?

Зарабатываем процентную ставку (синтетическая облигация).

Находим наибольший годовой процент. Покупаем акции, продаём фьючерсы равного объёма. К экспирации разница нивелируется. Например, на момент написания «iСофтлайн» показывает хороший результат 26.11% годовых.



( Читать дальше )
  • обсудить на форуме:
  • QUIK

Qlua: работа со сделками, позициями и денежными лимитами. Часть 2.

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

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

Клиентский портфель (получаем данные через getPortfolioInfo и getPortfolioInfoEx).
Позиции по деньгам (getMoney и getMoneyEx, money_limits).
Позиции по инструментам (getDepo, getDepoEx, depo_limits).
Ограничения по клиентским счетам (futures_client_limits).
Позиции по клиентским счетам (futures_client_holding).

Таблица «Клиентский портфель» даёт сводную информацию по лимитам и параметрам риска брокерского счета. Таблицы «Позиции по деньгам» (лимиты) и «Позиции инструментам» (ценные бумаги) показывают данные в разрезе фондового рынка. Таблицы «Ограничения по клиентским счетам» (лимиты) и «Позиции по клиентским счетам» (фьючерсы и опционы) – только про срочному рынку.



( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

QUIK. Робот Сетка. ТС "Ассистент". ч.2

Приветствую читателей!

Практически пол года не писал новых статей и не публиковал новые видео с тематикой своего самого интересного, сложного и успешного изобретения «Робот Сетка».

Во-первых, взялся за доработку большого количества функций данного робота. Стоимость доработки у меня не высокая, на данный момент 1000р./час. Четыре года назад была стоимость 300р./час. Оплата моего труда, как программиста выросла в три раза, при росте цен чуть менее в 2 раза (по моей оценке 82% с 01.01.2020). Однако программирование, всё так же, является маленьким, незначительным хобби, на фоне основного бизнеса в виде небольшого магазинчика товаров для дома и ремонта.

Во-вторых, в упомянутом выше бизнесе, требовалось моё вмешательство. Бизнес вырос за последние годы. Взял нового сотрудника, своего друга, но дело не пошло, оказалось этого не его. Дружеские отношения не изменились – это главное. Месяц назад взял сотрудницу на место друга. Вроде, всё получается. Буду стараться максимально делегировать свои задачи и, тогда, появиться больше времени на программирование.



( Читать дальше )
  • обсудить на форуме:
  • QUIK

Qlua: статус файла.

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

Для проверки наличия файла я использую функцию, которую сам когда-то нашел в сети, она возвращает размер файла в байтах, если файл существует и nil если не найдет его.

Qlua: статус файла.

Проверить занят ли файл, а также проверить что он не пустой можно следующей функцией:


( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

Qlua: работа со сделками, позициями и денежными лимитами. Часть 1.

Функция OnTrade
Сохранение параметров сделки в файл.
Работа с таблицей сделок.
Сохранение всех сделок дня.
Скрипт автосохранения всех заявок и сделок под завершение торгового дня.

Для отслеживания прошедших сделок мы можем задействовать функцию обратного вызова OnTrade. Она во многом похожа по логике на OnOrder, только возвращает коллбэки уже по исполненным сделкам. В случае, если заявка разбивается на несколько сделок, мы получим информацию по каждой.

В файле QLUA.chm в директории терминала находим через поиск описание самой функции:

Qlua: работа со сделками, позициями и денежными лимитами. Часть 1.
И таблицу с параметрами:



( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

Закрытие Открытия и итоги по алготорговле

Невозможно перестать каламбурить про открывашку, соблазн непреодолим. Они же когда банк так называли, всё знали заранее!

Возвращаюсь туда, откуда начинал — ВТБ, благо согласовали нормальные тарифы на FORTS еще весной. Консервативная часть и так там лежала. Но теперь можно сказать, что диверсификация по брокерам провалилась из-за их слипания.
Про ВТБ в основном клевета ходит, нормально у них все работает. Но фирменного открывашкиного сглаженного графика эквити будет не хватать. Неприятные просадки на нем смотрелись сущими пустяками.

Этот год:
Закрытие Открытия и итоги по алготорговле



Вся недолгая история в Открытии:


( Читать дальше )

QUIK. Робот Сетка. ТС "Ассистент". ч.1

Продолжаю делать описания разных возможностей «Робот Сетка». Расскажу о ТС «Ассистент».

   Видео.

   
   Описание.
   Основной принцип работы прост: пользователь выставляет заявку, робот её «подхватывает», поддерживает, выставляет стоп-лосс и тейк-профит. Есть, также возможности создания алгоритма входа позицию по индикатору QUIK, времени, определённому параметру из таблиц QUIK и т.д. А, так же, возможность, работы в режиме хеджера, например, для арбитражной стратегии, когда пользователь совершает сделку по одному инструменту, а робот её «видит» и выставляет заявку по другому инструменту.

   Вся работа организована через алгоритмы, которые идентифицируются комментариями (Поручение). Возможна работа одновременно с разными алгоритмами. Например, пользователь выставляет заявку с комментарием «1» — выставляется стоп-лосс и тейк-профит на расстоянии 0.5%. Выставляет заявку с комментарием «2» — выставляется стоп-лосс и тейк-профит на расстоянии 1%. Таких алгоритмов может быть бесконечно много. Достаточно один раз настроить и пользоваться готовыми условиями выхода из позиции.



( Читать дальше )
  • обсудить на форуме:
  • QUIK

Qlua: работа с заявками (часть 3).

Сегодня завершаем работу с заявками:

Функция OnTransReply
Функция OnOrder
Получение остатка по заявке, контроль исполнения полного объема
Таблица транзакций
Общая логика выставления лимитной заявки в стакане

В предыдущих примерах мы закладывали на обработку заявки небольшой таймаут (в пределах от 300 мс до 1 секунды), но правильнее отслеживать результат по коллбэкам, т.к. это время может быть и менее 300 мс, а может затянуться (по разным причинам) на секунды. Поможет нам в этом отслеживании функции обратного вызова OnTransReply и OnOrder.

Если отправляя заявку через sendTransaction мы на старте могли получить ошибку на стороне терминала (неправильно указанный торговый код/инструмент/класс рынка), то через OnTransReply мы получаем результат обработки нашей транзакции на сервере брокера (например ошибка при выставлении заявки из-за отсутствия подключения, либо у клиента нет прав на отправку транзакции конкретного типа, либо заявка не проходит по лимитам и пр.).

Функция OnTransReply возвращает ответ на транзакцию, выставленную средствами qlua.



( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

Qlua: работа с заявками (часть 2).

Сегодня:

Узнаем общее количество заявок
Функции getNumberOf и getItem
Как пройтись циклом по всем заявкам
Вывод активных заявок
Снять скриптом заявку
Снимаем все активные заявки скриптом
Снимаем только заявки, выставленные конкретным скриптом


В прошлый раз мы научились
выставлять скриптом заявки в терминале, теперь можем поработать с ними.
Выставим скриптом 5 заявок на покупку и продажу от лучших цен
BIDи OFFERстакана заявок с шагом в 0,01.

 

Напишем функцию, которая будет выдавать нам необходимые цены (лучшую цену спроса и предложения) со стакана:

Qlua: работа с заявками (часть 2).

И возвращать -1, если предложения или покупки в стакане не найдены (стакан закрыт, либо нет торгов).

Тогда основной алгоритм в main будет выглядеть:



( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

Qlua: работа с заявками (часть 1).

Зачем нужен демо терминал
Где открыть учебный счет
Выставление заявки в торговом терминале через скрипт
Делаем функцию выставления заявки по требуемым условиям
Карман заявок и tri-файлы
Параметры для заявок с примерами по разным рынкам

Почему важно начинать работу с заявками на qlua с демо терминала?

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

Достаточно, например, прописать в



( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

....все тэги
UPDONW
Новый дизайн