Михаил Понамаренко (Автор тем)

Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
После длительной работы QUIK: os.clock() =-0.001
 
QUIK 11.0.3.1 работал без перезапуска четыре недели.
os.clock() =-0.001
Перезапустил QUIK всё стало на свои места.
Пример расчёта индекса Московской биржи, Инструкция по созданию в QUIK
 

Довольно часто у меня спрашивают, как создать свой индекс акций или портфель. Решил сделать инструкцию.

1.      Создаём копию индекса Московской биржи из акций.

- Вес акций можно взять https://www.moex.com/ru/index/IMOEX/constituents/ или https://smart-lab.ru/q/index_stocks/IMOEX/. Рекомендую второе, т.к. МБ даёт только скриншот таблицы, а на SMART-LAB можно скопировать таблицу выделением в EXCEL. Хотелось бы выгрузку в *.csv, но и за это СПАСИБО.


Важно запомнить, вес бумаг постоянно меняется. Чем больше дорожает бумага относительно остальных, тем больше её вес. Также, возможно удаление биржей бумаг из индекса и добавление новых.

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

Например, для акций «Транснф ап» получим:

122300 / (0.55 / 100) = 22 236 363 р.

Где:

122300 – цена акции Транснф ап;

0.55 / 100 – вес в % делим на 100, получаем коэффициент.

Но, даже ₽22млн. Не даст идеального повторения индекса.

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

Например, если в распоряжении счёт ₽100млн., индекс повторить легко. Просто берём количество акций необходимое для реализации веса. Для акций «Сбербанк» получим:

100 000 000 * (14.82/100) / 235.29 = 62986 акций

Где:

100 000 000 – депозит;

14.82/100 - вес в % делим на 100, получаем коэффициент;

235.29 – цена акции «Сбербанк».

Единственное, нужно учитывать количество лотов. Для акций «Сбербанк» это 10 акций, поэтому, нам нужно купить 62986 / 10 = 6298 лотов.

2.      Создаём мини индекс Московской биржи из основных акций.

Т.к. собрать портфель из всех 40 акций (на данный момент) не все смогут, часто обрезают количество акций. Приведу пример индекса из 5-ти акций с самым большим весом.

- Выбираем 5 акций с самым большим весом. Например,

Сбербанк       14.82%

ГАЗПРОМ ао 14.64%

ЛУКОЙЛ         14.54%

ГМКНорНик   6.23%

Новатэк ао     5.07%

- Получаем сумму процентов:

14.82+14.64+14.54+6.23+5.07=55.3

В общем-то, данный расчёт говорит, что мы будем повторять индекс чуть больше, чем на 55%.

- Определяем вес каждой акции для нашего мини индекса.

Получим коэффициент компенсации. На него нужно.

100 / 55.3 = 1.8083

Теперь достаточно просто умножить вес каждой акции на коэффициент компенсации.

Сбербанк       14.82%*1.8083=26.80%

ГАЗПРОМ ао 14.64%*1.8083=26.47%

ЛУКОЙЛ         14.54%*1.8083=26.29%

ГМКНорНик   6.23%*1.8083=11.27%

Новатэк ао     5.07%*1.8083=9.17%

- Вычисляем количество лотов для каждой акции.

Например, для акций «Сбербанк» при депозите 100 000р.

100 000 * (26.80/100) / 235.29 / 10 = 11 лотов

3.      Создаём график собственного индекса в QUIK

Штатного индикатора в QUIK нет, но я написал универсальный индикатор Арбитраж PRO при помощи которого можно решить задачу.

Я подготовил архив с готовой вкладкой для QUIK, где индекс уже создан:

https://disk.yandex.ru/d/jkhnhdgLsjZ2Wg

- Создаём диаграмму со всеми инструментами, входящими в наш мини индекс. Для этого создаём новый график Сбербанк-нажимаем пр.кн.мыши на графике-Добавить график (индикатор)-Новый-находим нужный инструмент-далее всё подтверждаем.


- Привязываем графики к индикатору. Для этого нажимаем лев.кн.мыши на названии графика-Дополнительно-указываем Идентификатор (можно скопировать из названия). Названия идентификаторов нам потребуются далее. Аналогично нужно задать для остальных инструментов. Можно в этом же окне, выбирая слева инструмент.

- Загружаем индикатор Арбитраж PRO в новую область нашей диаграммы. В

