Избранное трейдера MrD

по

Qlua: работа с биржевым стаканом.

Сегодня:

Работа с биржевым стаканом через getQuoteLevel2
Особенность нумерации в стакане заявок терминала квик
Работа через функцию обратного вызова OnQuote
Примеры работы со стаканом из скрипта
Сравнение реализации одного алгоритма через разные функции

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

Работать с биржевым стаканом можно через getQuoteLevel2 и функцию обратного вызова OnQuote.

Функция getQuoteLevel2 возвращает 2 массива котировок (bid и offer) и 2 значения: количество бидов в стакане (bid_count) и количество офферов (offer_count). Чтобы нам не было скучно разработчики терминала решили последних 2 параметра передавать в виде строки, поэтому при работе их нужно перевести в числа (через tonumber).

Массивы bid и offer содержат цены (price) и количество (quantity) по каждому уровню заявок стакана. Их также нужно будет предварительно перевести в число.



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

Qlua: работа с лентой всех сделок (часть 2).

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

Различия данных ленты всех сделок и биржевого стакана.
Большие покупки и продажи в ленте сделок и динамика цены.
Альтернативные варианты поиск крупных игроков по ленте сделок.

Начало: https://smart-lab.ru/blog/935919.php


Еще раз про отличия ленты всех сделок и биржевого стакана – некоторые заявки могут исполняться очень быстро, их можно просто не заметить в стакане, но они точно отразятся в ленте. Какие-то заявки и движения в стакане могут быть для создания видимости крупных игроков, при этом они могут как отменяться как только цена начинает приближаться, так и очень оперативно переставляться. Лента сделок покажет реальную картину: какие объемы и по каким ценам прошли, какие проходят в текущем моменте.

Обычно при значительных покупках в ленте сделок мы можем наблюдать и рост цены. Например, используя скрипт, который мы рассмотрели в прошлой статье, это можно было наблюдать наглядно на графике Сбербанке (импульс роста в районе 12 часов):



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

Исследование проскальзывания на мосбирже в режиме "по рынку"

Замеры делаются каждый день. В данном исследовании усреднены значения за 5 месяцев 04.23-08.23.
Сделки совершаются один раз в минуту. Целевая цена — close только что завершившейся минуты.
Началась новая минута. Для покупки берём лучший аск, добавляем много шагов цены и кидаем заявку.
Для продажи симметрично наоборот.
Все сделки тейкерские.

Замеры на трёх счетах (самый маленький *млн, самый большой раз в 20 больше, средний где-то посередине).
Проскальзывания посчитаны в процентах.

МАЛЕНЬКИЙ СЧЁТ:
[1,] «UC» «0.00364»
[2,] «SF» "-4e-04"
[3,] «GD» "-0.00509"
[4,] «Si» "-0.00589"
[5,] «GZ» "-0.00602"
[6,] «MX» "-0.00644"
[7,] «Eu» "-0.00712"
[8,] «RI» "-0.00893"
[9,] «CR» "-0.00996"
[10,] «NA» "-0.0103"
[11,] «BR» "-0.01595"
[12,] «SR» "-0.02203"
[13,] «RN» "-0.0248"
[14,] «GK» "-0.02562"
[15,] «NG» "-0.02766"
[16,] «SV» "-0.02779"
[17,] «LK» "-0.02945"
[18,] «VB» "-0.05394"

СРЕДНИЙ СЧЁТ:
[1,] «SF» "-0.00402"
[2,] «GD» "-0.00441"
[3,] «UC» "-0.00459"
[4,] «Si» "-0.00546"
[5,] «Eu» "-0.00719"
[6,] «NA» "-0.00816"



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

кирпичи Ренко и скользяшка к кирпичам....

263 члена энтого мартыновского кружка меня забанили… ну негодяи же… прямо хочется от энтого — «рвать и метать, рвать и метать» ©....

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

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


Qlua: работа с метками, пишем торгового советника на индикаторах.

Сегодня рассмотрим:

Вывод текста на график
Вывод графических сигналов
Удаление меток с графика
Торговый советник на индикаторах
Удаление данных вечерней/утренней сессии с графика.

В торговом терминале почти нет графических инструментов, которых можно было бы задействовать через скрипт. Фактически разработчики оставили возможность использовать только индикаторы (неточность или ошибка в написании которых может подвесить весь терминал) и специальные метки, которые можно наносить на график.

