Как с помощью кода открыть график и отформатировать его по шаблону?, Как с помощью кода открыть график и отформатировать его по шаблону?
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 13:41:07
что мешает Вам самим написать аналоги стандартных индикаторов на qlua и использовать получившиеся функции к имеющимся у вас источникам данных? вам даже не придётся открывать для этого графики и строить индикаторы.
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 13:36:09
какая существует очередность при вызове колбеков и обработки user-кода (пользовательских скриптов)
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 13:33:48
к пример: OnAllTrades. Как вы забиндили у себя этот коллбек? как он у вас вызывается, в каком цикле, как работает/приостанавливается работа основного скрипта пользователя. если можно, как указал выше - напишите в "псевдокоде".
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 13:24:39
Михаил, не будем разводить тут "писанину" на 100 страниц - просто приведите если не затруднит в псевдо-коде" тот кусочек кода, который отвечает у вас за вызов и работу коллбеков. остальное, попытаюсь "додумать" сам...
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 13:21:22
но ведь вы же как-то периодических вызываете с помощью своих колбеков функции из user-кода?
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 13:15:08
Цитата
Серж пишет: при обращении к x, произойдет блокировка, изменение данных и разблокировка.
значит ли это, что Вы в qlua переопределили стандартные макросы lua_lock/lua_unlock с пустышек на критические секции или, что/то в этом духе? и если да - то и нам можно теперь ими пользоваться?
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 13:11:31
я просто пока не могу понять, как скрипт прерывается при приходе очередного колбека (без всяких майнов и прочего). вот и всё. если у вас нет ответа на мой - я постараюсь найти его сам. но это очень прискорбно, что я не могу найти ответа на такой, казалось бы простой вопрос тут.
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 13:06:49
имеется ввиду не весь скрипт, а строчка из него, конечно
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 13:00:46
ну замечательно...
попытаюсь "ответить" за вас: обычно, из примеров кода "из интернетов" - делают, что-то такое:
Код
beginthread
while script1.executed
doscript.1()
end
while script2.executed
doscript.2()
end
while script3.executed
doscript.3()
end
endthread
doscript.N()
{
if FOnParam then
do
pcall(OnParam,...)
continueScript()
end
else
runScript()
end
}
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 12:41:22
подозреваю, что возможно у коллбеков своё отличное от другой части скрипта состояние (дочернее). а с вашей стороны уже идёт в qlua учитывание всего этого (мы сейчас не про синхронизацию, про само переключение)
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 12:38:33
то есть, вопрос, по сути, можно развернуть так: есть петля в теле скрипта (без майн), есть коллбеки. на время коллбеков петля в скрипте прерывается и идёт обработка коллбека. как?
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 12:36:04
в рамках реализации вызова require из основного тела скрипта (не из майн) - всё работает в одном потоке.
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 12:34:40
ну вот, опять main. я же говорю, что колбеки и петля в библиотеки работают независимо и псевдопараллельно. вопрос: как?
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 12:19:55
я сейчас про майн вообще молчу. с пётлёй в библиотеке скрипт не останавливается и без всякого майна.
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 12:18:14
вы не ответили.
как у вас происходит/реализовано программно прерывание работы скрипта на время обработки кода из коллбека?
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 12:10:37
Михаил, я уже объяснил вполне доступно: есть стандартный message loop в библиотеке, есть код в коллбеках - и то и то вполне себе параллельно работают. как? напрашивается ответ, что на время прихода коллбеках идёт переключение работы кода на них, а потом возобновление работы кода из message loop библиотеки. и причём, без потоков и корутин.
насчёт вариантов реализации - то тут не особо много вариантов. если только не делать на стороне квика wathchdog по предельному времени работы колбека.
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 11:57:11
на самом деле, как Вы наверно поняли - я про vclua. там есть message loop, есть одна "мега"-оконная функция, которая ретранслирует по надобности сообщения другим контролам. вот и интересует механизм прерывания этой петли на время прихода колбека.
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 11:54:29
в) как происходит/реализован механизм переключения между прерыванием работы кода из подключенной библиотеки на момент прихода коллбека?
вопрос по коллбекам, к разработчикам (ONLY)
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 11:40:26
Такая ситуация: 1. имеем некую внешнюю C-библиотеку подключенную через "require". В ней создаётся объект и в "вечном" цикле идёт работа с его свойствами/методами. 2. в основном скрипте есть коллбеки в которых идёт своя работа 3. также, в основном скрипте есть код, который не находится в коллбеках и в "майне". --------------------- а теперь, вопросы: а)правильно ли я понимаю порядок выполнения этой программы: Сначала выполняется п.3, потом, п.1. если есть/приходит колбек то, выполнение п.1 приостанавливается на время обработки коллбека и далее возобновляется? б) если сделать "вечный" цикл в одном из коллбеков - то, работа "другого вечного цикла в библиотеке" приостановится на неопределённое время?
--------------- вопросы на самом деле - не глупые, но просто требуют окончательного уточнения
Неполное отображение параметров окна, Неполное отображение окна параметров на графике
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 09:38:56
а потом для другой программы опять лезть в реестр?
Неполное отображение параметров окна, Неполное отображение окна параметров на графике
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 08:01:35
p.s. вот у меня экран: 1920x1080, спрашивается, как я его увеличу на 125%? Он у меня и так на пределе.
sendTransaction
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 07:52:38
флуд
Неполное отображение параметров окна, Неполное отображение окна параметров на графике
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 07:12:41
ну в других же программах нет такого?
Неполное отображение параметров окна, Неполное отображение окна параметров на графике
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 06:18:50
у них этот косяк - давно. можно попробовать по менять разрешение экрана.
Неполное отображение параметров окна, Неполное отображение окна параметров на графике
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 06:17:28
если окно настроек диаграммы - то, никак.
Как отобразить все графики в quik?, Можно ли как то автоматически отобразить графики всех акций в квике? или только руками каждый график добавлять?
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 05:38:01
нет, только руками.
Как с помощью кода открыть график и отформатировать его по шаблону?, Как с помощью кода открыть график и отформатировать его по шаблону?
Пользователь
Сообщений: Регистрация: 01.02.2015
19.02.2015 05:37:16
ни тупайл ни qlua на данный момент САМИ не открывают графики и не строят. Только таблицы. На qlua можно только задать функцию обработки расчёта свечек (что в принципе и делает OnCalculate в скриптах индикатора). Разработчикам уже не раз говорили на полную убогость данной ситуации. То, что Вы просите - реализовано у них в платном функционале системы серверных плагинов. Но разработчики пока не открыли для нас этот интерфейс, т.к. они сами пишут и продают плагины.
Библиотека QCtrls.dll
Пользователь
Сообщений: Регистрация: 01.02.2015
17.02.2015 13:32:08
полагаю, всем нас...ть
Шрифт всего уменьшить можно?
Пользователь
Сообщений: Регистрация: 01.02.2015
17.02.2015 12:30:02
если память не изменяет - в Windows для этого есть комбинация клавиш: Ctrl+"колесо мыши"
Библиотека QCtrls.dll
Пользователь
Сообщений: Регистрация: 01.02.2015
17.02.2015 12:21:41
немного дополним:
Код
QScript = class(QObject or QPlugin)
пока думаю над этим
...
class(QException)//взаимодействет, по крайней мере с функцией pcall LUAVM
...
end;
Библиотека QCtrls.dll
Пользователь
Сообщений: Регистрация: 01.02.2015
17.02.2015 12:10:43
Цитата
sam063rus пишет: хендл окна вкладок квика, относительно которого мы будем отталкиваться, строя сами окна-контролы.
а активная вкладка в данном случае - будет аналогом для нас "QForm" - контейнера для наших контролов
Библиотека QCtrls.dll
Пользователь
Сообщений: Регистрация: 01.02.2015
17.02.2015 11:59:05
Цитата
Michael Bulychev пишет: Тот пример что Вы прислали - это просто пример реализации наследования от базового класса. Для этого надо сначала определить сам базовый класс, о чем я и просил Вас. Напишите в свободной форме что вы хотите получить.
Например, так:
Код
QControls = class(TComponent) //что такое tcomponent - см. в Delphi VCL
и пошло
...
и поехало
...
end;
Отсюда, имеем: QControls - базовый класс для всех визуальных контролов, которые нам так сильно нужны. Либо, давайте нам хендл окна вкладок квика, относительно которого мы будем отталкиваться, строя сами окна-контролы. Далее, каждый скрипт имеет базовым: класс QScript
Код
QScript = class(QObject or QPlugin)
пока думаю над этим
...
end;
Сейчас же, Вы заставляете нас, по сути, писать свою реализацию vcl (не путать с qvclua или vclua), хотя просто могли сделать её общедоступной. Чтоб нам стабильно использовать ту "vclua", которая гуляет в интернете - надо переписать дельфовую или лазаровскую vcl (lcl). Что весьма нетривиально, т.к. придётся отказываться от многих корневых классов и переписывать их, т.к. они заточены на взаимодействие с приложением и от него они отталкиваются, а не с плагином.
модуль "Стратегия"
Пользователь
Сообщений: Регистрация: 01.02.2015
17.02.2015 11:40:02
попробуйте взять qchart.dll из той версии с которой всё работало из папки "backup" квика.
модуль "Стратегия"
Пользователь
Сообщений: Регистрация: 01.02.2015
17.02.2015 11:37:31
могу ошибаться, конечно но, возможно в таком случае, модуль "стратегия" слишком старый для квикчарта либо, - явный косяк разработчиков.
Облигации в таблице "Состояние счёта"
Пользователь
Сообщений: Регистрация: 01.02.2015
17.02.2015 11:34:53
в следующий раз - используйте спойлер для длинных (по высоте, да и не только) сообщений. его для этого и придумали.
sendTransaction
Пользователь
Сообщений: Регистрация: 01.02.2015
17.02.2015 11:32:28
он опять в лирику вдарился - так что, это бывает:)))
модуль "Стратегия"
Пользователь
Сообщений: Регистрация: 01.02.2015
17.02.2015 11:29:21
а плагин qchart.dll включен? и если "да" то, какая версия. qchart.dll отвечает за рисование графиков в квике.
Elder's force index, Formula
Пользователь
Сообщений: Регистрация: 01.02.2015
17.02.2015 06:32:26
Вычисление:
Цитата
EFIN = MA(i, FI), где:
FI = (1 - PRICEn-1 / PRICEn) * VOLUMEn,
MA (i, FI) – скользящее среднее от FI с периодом i,
PRICEn – значение цены n-ого интервала,
VOLUMEn – значение объема сделок n-ого интервала.
Параметры настройки:
«Количество периодов» - изменение количества периодов i усреднения МА, по умолчанию = 13.
«Метод» - метод расчета МА (Simple, Exponential, Vol.Adjusted, Smoothed), по умолчанию используется метод «Exponential»,
«Поле цены» - используемое значение цены интервала PRICE (Open, High, Low, Close, Median, Typical), по умолчанию принимается «Close».
не добавляются строки в таблицу
Пользователь
Сообщений: Регистрация: 01.02.2015
15.02.2015 18:39:04
это не пасхалка - просто сейчас интеграция lua в quik находится на зачаточном уровне - поэтому даже сами разработчики далеко не всё знают.
касаемо всего остального и многопоточной работы и Ваших выводов по этой теме, могу только сказать, что Вы похоже совсем не читали мной приведённый выше форум: quik2dde.ru Там, как-раз многое детально изучено и выявлено того, чего до сих-пор нет в документации.
Можно ли как-то обновиться до lua 5.3?, Текущая версия lua 5.1 вышла 9 лет назад
Пользователь
Сообщений: Регистрация: 01.02.2015
15.02.2015 18:30:35
в QLUA используется 5.1.5. Придётся и её тогда обновлять:))
То, что она вышла 9 лет назад не делает её старой.
Список доступных для транзакций инструментов, получение списка инструментов для совершения транзакций с учетом различных аккаунтов у одного и того же брокера.
Пользователь
Сообщений: Регистрация: 01.02.2015
15.02.2015 13:06:55
да без проблем. удачи:)
Список доступных для транзакций инструментов, получение списка инструментов для совершения транзакций с учетом различных аккаунтов у одного и того же брокера.
об этом можно узнать из таблиц текущих параметров.
остальные функции доступны в библиотеке QL.lua. Информация о ней, тут:
------------------------------------------------------------------------- Вам в следующий раз нужно более конкретно задавать вопрос, а то, получается аж целую ветку на это потратили:)))))))
не добавляются строки в таблицу
Пользователь
Сообщений: Регистрация: 01.02.2015
15.02.2015 12:51:28
если бы разработчики писали, да ещё составили бы нормальный хелп то и форумаэтого не было б.
Список доступных для транзакций инструментов, получение списка инструментов для совершения транзакций с учетом различных аккаунтов у одного и того же брокера.
Пользователь
Сообщений: Регистрация: 01.02.2015
15.02.2015 12:47:38
если вы про то, что нужно узнать какие бумаги доступны для лонга/шорта или какие в данный момент торгуются (по которым открыта торговая сессия) - то, это всё можно узнать с помощью той же QLUA и стандартных таблиц квика.
Список доступных для транзакций инструментов, получение списка инструментов для совершения транзакций с учетом различных аккаунтов у одного и того же брокера.
Пользователь
Сообщений: Регистрация: 01.02.2015
15.02.2015 12:44:35
ну вы же сами говорите, что нужен статический список - ну так составьте его сами и для каждого счёта сделайте, так называемый класс, описывающий его поведение (доступность тех или иных бумаг для транзакций). информацию о доступности можно взять на основании приложений к брокерскому договору по этим счетам и фильтровать её раз в день или после каждого клиринга.
Список доступных для транзакций инструментов, получение списка инструментов для совершения транзакций с учетом различных аккаунтов у одного и того же брокера.
Пользователь
Сообщений: Регистрация: 01.02.2015
15.02.2015 12:20:53
Цитата
Albert Eritsyan пишет: тобы в случае исполнения сигала о входе в позицию с нескольких счетов клиента скрипт видел что в принципе не возможно с конкретного аккаутна и не выставлял по ним заведомо не выполнимые ордера и не тратил время на ожидание ответа и анализ причин отказа,
я думаю, самый правильный и действенный вариант в данном случае - это client-side. т.е. пишите на QLUA не большой пре-трейд модуль в котором: при поступлении сигнала на открытие позиции проверяете валидность этой транзакции следующим образом: для каждого счёта составляете доступный перечень классов и инструментов, а также перечень доступных операций. Этим Вы отсеете на собственной стороне часть транзакций, остаётся 2 пункта: брокер и биржа. брокер, в основном, отклоняет по риск-параметрам, редко когда по инструментам и классам. тут. как уже было сказано, никто не будет переписывать квик или ставить/писать/заказывать на брокерский сервер новый модуль. Соизмерять свои риски с теми, которые указаны в спецификациях к инструментам. Если к примеру, идёт 3 раза подряд отклонение транзакции и риск-параметры в норме то, можно просто опять же client-side сделать чёрный список (таблицу например) в которую добавлять эти классы/бумаги. Очень сильно на это похожее - существует в Wealth-Lab. Остаётся биржа: биржа уведомляет остальных участников двумя способами: через свой сайт и в любой другой но, письменной форме (как правило после форс-мажора). Список классов и инструментов насколько мне известно (могу ошибаться, конечно) не обновляется на бирже чаще - чем он обновляется в квике. так что с этой стороны - лишнего, ничего городить не надо.
Список доступных для транзакций инструментов, получение списка инструментов для совершения транзакций с учетом различных аккаунтов у одного и того же брокера.
Пользователь
Сообщений: Регистрация: 01.02.2015
15.02.2015 11:58:20
не хочу повторяться но, такой момент: отказ на транзакцию может зависеть по трём причинам: 1. на основе данных о клиенте, которые меняются динамически. 2. на основе данных полученных от биржи, где параметры тоже динамические. 3. на основании риск-параметров брокера (или других параметров)
вопрос: кто и главное, как это всё дело будет учитывать? (вообще, это по сути повторение поста #17). Можно ли это сделать? можно, НО! не бесплатно. Есть ли от этого выгода? вопрос - спорный. если это всё надо только лишь для увеличения быстродействия то, существуют и другие методы повысить его.
И мне, кстати, толком не ответили, если даже внедрить такую систему: Что будет, если в один момент прошла транзакция на основании информации из старых списков, а в следующий момент списки изменились и оказалось, что новая связанная транзакция уже невозможна исходя из изменившихся списков?