Поле «Выражение» задаём идентификаторы с весами и складываем их:

Сбербанк*26.8+ГАЗПРОМ*26.47+ЛУКОЙЛ*26.29+ГМКНорНик*11.27+Новатэк*9.17

Можно сразу перевести в коэффициенты, но динамику это не изменит.

Сбербанк*0.268+ГАЗПРОМ*0.2647+ЛУКОЙЛ*0.2629+ГМКНорНик*0.1127+Новатэк*0.0917

4.      Нормализуем наш мини индекс.

Например, нам нужно сравнить наш мини индекс с IMOEX.

- Добавляем график IMOEX в область индикатора. Для этого нужно кликнуть именно на область индикатора, аналогично примеру выше, добавить новый инструмент IMOEX, важно убрать галочку «Поместить в новую область». Скорее всего, получим малоинформативный график с большой разницей между значениями индексов.

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

318389.35/2630.87=121.02

Далее, нам нужно разделить значение нашего мини индекса на сближающий коэффициент:

(Сбербанк*26.8+ГАЗПРОМ*26.47+ЛУКОЙЛ*26.29+ГМКНорНик*11.27+Новатэк*9.17)/121.02

 

Получили более адекватный график, говорящий нам, что в последнее время наш индекс уступает IMOEX. Это произошло из-за отставания ГМКНорНик, Новатэк, ГАЗПРОМ. Сбербанк не смог вытащить эту компанию. Вес каждой акции пересчитывается индикатором Арбитраж PRO на каждый бар отдельно в зависимости от цены.

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

297392.87/2154.12=138.05

(Сбербанк*26.8+ГАЗПРОМ*26.47+ЛУКОЙЛ*26.29+ГМКНорНик*11.27+Новатэк*9.17)/ 138.05

 

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

Наш индекс: 297392.87

IMOEX: 2154.12

 

Теперь нажимаем лев.кн.мыши на названии графика-Дополнительно-ставим галочку «Процентное изменение»-вводим значение индикатора/графика на момент отсчёта-подтверждаем.

 

Аналогично поступаем с другими данными диаграммы, в нашем случае с графиком IMOEX. Получаем такой график:

К слову, возможность QUIK «Процентное изменение» позволяет создавать множество интересных графиков. Значение этих графиков может быть подхвачено роботами, например, моим Робот Сетка LUA.

Без всяких дополнительных индикаторов, QUIK способен показать вот такой график:

Маркеры рассылки, Новый неизвестный параметр в Информационном окне
 
Обратил внимание на новый неизвестный параметр в Информационном окне - Маркеры рассылки.
В инструкциях информации нет, поэтому есть вопросы:
1. Как он формируется и для чего можно использовать.
2. Как вызвать из LUA.
Опытным путём выявил, что маркер, во время загрузки терминала принимает значения :0, а после загрузки всех таблиц :1.
Это может быть полезно для правильного старта скрипта, когда нам известно, что все таблицы подгрузились.

 
QUIK 10, Ошибки, зависания и пр.
 
Имеем:
☑️ QUIK 10.0.0.181
☑️ Win10 x64
⛔ Зависаем через 10-600 сек. при запуске незатейливого скрипта:
Код
function main() -- Функция, реализующая основной поток выполнения в скрипте. Для ее выполнения терминал QUIK создает отдельный поток.
   is_run = true -- включение бесконечного цикла
   while is_run do -- повторяющийся цикл, пока is_run = true
         _tab = getItem("depo_limits", 1)
      sleep(50) -- приостановка выполнения скрипта в мс. зависает и при 1000, только реже
   end -- выход из цикла: повторяющийся цикл, пока is_run = true
end -- выход из функции: main
Робот Сетка LUA для QUIK бесплатно, Обзоры и обновления робота
 

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

В начале 2021-го года я опубликовал полноценную версию робота для бесплатного пользования в целях тестирования, т.к. не хотелось продавать «сырой» продукт с ошибками. Тестирование продлеваю уже полтора года.

👉 Робот торгует на моём реальном счёте без вмешательств на удалённом сервере VPS. Результатом работы доволен.

👉 Ошибок всё меньше, но есть над чем работать.

👉 Для кого этот робот? Робот не для тех, кто ждёт кнопку «Бабло». Да, есть возможности загружать готовые стратегии, но необходимо разбираться, что для чего и, как работает. Это отличная игрушка исключительно для тех, кто любит разбираться и думать.