И хотя сам терминал имеет возможность отрисовки различных линий, фигур, каналов, дуг, уровней, но из lua скрипта ничего этого до сих пор штатными методами не доступно. Разработчики оставили единственную возможность — вывод рисунка (bmp или jpg), поэтому желающий нарисовать, например, прямоугольник должен сперва его отрисовать где-то (или взять из библиотек рисунков), сохранить в нужном формате, и далее уже через метку поместить в конкретном месте графика. Вот такой вот «кружок авиамоделизма») Посмотрим как это работает.



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

Создание на Lua своего индикатора в графике Quik: основы, нюансы, пример. Индикаторы: прогнозных High и Low следующего интервала; ценовых уровней объема.

   Кратко расскажу принципы и некоторые нюансы работы с графиком в Qiuk в плане создания своего индикатора (здесь и далее – подразумевается использование языка программирования Lua). В конце текста изначально хотел прикрепить видео с демонстрацией и краткими пояснениями работы моих индикаторов, но решил сделать это во второй части статьи, чтобы совместить просто иллюстрацию с небольшим анализом фьючерсов и акций.
   На полноту изложения вопроса по работе с индикаторами на графике Quik не претендую. Информация будет полезна интересующимся данной темой, не рассчитана на профессионалов (которые и так все знают, умеют и реализовали – свято в это верю), но все же предполагает наличие определенного уровня знаний Lua.
   Зачем мучиться со своими индикаторами? Конечно, в этом нет смысла, если вас устраивают стандартные индикаторы или отсутствуют самостоятельные подходы (методы) торговли, либо визуализация вам в принципе не требуется (не интересна).
   В моем случае мне банально захотелось сделать визуализацию своего метода прогнозирования экстремумов цены следующего интервала.



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

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

Функция CreateDataSource
Получение количества свечек данных
Пауза для подгрузки данных
Получение по инструменту OPEN, HIGH, LOW, CLOSE, VOLUME
Обработка времени и даты
Закрытие источника данных
Примеры: получение данных последних 10 свечей, выгрузка новой минутной свечки после её закрытия, текущее значение простой средней SMA10 по минуткам
Простой скрипт выгрузки котировок

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

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

ds, err = CreateDataSource(код класса, тикер инструмента, интервал)

Код класса: для акций «TQBR», для срочного рынка «SPBFUT».



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

Подстройка параметров ТС в процессе торговли

Доброй ночи, коллеги!

Сам то я вроде противник curve fitting.
С другой стороны, все, что делает алготрейдер в процессе поиска Грааля — есть чистый curve fitting (IMHO).

Спешу поделиться собственным успехом.
Уже 3 года как практикую подстройку ТС по предыдущим итогам ее работы.

Подробнее:

1. Гуры СЛ ищут идеальную ТС методом WFT (это к 100 грамм золота — сам я этот метод называю WTF))) ). В действительности все такие шевеления имеют единственной целью поиск стационарного индикатора, который кроет все остальные, как тузик — грелку.
2. Мои скромные вычисления способны убедительно показать, что Грааля идеального стационарного индикатора не существует.

Что остается нам, простым алготрейдерам?

Регулярно подстраивать параметры ТС (IMHO).

Теперь докладываю, коллеги — в этом вопросе я преуспел )))

Мои алго, так же, как в WFT, анализируют прошедший интервал, и оптимизируют параметры торгового алго по его итогам. Ну, т.е. меняют их.
На выходе я имею более стабильную систему, нежели стационарный индикатор, прошедший тест WFT (а такие есть?).

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

Qlua: пишем скринер акций Московской биржи

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

Нам понадобятся:

1. Таблица для вывода данных (строить уже умеем).

2. Получение данных из таблицы текущих торгов через getParamEx (проходили там же).

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

Через sec_list = getClassSecurities(«TQBR») можно получить строку с тикерами акций на Московской бирже, которые будут разделены запятыми. Чтобы пройтись по всем элементам и записать их в массив используем цикл:

for TIKER in string.gmatch(sec_list, "[^,]+") do
  tikers[#tikers + 1]=TIKER
end


Отслеживать будем параметр LASTCHANGE – процент изменения цены от цены закрытия:



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

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