OnCalculate. Двойной проход при изменении свойств индикатора
Пользователь
Сообщений: Регистрация: 30.01.2015
19.09.2016 13:37:19
А также рассмотрите вопрос пересчета всех индикаторов при удалении одного из них, как это делается при добавлении.
Возможно, что между индикаторами имеются зависимости.
Пасхалочка для Алексея Иванникова:
Как сделать цикл по всем меткам на графике в LUA
Пользователь
Сообщений: Регистрация: 30.01.2015
17.09.2016 12:49:22
Для сохранения информации между сеансами необходимо использовать файлы.
Пасхалочка для Алексея Иванникова:
Вид графика = Свечи.
Пользователь
Сообщений: Регистрация: 30.01.2015
15.09.2016 15:03:28
Сергей, а откройте страшный секрет. Зачем в документации описаны константы TYPE_CANDLE, если свечи строить нельзя?
На фоне общей скупости и убогости документции по lua это .... неожиданно... Или ждать чуда?
Пасхалочка для Алексея Иванникова:
Утечка памяти
Пользователь
Сообщений: Регистрация: 30.01.2015
15.09.2016 00:27:01
Создайте ярляк для info.exe и укажате в нем путь к рабочей папке. Она и будет каталогом временных файлов.
Пасхалочка для Алексея Иванникова:
DDE автостарт на C#
Пользователь
Сообщений: Регистрация: 30.01.2015
11.09.2016 16:54:12
Здравствуйте.
Я хоть и не swerg, но посоветую вам пользоваться только документированными возможностями. Использование любых других фич, особенностей и трюков ведет к написанию нестабильно работающих программ, а также к полной потере всех наработок с выходом новых версий терминала, которые появляются довольно часто.
Если у вас есть лишнее свободное время, лучше его потратить на общение с близкими вам людьми.
Пасхалочка для Алексея Иванникова:
Доставучая проблема
Пользователь
Сообщений: Регистрация: 30.01.2015
07.09.2016 07:49:02
Цитата
Роман написал: Ещё раз для особо впечатлительных, LUA и программирование здесь вообще не причём, хоть NULL на вечность делите. Я говорю о том что при при любых обстоятельствах, скрипт должен запускаться после запуска Квика? если оператор нажал на кнопку "пуск" и пока не будет нажата кнопка "стоп", а не когда программе вздумается! Что здесь не понятного?
Вот странный народ. Кроме того, что не в состоянии написать программу без ошибок, так еще и не в состоянии внимательно прочесть ответ на свой вопрос. И, ничего не поняв, переходит на визг.
Думаю, что если бы вы сначала подумали, потом разобрались, а еще потом поэкспериментировали с делением math.huge на nil внутри функции do_normal_script(), то впечатлились бы, насколько просто решается ваша проблема.
Lua uses a virtual stack to pass values to and from C. Это дела С API.
Пасхалочка для Алексея Иванникова:
Размер стека
Пользователь
Сообщений: Регистрация: 30.01.2015
31.08.2016 20:36:31
Оказывается, Lua содержит оптимизатор хвостовой рекурсии, так что при некотором умственном напряжении в вопросе рекурсии можно найти выход.
Пасхалочка для Алексея Иванникова:
Размер стека
Пользователь
Сообщений: Регистрация: 30.01.2015
31.08.2016 20:22:21
Николай, в моем понимании, апишный стек и стек среды lua - это вещи разные.
lua_checkstack изменяет размер области обмена в случае вызова апишных функций и только. На исполнение натив луа кода эта функция никак не влияет.
Меня же интересует, в частности, вложенность натив луа функций, в том числе рекурсии. Рекурсия в 20 уровней - это слишком грустно.
Если я ошибаюсь в своих воззрениях - буду рад ошибиться.
Пасхалочка для Алексея Иванникова:
Размер стека
Пользователь
Сообщений: Регистрация: 30.01.2015
31.08.2016 17:51:45
Ув. разработчики.
Каков размер стека в реализации qlua?
Можете ли предложить способы увеличения размера стека ?
Спасибо.
Пасхалочка для Алексея Иванникова:
Значение констант INTERVAL_NN
Пользователь
Сообщений: Регистрация: 30.01.2015
26.08.2016 16:02:22
Цитата
timber написал: Хочу написать на Си код вызова CreateDataSource. Скажите, какие числовые значения принимает параметр interval?
message(tostring(INTERVAL_M1))
Пасхалочка для Алексея Иванникова:
Функция OnStop()
Пользователь
Сообщений: Регистрация: 30.01.2015
21.08.2016 19:21:24
Нет разницы.
Пасхалочка для Алексея Иванникова:
Справка по AddLabel
Пользователь
Сообщений: Регистрация: 30.01.2015
19.08.2016 15:22:38
Логарифмической шкала по цене означает следующее:
Первый сантиметр снизу вверх - это цена 10, второй сантиметр это 100, третий - 1000.
Конечно, возможны варианты ,зависящие от реализации
Пасхалочка для Алексея Иванникова:
ZeroBrain Studio
Пользователь
Сообщений: Регистрация: 30.01.2015
17.08.2016 20:28:51
Есть встроенная функция подбора похожих слов, уже имеющихся в файле. Включается в сеттингах. Также нотепад++ куча плагинов. Среди них есть autocomplete. Я им не пользуюсь - баловство на мой взгляд.
Пасхалочка для Алексея Иванникова:
ZeroBrain Studio
Пользователь
Сообщений: Регистрация: 30.01.2015
17.08.2016 15:08:56
Нотепад ++ клавиша F5, по которой вызываете заранее созданный необходимый вам для компиляции\сборки командный файл
Пасхалочка для Алексея Иванникова:
Тест наличия идентификатора графика
Пользователь
Сообщений: Регистрация: 30.01.2015
17.08.2016 10:52:00
Кв. разработчики!
Каким образом можно отличить незаданный идентификатор графика от графика, на котором нет счечей?
не смог придумать вариант . GetLinesCunt при неправильном идентификаторе выдает 0, по другим функциям тоже не придумалось ничего полезного.
Спасибо.
Пасхалочка для Алексея Иванникова:
Сделать стопы по заявкам в стакане для forts (не только по сделкам), т.к. в низколиквидных фьючерсах заявки в стакане могут двигаться без сделок
Пользователь
Сообщений: Регистрация: 30.01.2015
17.08.2016 07:55:56
Нет, не поделюсь.
Кроме того, что у меня нет готового, еще и размер такой "заготовки" содержит не одну сотню ( тысячу ) строк, если идти по варианту "правильно".
Пасхалочка для Алексея Иванникова:
Звуковые оповещения, как выставить звуковые оповещения
Пользователь
Сообщений: Регистрация: 30.01.2015
16.08.2016 20:18:42
Пасхалочка для Алексея Иванникова:
Сделать стопы по заявкам в стакане для forts (не только по сделкам), т.к. в низколиквидных фьючерсах заявки в стакане могут двигаться без сделок
Пользователь
Сообщений: Регистрация: 30.01.2015
16.08.2016 20:15:50
Это задача для lua. Ее можно решить просто, а при определённой ловкости можно даже правильно ).
Пасхалочка для Алексея Иванникова:
Недостаточно лицензий!
Пользователь
Сообщений: Регистрация: 30.01.2015
11.08.2016 16:46:26
Брокер у вас очень жадный. За лицензии арке не платит. Делайте выводы.
Пасхалочка для Алексея Иванникова:
Как получить аттрибуты файла?
Пользователь
Сообщений: Регистрация: 30.01.2015
05.08.2016 19:36:53
google:lua file system
Пасхалочка для Алексея Иванникова:
CreateDataSource, не грузятся данные при формир. через CreateDataSource
Пользователь
Сообщений: Регистрация: 30.01.2015
01.08.2016 19:31:32
Не всегда это верно. Пример тому - перезаказ данных.
Пасхалочка для Алексея Иванникова:
Cumulative delta
Пользователь
Сообщений: Регистрация: 30.01.2015
01.08.2016 08:51:27
Пасхалочка для Алексея Иванникова:
Вызов внешних функций через Dispatch-интерфейс, QLua vs Lua 5.1
Пользователь
Сообщений: Регистрация: 30.01.2015
28.07.2016 16:59:37
Пасхалочка для Алексея Иванникова:
Пользовательское поле в таблице текущих торгов
Пользователь
Сообщений: Регистрация: 30.01.2015
23.07.2016 22:32:45
Здравствуйте.
Да, я пишу под заказ.
Форум- не лучшее место для обсуждения подробностей.
Если требуется моя помощь - мой скайп mikemsk. Звоните.
Пасхалочка для Алексея Иванникова:
Пользовательское поле в таблице текущих торгов
Пользователь
Сообщений: Регистрация: 30.01.2015
23.07.2016 21:13:18
Добавить поле в стандартную таблицу не получится. Можно написать скрипт, который сделает копию таблицы текущих торгов и дополнить ее собственными расчетными полями.
Пасхалочка для Алексея Иванникова:
в каком файле хранятся данные сделок, совершенных за день?
tdm написал: Добрый день, хотелось бы иметь возможность срабатывания стоплосса не по единичному срабатыванию цены, а если цена условия держится какое-то время (до минуты) или сколько-то сделок. Чтобы не было срабатывания по ложному пробою. Возможно ли это сделать?
Только на встроенном языке.
Пасхалочка для Алексея Иванникова:
Cимвол процента в паттерне LUA
Пользователь
Сообщений: Регистрация: 30.01.2015
07.07.2016 13:41:32
print(string.gsub("1%2%%3%%%4%%%%","%%",""))
Пасхалочка для Алексея Иванникова:
Опорные точки граф. инструментов, Вывод значения опорных точек построения трендовых линий и других графических инструментов в таблицу
Пользователь
Сообщений: Регистрация: 30.01.2015
04.07.2016 12:18:01
В статье есть ссылка на видео, которую вы проигнорировали. Вот она:
Пасхалочка для Алексея Иванникова:
Опорные точки граф. инструментов, Вывод значения опорных точек построения трендовых линий и других графических инструментов в таблицу
Пользователь
Сообщений: Регистрация: 30.01.2015
04.07.2016 10:19:15
Вот одна из таких попыток:
Без луа штатное решение вы будете ждать 5 лет. А потом вам станет это не нужно )
Пасхалочка для Алексея Иванникова:
Опорные точки граф. инструментов, Вывод значения опорных точек построения трендовых линий и других графических инструментов в таблицу
Пользователь
Сообщений: Регистрация: 30.01.2015
04.07.2016 09:43:37
Штатно такой возможности нет. Но это можно сделать на lua
Николай Камынин написал: Полагаю, что при смене сессии , все начнется сначала.
C чего Вы так взяли? Как разумно предположить, что всё состояние после гибернации восстановится, как возобновляются все процессы с остановленного места
Тем не менее, это так.
Пасхалочка для Алексея Иванникова:
Вопрос: как получить в переменную значение элемента массива, но чтобы не было связи между этой переменной и массивом
Пользователь
Сообщений: Регистрация: 30.01.2015
26.06.2016 11:14:29
проблемы с логикой - я имел ввиду не у вас лично, а в логику программы.
Трудно дать совет, не зная подробностей.
Можно, например, использовать следующий подход.
завести необходимое количество параллельных массивов-таймсерий. все они синхронизтрованы по номерам свечей.
в первом - котировки инструмента во втором - например рассчитанные индикаторы в третьем - какие-то служебные данные, например накопительные в четвертом - еще что-нибудь, спреды, к примеру
при этом по номеру свечи вы сразу адресуетесь к любым данным, относящимся к этой свече, но при этом не происходит смешения данных.
Если такой подход не удобен для вашей задачи, тогда попробуйте придумать что-то иное, что позволит не портить данные, предназначенные для сохранения.
Возможно, что собирать данные в файл для последующего анализа проще отдельной утилитой.
Пасхалочка для Алексея Иванникова:
Вопрос: как получить в переменную значение элемента массива, но чтобы не было связи между этой переменной и массивом
Пользователь
Сообщений: Регистрация: 30.01.2015
25.06.2016 12:42:59
в простейшем случае (если не определены метаметоды и нет вложенных таблиц), нужно просто скопировать таблицк в таблицу
result = {} for k,v in pairs(arr_test[4]) do result[k] = v end
если есть вложенные таблицы, то их нужно тоже копировать (рекурсивно) если определены метаметоды, то их копирование можно произвести через getmetatable и setmetatable
Однако если у вас возникает такая задача, это означает одно - у вас проблемы с логикой. Копирование таблиц - очень плохой приём.
Пасхалочка для Алексея Иванникова:
Индикатор Jurik Moving Average в Quik, Добавить в Quik индикатор Jurik Moving Average
Пользователь
Сообщений: Регистрация: 30.01.2015
24.06.2016 08:12:52
Цитата
Николай Камынин написал: когда-то давно реализовал этот индикатор в амиброкере. На самом деле, это индикатор заглядывает в будущее и перерисовывается поэтому для исторических данных он красивый, а для прогноза - бесполезный , как и большинство широко рекламируемых , например, ZigZag - который тоже красивый на истории по той же причине что и . ----------------------------------------
Николай.
Чтобы не делать неверные выводы, имеет смысл потратить время и разобраться в вопросе.Вот вам . Попробуйте найти там заглядывание в будущее и перерисовку на истории.
Упомянутый вами также никогда не заглядывает в будущее, хотя перерисовывается на истории.
С ув.
Пасхалочка для Алексея Иванникова:
Индикатор Jurik Moving Average в Quik, Добавить в Quik индикатор Jurik Moving Average
Пользователь
Сообщений: Регистрация: 30.01.2015
23.06.2016 22:19:06
Пасхалочка для Алексея Иванникова:
Экспорт стаканов по DDE, иногда повторяются данные в последовательно переданных стаканах данного инструмента
Пользователь
Сообщений: Регистрация: 30.01.2015
22.06.2016 21:30:01
Видимо )
Но лучше это вопрос задать Сергею Горохову
Пасхалочка для Алексея Иванникова:
Экспорт стаканов по DDE, иногда повторяются данные в последовательно переданных стаканах данного инструмента
Пользователь
Сообщений: Регистрация: 30.01.2015
22.06.2016 19:11:01
Все проще.
Сервер шлет рабочему месту срез стакана каждые N секунд. Анализ содержимого не производится.
Пасхалочка для Алексея Иванникова:
Построение графика по историческим данным из файла.
Пользователь
Сообщений: Регистрация: 30.01.2015
18.06.2016 13:52:10
Цитата
A A написал: Скажите, возможно ли построить график по историческим данным, т.е. данным полученным не с сервера QUIK, а например загруженных из текстового файла. Если да, то как создать окно графика используя Lua?
Здравствуйте. Если это не свечной график, а линия, гистограмма и т.п. - то да, построить можно.
Создать окно графика программно нельзя.
Пасхалочка для Алексея Иванникова:
get
Пользователь
Сообщений: Регистрация: 30.01.2015
15.06.2016 00:56:29
Определитесь на чем вы пишете.
Текст на луа, запускаете как qpile, пишете про портфели ..
Есть проблема с неизвестным (произвольным) порядком обновления индикаторов
Причем тут "индикаторов" когда мы говорим о расчете по заданному числовому ряду?
Вот при чем:
Цитата
Еще такой вопрос - возможно ли на QLUA сделать какой-либо производный расчет от графиков инструментов, и перенести его в график QUIK для визуализации?
В данном месте говорится о возможности вывести произвольный расчет на график. А не о том как сделать этот самый произвольный расчет. Да есть моменты которые требуют внимания при реализации этого расчета и эти моменты зависят от решаемых задач которые известны только автору топика, а не Вам.
Цитата
написал: Поток параметров и функция-индикатор могут менять свои значения не только в текущей (правой) свече, но и на истории. Даже Поток котировок в экстремальных случаях может изменяться в прошедшем времени, не так ли, Сергей?
Нет не так.
Цитата
написал: И тот и иной подходы пригодны лишь для ммм.. "специфических" случаев.
для "специфических" случаев можно много чего придумать. Есть индикаторы которые при изменении одной свечи в источнике должны полностью проводить перерасчет, а есть те которым это не нужно. И Вы углубляетесь в специфику "частного" случая, а не общего как сами же говорили выше.
Цитата
написал: И тут пользователь взял да сменил таймфрейм.
И? Что мешает получить новый таймфрейм? Получить настройки одного индикатора из другого действительно нельзя. Но таймфрейм это не настройка индикатора.
Сергей, вы уж простите меня, но разговаривать нужно на одном языке. Для сверки часов в понятии "частный и общий случай" я отсылаю вас к .
Примеры общих и частных случаев: Все люди - негры. В частном случае (президент США) - это верно, в общем случае неверно Все млекопитающие травоядны. В частном случае (корова) т- верно, в общем - нет По любому индикатору можно построить дугой индикатор средствами qlua. В общем случае неверно, в частном может быть верно.
Теперь о изменении источников для построения индикаторов задним числом. В пишете
--------------- написал: Поток параметров и функция-индикатор могут менять свои значения не только в текущей (правой) свече, но и на истории. Даже Поток котировок в экстремальных случаях может изменяться в прошедшем времени, не так ли, Сергей?
изменение графика истории параметров инструмента задним числом. Вижу это глазами практически каждый день при старте терминала во время торгов. График истории параметра "количество заявок на продажу" мне показывает сначала свечи текущего дня, а через некоторое время свечи предыдущих дней. Брокер Церих.
Изменение котировок задним числом. Пример: тиковый график. Ничто не мешает сделкам, имеющий более ранний таймштам прийти позже сделок, имеющих более поздний таймштамп. Ситуация абсолютно нормальная и допустимая, но крайне редкая.
Итак, во всех трех вариантах возможны изменения источников для построения индикаторов "задним числом". Таким образом, Ваша фраза "Нет не так" нуждается в пересмотре.
В любом случае, спасибо участие в беседе.
Пасхалочка для Алексея Иванникова:
Разделитель разрядов в QTABLE_DOUBLE_TYPE
Пользователь
Сообщений: Регистрация: 30.01.2015
30.05.2016 13:19:12
Пасхалочка для Алексея Иванникова:
Расчет стандартных индикаторов в QLUA
Пользователь
Сообщений: Регистрация: 30.01.2015
30.05.2016 12:40:08
Вы уж меня простите за столь некрасиво оформленное сообщение.
Копипаст с предыдущих сообщений форума прекрасно выглядит в форме подачи сообщения и безвозвратно уродуется при сохранении сообщения.