👉 Почему планирую продавать, а не сам зарабатываю своим роботом на рынке? Я зарабатываю на рынке своим роботом, но дополнительный доход не помешает.

👉 На каких стратегиях мне удаётся зарабатывать? Отвечу честно. К сожалению, эта информация не может быть публичной. Любая неэффективность рынка теряет свою неэффективность после её массовой эксплуатации.

👉 В виду занятости в собственном бизнесе, не имею возможности оперативно осуществлять техническую поддержку. Стараюсь отвечать всем пользователям, но задержка с ответом доходит до нескольких дней.

Страница программы: http://pmntrade.ru/robot_setka_lua.html

Видеопрезентация: https://youtu.be/AFsLYLmfRx4


▶️ Канал YouTube

➤ Канал Telegram

Сбербанк getInfoParam("SERVER"), Выводится некорректное строковое значение
 
Сбербанк getInfoParam("SERVER") выводит €’‘ QUIK ‘Ѓ…ђЃЂЌЉ
Какая кодировка и есть возможность конвертировать?
Заранее спасибо!
QUIK 8.13 индикаторы перестали загружаться из подпапок., Раньше было лучше...
 
Начиная с QUIK 8.13 все файлы индикаторов нужно помещать исключительно в [QUIK]\LuaIndicators.
Ранее, было удобно располагать каждый индикатор в отдельной папке, т.к. индикатор может иметь свои рабочие файлы, инструкции, библиотеки и т.д.
Теперь, же приходится всё держать в LuaIndicators.
Можно ли вернуть удобную возможность?

 
Валюта ILS на Санкт-Петербургской бирже
 
Кто-нибудь подскажет, что это значит.
Судя, по коду израильский шекель. )
На сайте биржи валюта USD.
Check Point Software Technologie
https://spbexchange.ru/ru/stocks/inostrannye/Instruments.aspx



 
Событие получения данных всех таблиц и графиков после подключения к серверу
 
Можно просто сделать так:
Код
      if ToNumber2(string.gsub(getInfoParam("CONNECTIONTIME"), '%:', '')) < 10 then -- если терминал на связи не более 10 сек.
         sleep(10000) -- пауза 10 сек. (ожидание заполнения таблиц)
      end -- выход из условия: если терминал на связи не более 10 сек.
Но данные могут загрузиться, как быстрее, так и позже.
Может у кого есть более подходящее решение?
Запаздывание OnOrder, Телега неумолимо бежит впереди лошади
 
Здравствуйте!
1. Заявка исполняется.
2. В массиве таблицы эта заявка уже со статусом Исполнена.
3. После приходит коллбек.
Разве коллбек не имеет приоритет по скорости?
Как запретить QUIK добавлять инструменты самостоятельно?, Кто-то подкидывает в Текущие торги торговые инструменты по своему усмотрению, как бездомных котят..
 
История такая. Крик души. Перешёл в QUIK 8.9 от брокера Открытие. Сначала всё нравилось, кроме двух гигабайт в оперативке. Но через некоторое время стал замечать, что с каждой новой сессией, в моём QUIK, в Текущих торгах стали появляться какие-то экзотические торговые инструменты  :shock:. Эти инструменты, за свой небольшой, 15-летний опыт, я ни разу не торговал, и, тем более, не добавлял в Текущие торги. Сначала, в список подозреваемых попала кошка, которая могла бессовестно пройтись по клавиатуре. Но, через несколько дней таких добавлений, подозрения с кошки были сняты, а в QUIK уже было самовольно добавлено более сотни инструментов. Так же, мне подкинули OZON, который я чуть-ли не купил по 3600р.
Теперь вопросы.
:?:. Кто виноват (брокер, QUIK или пользователь)?
:?:. И, что делать, как с этим дальше жить?
:!: Заранее благодарю за спасительный ответ!

 
Событие закрытие терминала, OnClose() OnStop(flag)
 
Потребовалось кое-что сделать при событии закрытия терминала.
Но OnClose() и OnStop(flag) не выводит системные сообщения и не выполняет код внутри.
Если отключить qlua.dll в окне «Версии компонентов и плагинов», всё работает по инструкции.
Как можно объяснить такое поведение?
Код
function OnInit() -- Функция вызывается терминалом QUIK перед вызовом функции main().
   is_run = true
   return
end -- выход из функции: OnInit()

function main() -- Функция, реализующая основной поток выполнения в скрипте. Для ее выполнения терминал QUIK создает отдельный поток.
   while is_run do -- повторяющийся цикл, пока is_run = true
      sleep(1000)
   end -- выход из цикла: повторяющийся цикл, пока is_run = true
   return
end -- выход из функции: main()

function OnClose() -- Функция вызывается перед закрытием терминала QUIK и при выгрузке файла qlua.dll.
-- Под выгрузкой файла qlua.dll подразумевается отключение плагина QLua
-- в окне «Версии компонентов и плагинов» (см. п. 1.9. Раздела 1 Руководства
-- пользователя QUIK).
   message("OnCl ose="..tostring(1),1) -- отладка скрипта с выводом системного сообщения
end

function OnStop(flag) -- Функция вызывается терминалом QUIK при остановке скрипта из диалога управления и при закрытии терминала QUIK.
-- При остановке или удалении работающего скрипта Lua из диалога управления «Доступные
-- скрипты» параметр вызова flag принимает значение «1». При закрытии терминала QUIK –
-- значение «2».
   message("OnStop flag="..tostring(flag),1) -- отладка скрипта с выводом системного сообщения
   is_run = false
   return 5000
end
Использование памяти скриптами Lua
 
Интересен алгоритм использования памяти.
Ниже простой скрипт, который при каждом расчёте обращается к функции "getInfoParam". При запуске, в столбце "Память, КБ" = 41.04, и, с каждым новым расчётом, затраченная память увеличивается: 41.04, 41.07, 41.11...
Почему происходит увеличение используемой памяти, ведь данные не накапливаются?
Заметил, что в скриптах память увеличивается до определённого предела (примерно в 2 раза больше, чем при старте) затем сбрасывается до начального размера.
Возможно, где-то уже это обсуждалось, но не нашёл.
Код
function OnInit() -- Функция вызывается терминалом QUIK перед вызовом функции main().
   is_run = true
   return
end -- выход из функции: OnInit()
function main() -- Функция, реализующая основной поток выполнения в скрипте. Для ее выполнения терминал QUIK создает отдельный поток.
   while is_run do -- повторяющийся цикл, пока is_run = true
      ScriptTimeStart = getInfoParam("SERVERTIME") -- Время начала расчёта скрипта
      sleep(1000)
   end -- выход из цикла: повторяющийся цикл, пока is_run = true
   return
end -- выход из функции: main()
function OnStop() -- Функция вызывается терминалом QUIK при остановке скрипта из диалога управления и при закрытии терминала QUIK.
   is_run = false
   return
end
Легенда графика в QUIK 8.6, Легенда графика не отображается при добавлении нового графика на диаграмму.
 
В последних версиях QUIK, легенда графика не отображается, при добавлении нового графика на диаграмму.
Это не удобно, т.к, при добавлении новых графиков, не видно, какие именно индикаторы или графики используются.
Приходится включать отображение легенды для каждой области графика.
Понятно, что сделано это для экономии рабочего пространства, но неэффективно.
Куплю и раздам функции для LUA 5.3 x64, Нужны w32.dll lfs.dll qvcl.dll.
 
Нужно собрать:
w32.dll - для авто логина QUIK https://quik2dde.ru/viewtopic.php?id=78
lfs.dll - для работы с файлами
qvcl.dll - для создания визуального интерфейса https://quik2dde.ru/viewtopic.php?id=26
Эти функции будут и бесплатно, но без пинка, в неизвестном будущем.
Пинок в виде ₽10К (2+2+6) и народная слава гарантируется.
Ссылки на библиотеки выложу.
QPILE всё?, Роботы QPILE больше не будут торговать
 
Учитывая переход на размерность идентификатора заявок и сделок до 19-ти символов, требуется обновления функционала QPILE.
Подробнее: https://forum.quik.ru/forum1/topic5117/
Но делать это никто не будет, т.к. поддержка QPILE приостановлена 6 лет назад.
В итоге, все роботы QPILE  больше не будут торговать.
Таблицы QPILE будут работать как и прежде.
Всё верно?
Брокер Открытие. Не работает MOVE_ORDERS., Ошибка: "Указанная транзакция по указанному классу не найдена: "SPBOPT"."
 
У брокера Открытие перестала работать возможность перестановки заявки одним запросом, через MOVE_ORDERS.
Аналогичная тема уже поднималась: https://smart-lab.ru/blog/590101.php, но брокер, похоже не знает, что это за ругательство "MOVE_ORDERS".
Версия QUIK 7.27.2.1, это последняя версия, на которую позволяет обновиться сервер Открытие.
Я вышел из положения путём отправки двойного запроса: удаления и выставления заявки.
Долблю сервер в два раза больше, за что прошу прощение.
Ещё и мои каждый день стали писать письма, мол моё ПО глючное.
Приходится высылать каждый день функционал с двойным запросом.
Поэтому, пишу письмо Вам, уважаемые разработчики.
Вы, по крайней мере, знаете, что есть такое  "MOVE_ORDERS".

Таблица обезличенных сделок. Открытый интерес., Как получить данные из QPILE?
 
Таблица обезличенных сделок. Открытый интерес.
Как получить данные из QPILE?
В инструкции нет параметра и описания.
Автоматическое поручение на перевод средств между площадками
 
Возможно ли программным методом организовать перевод из фондовой секции на FORTS и обратно?
Количество лотов на валютном рынке
 
Здравствуйте!
В какой таблице можно увидеть количество лотов на валютной секции?
Улучшенный поиск, Пробел, как разделитель запроса
 
Приветствую!
Уважаемые разработчики, не могли бы вы немного улучшить поиск.
Думаю, моя идея будет интересна и не сложна в реализации.
Например, мне нужно найти опцион "SR021500BD8".
Я могу найти "sr0215", увижу все опционы всех серий .
Чтобы более точно указать запрос, нужно ввести полностью код опциона.
Но если введу "sr0215 D8", я могу увидеть только опционы этой серии.
Т.е. пробел может служить разделителем частей запроса, ну, и само самой быть пробелом.
На практике знаю, что штука удобная.
Мерцание таблицы QPILE после повторной загрузки скрипта, Версия QUIK 7.16
 
Мерцание заголовков таблицы QPILE и её содержимого после повторной локальной загрузки любого скрипта в версии QUIK 7.16.
При этом, добавляется первая пустая строка.
Возможно возникало и в предыдущих версиях.
Решается удалением и созданием новой таблицы.
Просьба поправить в последующих версиях.
Аналог функции eval для lua, Аналог функции eval для lua
 
Задача простая.
Есть переменная типа string str = "1+(2*3)".
Нужно из неё получить результат 7.
Есть два способа.
Первый - пишем парсерную функцию eval. Хорошая функция, учитывающая скобки, приоритет операций и т.д. занимает около 1000 строк.
Второй - просто и изящно передаём строку в назначение переменной, например res = 1+(2*3), будет равен 7.
Код
function calculateString(str) {
  return (new Function('return ' + str))();
}
Это пример для JavaScript. Где-то видел аналогичный для LUA, но не могу найти.
Помогите с решением задачки.  :what:
Неверный код клиента в MOVE_ORDERS, Ошибка Неверный код клиента при вызове транзакции перестановки заявки FORTS
 
Приветствую!
Появилась ошибка "Неверный код клиента" при вызове транзакции перестановки заявки FORTS.
При этом, заявка выставляется и снимается без проблем с аналогичным массивом.
Проблема возникла у брокера Открытие, при использовании Единого брокерского счёта и субсчетов.
В других вариантах у этого же брокера ошибка не наблюдается.
Перерисовка индикатора из кода, Перезапуск OnCalculate()
 
Здравствуйте!
Имеется индикатор, использующий данные графика "А" через функцию getCandlesByIndex().
Каждое утро на сервере происходит перезаказ данных. (Можно эмулировать: Заказ данных - Перезакать данные...)
График "А" ещё не получен от сервера, а индикатор уже производит расчёт.
Т.к. данных графика "А" нет, индикатор не может быть рассчитан.

Решается входом в "Редактирование настроек графика" и нажатием "Применить" или "Ок". В этом случае, происходит перезапуск OnCalculate() и индикатор перерисовывается.

Как сделать перезапуск OnCalculate() или есть другое решение?

Лишний вызов OnCalculate, Как обойти?
 
Здравствуйте!
В QUIK версий 7 и выше индикаторы (функция OnCalculate) рассчитываются
по 2 раза при первой загрузке и при изменении параметров. Причём, при изменении
параметров рассчитываются по 2 раза ВСЕ ИНДИКАТОРЫ НА ВСЕХ ДИАГРАММАХ ОКНА (это сильно тормозит систему). При
переключении таймфрейма, индикаторы рассчитываются 1 раз, как должно быть.
Пожелание по исправлению проблемы зарегистрировано многократно.
Может есть какой-то способ обойти лишний вызов в коде индикатора?
Спасибо!
Перенос заявки исполненой стоп-заявки, Заявка, выставленная стоп-заявкой не переносится.
 
Здравствуйте!
Стоп-заявка исполняется, выставляется заявка без переноса.
Как сделать заявку с переносом?
Можно ли как-то в таблице заявок определить переносится ли заявка?
Спасибо!
Функция NumberToRGB(number), Функция преобразовывает одно число цвета в компоненты RGB (red, green, blue)
 
Хотел раскрасить метку из Settings.line[1]["Color"]. Но функции, как получить RGB из числа не нашёл. Нужна такая функция или другое решение.
Заранее спасибо!
Событие изменения файла в LUA
 
Здравствуйте!
Как лучше обрабатывать событие изменения файла в LUA?
Контроль размера файла не подходит.
Контроль даты и времени изменения файла не нашёл.
Спасибо!
Управление таблицей LUA, Вопросы и пожелания.
 
Здравствуйте!
1. Запускаю скрипт, создаётся таблица QLUA, сохраняю координаты окна таблицы, перехожу на другую вкладку, перезапускаю QUIK, таблица появляется на том же месте, НО НА ТЕКУЩЕЙ ВКЛАДКЕ, А НЕ НА ТОЙ, ГДЕ ОНА БЫЛА ОТКРЫТА. Есть ли возможность "запомнить" вкладку?

2. Есть ли возможность задать свою иконку в верхнем левом углу?


3. Очень не хватает возможностей, которые имели место в QPILE таблицах.

Ниже приведен список действий, которые не поддерживаются для таблиц, созданных на языке Lua:
 
таблицы не сохраняются в файл конфигурации (решилась бы проблема сохранения вкладок);
отсутствует диалог редактирования таблицы;
отсутствует контекстное меню таблицы (кроме пункта «Переместить на закладку»);
не создается копия таблицы;
не задается по умолчанию заголовок окна таблицы;
отсутствует экспорт данных из таблицы (особенно важен DDE экспорт, т.к. функциями DDE LUA пользоваться непривычно и неудобно);
недоступно управление «горячими клавишами».
Спасибо!
Cимвол процента в паттерне LUA
 
Задача найти и заменить "%" на "".
Редакторы для QLUA Notepad++ vs SciTe
 
Какой редактор лучше?
Поделитесь опытом.
Подсветка синтаксиса QLua для Notepad++
 
В Notepad++ есть синтаксис Lua.
Может добавили QLua?
Заранее спасибо!
Комбинированный список и поля ввода в таблицах QLUA, Хотелось бы...
 
Доброго времени суток!
Хотелось бы, когда-нибудь, в будущем, увидеть возможность создания всплывающего списка (Combo Box) и полей ввода в таблице QLUA.
Это нужно для удобства настройки параметров скриптов. Открывать отдельную программу для настройки, да ещё и копировать коды бумаг, классов и т.п. весьма не удобно.
На данный момент придумал привязку роботов к графику. В ТТТ меняем инструмент, и график привязанный якорем к ТТТ. Данные Кода бумаги беру из легенды. Правда, работает только на фортс, для остальных групп вместо кода бумаги, краткое название.
Может подскажите, как удобнее настраивать скрипты?
Внимание клиентам «Открытие Брокер»!, Пожелание единых стандартов.
 
Отсутствие единых стандартов у брокеров и отсутствие стремления их поддерживать не есть хорошо. От себя могу только пожелать придерживаться единых стандартов.

Например, сегодня брокер «Открытие Брокер» изменит параметр «Фирма» на FORTS, с «SPBFUT» на «MC0139600000». Это означает, что роботы, которые ведут свой учёт, потеряют свои позиции. Это может привести к исполнению лишних сделок. Например, робот потеряет свою прежнюю позицию и откроет новую.

"Уважаемый клиент!
Уведомляем Вас о том, что с 29 марта 2016г. «Открытие Брокер» изменит параметр «Фирма», транслируемый в ИТС QUIK с «SPBFUT» на «MC0139600000». Изменения касаются только рынка FORTS.
Просим Вас учитывать эту информацию при планировании торговых операций. "
Минимальная / максимальная возможная цена акций
 
Как узнать минимальную / максимальную возможную цену акций программным способом?
Парсить сообщение нет желания.
Заранее, спасибо!

Перекрестие с информацией, Прошу добавить в ближайшие 50 лет
 
:idea: Прошу добавить в ближайшие 50 лет возможность отображения информации на перекрестии, как на скриншоте ниже. Очень удобно отмерять расстояния на графике. Например, увидеть ширину канала в цене или длину тренда в количестве свечей. Ещё хотелось бы добавить расстояние цены в %, в MetaTrader эту возможность не добавили.
Заранее, спасибо!

Загрузка описаний скриптов из файла
 
Загрузка описаний скриптов из файла запоминает путь к последнему открытому скрипту. - Это хорошо.
Код бумаги из Краткого названия бумаги, Можно ли получить Код бумаги из Краткого названия бумаги?
 
Можно ли получить Код бумаги из Краткого названия бумаги?
Например, знаем краткое название "ЛУКОЙЛ".
Нам нужно узнать код бумаги при помощи функции QPILE.
Срок действия лимитированной заявки, Переносить заявку через вечерний клиринг
 
В ручном режиме в окне "Ввод заявки" мы можем поставить галочку "Переносить заявку".
Как задать транзакцию?
Всем спасибо!  :smile:
Индикатор для QUIK «История счёта», Индикатор предназначен для отображения на графике истории счёта
 
Доброго времени суток!  :smile:  
Запрограммировал, на мой взгляд, вполне полезный индикатор! Презентую!


Страница программы: http://pmntrade.ru/indikator_account_history.html
Индикатор предназначен для отображения на графике истории счёта, свободных средств, гарантийного обеспечения, а также пользовательских исторических данных.

- Возможность отображения данных: истории счёта, свободных средств, гарантийного обеспечения, пользовательских исторических данных
- Возможность отображения истории счёта для счетов всех типов: акций, фьючерсов, валют
- Возможность отображения в окне индикатора всех данных или выборочных
- Возможность отображения на таймфреймах: М1, М2, М3, М4, М5, М6, М10, М15, М20, М30, H1, H2, H4, D1, W1, MN1
- Возможность накопления данных без ограничений
- Возможность самостоятельного редактирования данных
- Возможность изменение частоты сохранения данных
- Простота использования
- Открытый код с описанием всех функций вплоть до каждой строки

Программы PMN Trade, Список моих программ созданных с 2007-го года.
 
Это первое сообщение на новом форуме. Почти год как-то руки не доходили зарегистрироваться.
Смотрю, смайлики появились. Веселее стало.  :smile:  
Выкладываю список своих программ, написанных почти за 10 лет. Может кому пригодится...
Модераторам просьба не удалять тему. Вроде, всё по теме и во благо Квику.
Понеслась...
Утилита "Экспорт котировок из QUIK"
Утилита для QUIK "История позиций" рекомендую всем!
Утилита для QUIK "История сделок"
Утилита для QUIK "Статистика"
Функции QPILE для QUIK
     Утилита для QUIK "Автозапуск"
     Утилита для QUIK "Ассистент позиций"
Утилита для QUIK "Дубликатор сделок MT4-QUIK"
     Утилита для QUIK "Настройка портфелей"
Утилита для QUIK "Робот Канал цены"
Утилита для QUIK "Тестер Канал цены"
Утилита для QUIK "Робот Скальпер"
Утилита для QUIK "Робот Канал цены для опционов"
     Утилита для QUIK "Дивиденды"
Утилита для QUIK "Робот Закрытие свечи"
Утилита для QUIK "Индикатор Арбитраж"
Утилита для QUIK "Робот Арбитраж"
Утилита для QUIK "Робот Сетка"
Утилита для QUIK "Дубликатор сделок QUIK-QUIK"
Утилита для QUIK "Робот Сетка Д"
Утилита для QUIK "Робот Мувинг"
Утилита для QUIK "Дубликатор заявок QUIK-QUIK"
Утилита для QUIK "Индикатор Moving Average Uni"
Утилита для QUIK "Индикатор Price Channel Profit"
Утилита для QUIK "Экспорт последней котировки""
Страницы: 1
Наверх