s_mike@rambler.ru (Все сообщения пользователя)

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

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 26 След.
Получить имя исполняемого скрипта., Возможно?
 
В oninit передается путь к скрипту
www.bot4sale.ru        t.me/bot4sale
Сделайте упрощённый вариант
 
Цитата
Алексей написал:
По моим ощущениям принцип создания Квика такой : "Зачем просто, когда можно сложно". Кому-то может и надо столько таблиц, но кто с форекса пришёл, и кто пользовался, например, терминалами от форекс клуба, (Либритек-менее удобен, Румус- по мне так идеальный вариант) не надо столько наворотов. Сделайте кнопку - "Упрощённый вариант", при нажатии на которую выдет что-то похожее на Румус, Либритек или Метатрейдер (на худой конец). И будет всем счастье. И не надо будет читать инструкцию в 1000 листов, чтоб найти две кнопки "Купит" и "Продать" во всей этой мешанине таблиц и стаканов. Стакан по завершении сделки на столе я лучше увижу :)
Зачем мне эти ПДД, педали, руль и всякая дрянь типа адаптивного круиз контроля? Для тех, кто привык на лошади и телеге - все это лишнее.

Никто такой вариант делать не станет.
www.bot4sale.ru        t.me/bot4sale
Данный инструмент запрещен для операции шорт
 
Цитата
Владимир написал:
Господа разработчики! Что за хрень? Я пытаюсь продать СВОИ акции, они у меня ЕСТЬ, они принесли мне прибыль, которую я собираюсь зафиксировать. Какой, в задницу, может быть "шорт"? Раз пять уже такое случалось, но. как правило, со второй или третьей попытки акции всё-таки удавалось продать. Но на этот раз Квик с упорством носорога зудит: "Данный инструмент запрещен для операции шорт". Это глюк в программе или неизвестный мне доселе способ воровства моих денег?
гении обычно болтливы и рассеянны. Они с упорством носорога считают виноватыми всех, кроме себя. А достаточно просто посмотреть чуть внимательнее и окажется, что акции заблокированы выставленными заявками  
www.bot4sale.ru        t.me/bot4sale
QUIK для ARM
 
Да они с тем, что имеется не могут справиться, а вы им предлагаете ещё один продукт себе на шею повесить.
www.bot4sale.ru        t.me/bot4sale
Индекс формирующегося бара.
 
Цитата
Alexander написал:
Цитата
   s_mike@rambler.ru написал:
 
Цитата
Nikolay  написал:
Так я Вам уже написал:

Текущий бар всегда равен Size
 это неверное утверждение  
Вы хотите сказать, что это до сих пор не исправили и Size считает временные интервалы?
Size() совершенно необязательно возвращает номер последнего формирующегося бара инструмента. Это может быть в случае (например) если на диаграмму нанесены графики разных инструментов. И ещё в нескольких случаях.
www.bot4sale.ru        t.me/bot4sale
Индекс формирующегося бара.
 
Цитата
Nikolay написал:
Так я Вам уже написал:

Текущий бар всегда равен Size
это неверное утверждение  
www.bot4sale.ru        t.me/bot4sale
Звуковой сигнал в интерпретаторе lua.exe, Как сделать сигнал beep при запуске программы с помощью lua.exe
 
Возьмите в архиве http://www.bot4sale.ru/download-categories/2012-06-13-15-10-36/item/md.html библиотеку bot4sale64.dll

// PlaySound(sound_file)
// Returns error code (0 if successful) and string error description

require "bot4sale64"
err = bot4sale64.PlaySound("file.wav")  -- mp3 и все остальное тоже


для луа 5.3
www.bot4sale.ru        t.me/bot4sale
Текстовые пояснения на графике, При смене инструмента текстовые пояснения не меняются.
 
Вы хотите, чтобы дедушка бегал стометровку?

он не может. Он старенький.
www.bot4sale.ru        t.me/bot4sale
4.24 Транзакции. Флаги транзакции., Что это такое?
 
«1» – отправлена с помощью файла импорта;
«512» – отправлена с помощью QPILE;
«32768» – отправлена с помощью Trans2Quik;
«131072» – на продажу;
«262144» – отправлена с помощью LUA;
«524288» – отправлена с помощью API клиентского места;
«1048576» – служебная;
«2097152» – на ввод заявки
www.bot4sale.ru        t.me/bot4sale
В индикаторе можно создать безконечную горизонтальную линию?
 
Легко.

function oncalculate()
return 5
end

нарисует вам линию на уровне 5
www.bot4sale.ru        t.me/bot4sale
запуск из работающего скрипта другого скрипта или скриптов
 
Делайте все ваши скрипты всегда запущенными, которые крутят холостой цикл. По внешнему сигналу от управляющего скрипта они от пустого цикла переходят к полезной работе, по второму сигналу - опять уходят в пустой цикл
www.bot4sale.ru        t.me/bot4sale
Добавить в CreateDataSource():SetUpdateCallback() аргумент, указывающий на DataSource
 
Цитата
swerg написал:
Цитата
Imersio Arrigo написал:
Можно ещё лямбду захватывать.
Я так множественные подписки на инструменты делал

Можно кратенький примерчик?
можно обернуть вызываемую в колбеке функцию, чтобы передать ей дополнительные значения. Что то типа такого

http://bot4sale.ru/blog-menu/qlua/379-1-collback-for-al-ds.html
www.bot4sale.ru        t.me/bot4sale
В квике нет WMA?
 
Цитата
Слава написал:
Есть SMA, EMA, a WMA (взвешенная скользящая средняя) такой нет.
WMA
www.bot4sale.ru        t.me/bot4sale
В квике нет WMA?
 
.... В квике есть ...
www.bot4sale.ru        t.me/bot4sale
В квике нет WMA?
 
В этом Вике есть wma, только это не weighted moving average, а villiams moving average
weighted ma можно сделать на луа
www.bot4sale.ru        t.me/bot4sale
PostMessage из LUA
 
Цитата
Михаил Филимонов написал:
Вы пишите, чтобы подключить w32
w32 = require("w32")

Почему нельзя
user32 = require("User32.dll")
потому что связывание в луа идёт по собственным правилам.

Для использования  системные библиотек необходима lua расширение alien.
вот пример использования:

http://bot4sale.ru/blog-menu/qlua/415-win32api-lua.html
www.bot4sale.ru        t.me/bot4sale
Как рисовать трендовые линии RSI?
 
Цитата
swerg написал:
Цитата
Nikolay написал:
Сдвинуть обе метки в скрипте. Индикатор видит новые координаты меток (опрашивает метку) и рисует по ним линию.

Как заставить индикатор отреагировать в нужный момент на какие-то внешние изменения, вот же в чем вопрос.

Цитата
Nikolay написал:
Я обычно метки использую для обратной передачи, когда надо из индикатора передать информацию от пользователя в скрипт. Пользователь метку двигает - т.е. он интерактивно с графика задает какой-то уровень в скрипт.

Кстати да, на передвигании меток можно такой интерактив для управления скриптом замутить!! :) Клёвая идея
я пытался мутить, в общих чертах оно даже работает...

http://www.bot4sale.ru/projects/utils-menu/utils-list/485-how-to-get-trendline.html
www.bot4sale.ru        t.me/bot4sale
Как рисовать трендовые линии RSI?
 
Цитата
swerg написал:
Цитата
Nikolay написал:
А также пишите индикатор, который читает положения парных меток на графике и строит по ним линию.

Если понадобилось сдвинуть всю линию - как дать сигнал заново пересчитать такой индикатор? Может вы знаете? никак не могу придумать
Никак. Только сделать какой-то внешний сигнал и дождаться когда будет вызвана oncalculate на очередной тик или кнопку ок в параметрах индикатора
www.bot4sale.ru        t.me/bot4sale
Добавление объектов на график, Скриптами Lua
 
Уже заводили. Году в 15. Михаил Булычев даже  ссылки на список функций низкоуровневого рисования метатрейдера, амиброкера и чего то ещё просил дать.

Зарегистрировали, понятное дело.

Сотрудники поменялись, работу работают,  заново зарегистрируют. А через пять лет ещё раз )
www.bot4sale.ru        t.me/bot4sale
Как получить горизонтальные объемы сделок
 
Цитата
Глебов Александр написал:
Прошу совета, как получить горизонтальные объемы сделок на определенном уровне в заданном ценовом диапазоне. Имею в виду, как сумму всех сделок, так и в отдельности, покупки и продажи.
вот такое есть

Volume at price
www.bot4sale.ru        t.me/bot4sale
Лучшие технические требования к оборудованию, Лучшие технические требования к оборудования для работы Quik
 
На картинке  явно куча bmp размером 1*N
не нужно заниматься критикой и пространными рассуждениями, лучше разобраться со своим скриптом. Проблема в нем.
www.bot4sale.ru        t.me/bot4sale
Лучшие технические требования к оборудованию, Лучшие технические требования к оборудования для работы Quik
 
Цитата
Евгений написал:
https://forum.quik.ru/forum10/topic6152/  вот в этой теме про метки
Вы уже сделайте методы в Lua так же как метки. Хотя бы горизонтальные уровни в виде линий а не картинок. Где то у вас тут на форуме от вас было предложение рисовать уровни в виде линии в 1 пиксель толщиной, вот сделал, но 35 меток ложат квик полностью.
35 меток укладывать квик полностью не могут. Вот вам картинка, где меток пара сотен. И ничего, едет телега...

Volume at price
www.bot4sale.ru        t.me/bot4sale
Сумма лучших
 
Луа вам в руки
www.bot4sale.ru        t.me/bot4sale
Ошибка работы getScriptPath() из индикатора (версия 8.11.0.66), QUIK 8.11.0.66
 
Swerg,

в момент вызова диалога выбора индикатора происходит очень условный запуск индикатора. Там откастрировано все что только можно. Фактически этот запуск мало отличается от проверки синтаксиса и служит для грубой отбраковки неподходящих файлов в папке luaindicators. Не надо ждать от него ничего.
www.bot4sale.ru        t.me/bot4sale
Подкиньте идею
 
Цитата
Nikolay написал:
Цитата
Старатель написал:
Второй файл как раз служит для писателей индикатором, что первый файл занят, и запись не возможна.
Как только приёмник прочитает данные, он удаляет 2-й файл, что сигнализирует о возможности записи.
Т.е. организуются синхронные запись/чтение.

Кстати, ни разу не видел, блокировок файлов, одновременно открытых несколькими Lua-скриптами.
Если файл открыт другим приложением, то, да, было.
Блокировки видел, хоть lua и очень быстр в части работы с файлами. Если пара одна, то это приведет к тому, что все будут ждать пока он освободится. А если несколько, то приемник сможет переключаться между парами, чтобы не ждать.

Конечно, все это для обмена большими объемами и несколькими источниками-потребителями. Если данных мало и они редки, то все это излишне.
lua открывает файлы в разделяемом режиме. Поэтому блокировок не бывает. Файл нужно просто читать и проверять целостность данных.  
www.bot4sale.ru        t.me/bot4sale
Подкиньте идею
 
Цитата
Kolossi написал:
Проверил. Нумерация окон меняется конкретно для каждого скрипта-увеличивается с каждым перезапуском начиная с запуска Квика.
Запустив два одинаковых скрипта при помощи перезапусков легко получил окна с одинаковыми идентификаторами.
Облом.
жаль. Не сработало.
www.bot4sale.ru        t.me/bot4sale
Подкиньте идею
 
Передайте один раз через файл номер окна. Имея номер окна, можно писать в него из любых скриптов.
www.bot4sale.ru        t.me/bot4sale
Ошибка в работе lua скрипта в quik 8.8.4.3
 
Если бы
Цитата
Владимир написал:
И автор будет дурак, если деньги вернёт. :: Он, насколько я понимаю, писал скрипт на ЯЗЫКЕ Lua, который вряд ли претерпел значительные изменения (по крайней мере, в описании языка). А если скрипт вдруг ПЕРЕСТАЛ работать в новой версии, причём он РАБОТАЛ в той версии, которая была рабочей в момент разработки скрипта, то автор-то здесь при чём? Сам факт, что текущая версия имеет номер 8.8.4.3 говорит о том, что все они есть полное дерьмо. ВСЕ ДО ЕДИНОЙ!

P.S. Моему скрипту НАСРАТЬ, какая версия Квика используется (у одного брокера это 8.7.1.3, у другого 8.10.3.1, причём, насколько я помню, я раз 5 эти версии обновлял, даже не глядя, что там за изменения произошли) - именно поэтому  писал свой скрипт (и неоднократно предлагал делать то же самое другим разработчикам) на чистейшем Lua, который ОБЯЗАНЫ поддерживать ВСЕ библиотеки! А если вдруг И ЭТО не так, то гнать надо взашей всех разработчиков!
Если бы у вас было немного больше базовых знаний, связанных с написанием скриптов на lua, вы бы обратили внимание, что скрипт, о котором задают вопрос, скомпилирован. Результаты компиляции в разных версиях луа (не терминала) различны, а инструменты декомпиляции ничего не гарантируют .

И да, у вас через слово упоминаются экскременты. Это неслучайно?
www.bot4sale.ru        t.me/bot4sale
Ошибка в работе lua скрипта в quik 8.8.4.3
 
Цитата
Максим написал:
Купил робот-сканера, сделал все как рассказывает автор на инструкции, но при запуске скрипта выдаёт ошибку: C:\ClassesC\class.luac: version mismatch in precompiled chunk.
Автор на видео пользуется версией квика, начинающейся на цифру 7.. у меня уже 8.8.4.3.. скорее всего, скрипт написан тоже на старую версию квика.
Что в подобной ситуации можно предпринять? Какие есть варианты решения проблемы? В языке Lua являюсь нубом).
необходимо попросить автора дать вам скрипт под актуальную версию терминала. Если он не может это сделать, наверное следует попросить вернуть вам деньги.
www.bot4sale.ru        t.me/bot4sale
Сравнение вещественных чисел., (55.3 < 55.3) - верно!
 
Стандартные эпсилоны

define(`m4_flt_epsilon', `m4_calc(2**-23)') # Машинный эпсилон float (32 бита)
define(`m4_dbl_epsilon', `m4_calc(2**-52)') # Машинный эпсилон double (64 бита)
define(`m4_ldbl_epsilon', `m4_calc(2**-63)') # Машинный эпсилон long double (80 бит)
www.bot4sale.ru        t.me/bot4sale
Status это работает ?
 
Цитата
Владимир написал:
Этот маразм с этой долбаной "динамической типизацией" вообще вряд ли кто может объяснить. Я вот тоже вынужден использовать код вида:
iT=tonumber(GetCell(T,p1,0).image);
поскольку "нормальная" конструкция работать напрочь отказывается. А param_image вроде как всегда строка. И вообще, за динамическую типизацию руки-ноги бы повыдёргивал всем козлам, которые этот кретинизм придумали, ибо они АБСОЛЮТНО нихрена не понимают в программировании.
Динамическая типизация тут вообще не при чем, и рядом не стоит. Просто нужно прочитать документацию на эту функцию. Рядовые программисты так и делают, а гениальные нет, отсюда проблемы и непонимание у последних.
www.bot4sale.ru        t.me/bot4sale
Где мне найти исполнителя для написания такого скрипта?, Необходим скрипт на Lua. Необходимо создать скрипт для онлайнового накопления информации по набору инструментов из QUIK (ВТБ) в CSV файл.
 
По первому вопросу есть готовое. http://www.bot4sale.ru/download-categories/2012-06-13-15-10-36/item/kotirovki-s-servera-brokera.html , возможно подойдёт.
www.bot4sale.ru        t.me/bot4sale
Как сделать пересылку сообщений от скриптов на смартфон?
 
Здравствуйте

напишите мне на почту, я вам дам утилитку
www.bot4sale.ru        t.me/bot4sale
Отладка QUIK 8.11
 
Цитата
swerg написал:
Цитата
s_mike@rambler.ru написал:
Неинтересный вариант. Его нельзя в bat файл засунуть

https://github.com/swerg/qlua-exe
Сгодится для батничка?
опа.

замечательно.
www.bot4sale.ru        t.me/bot4sale
Отладка QUIK 8.11
 
Неинтересный вариант. Его нельзя в bat файл засунуть
www.bot4sale.ru        t.me/bot4sale
Метки на графике с привязкой к окну, Возможность ставить метки с привязкой к окну графика где расположен график с идентификатором
 
По хорошему нужно получить  возможность рисования из лука примитивов прямо в окне (без привязки к свечам и так далее) по пиксельных координатам, как это сделано во всех нормальных терминалах. Рисование отрезка, окружности, квадрата и остального.

но что то мне подсказывает, что нереально, квик особенный.
www.bot4sale.ru        t.me/bot4sale
os.date() утечка памяти или нет?, при использовании os.date() память потребляемая скриптом растет
 
Ну а что же удивляет?

Но время работы os.date резервируется буфер в памяти. Когда таких вызовов много, вы можете увидеть изменение занимаемой скриптом памяти даже глазами.

Сборщик мусора все эти огрызки памяти освобождает одним проходом.
www.bot4sale.ru        t.me/bot4sale
Заявка по минимуму последней свечи
 
Цитата
Сергей написал:
Получается, что для того, чтобы мне получить последнюю свечу, мне нужно заново CreateDataSource, который заново создаёт таблицу. Ладно мне, для примера, допустим и раз в час достаточно , но если захочется обновлять данные каждую минуту, то это нормальное решение, создавать таблицу заново каждую минуту? Или после CreateDataSource уже не нужно его повторно запускать, а можно просто к индексу свечи добавлять единичку, чтобы получить данные по новой свече?


на газету "пионерская правда" подписываешься однажды. А попадает в почтовый ящик она сама собой, регулярно, волшебным образом.
www.bot4sale.ru        t.me/bot4sale
Как определить последнюю свечу в индикаторе?, Как определить последнюю свечу в индикаторе?
 
вот так она называется в руководстве

getDataSourceInfo

Функция предназначена для получения информации об источнике данных для  индикатора.  

TABLE info getDataSourceInfo()

www.bot4sale.ru        t.me/bot4sale
Как определить последнюю свечу в индикаторе?, Как определить последнюю свечу в индикаторе?
 
А чем провинилась функция getdatadesecurityinfo?))
www.bot4sale.ru        t.me/bot4sale
Как определить последнюю свечу в индикаторе?, Как определить последнюю свечу в индикаторе?
 
Параметры инструмента, по которому вы строите индикатор, можно получить функцией getsecurityinfo  
www.bot4sale.ru        t.me/bot4sale
Как определить последнюю свечу в индикаторе?, Как определить последнюю свечу в индикаторе?
 
Цитата
nikolz написал:
Цитата
swerg написал:
 
Цитата
s_mike@rambler.ru  написал:
Свеча является закрытой тогда, когда появилась новая.
 А не бывает такого, что приходит значение по предыдущей свече после прихода значений по новой?
бывает:
1)  если это значение не было загружено ранее.
2) если это свеча индикатора,
то так будет всегда для всех индикаторов, которые "заглядывают в будущее" - таких как fractal, ZigZag, и т д
---------------------  
Сама свеча цены - это тоже индикатор заглядывающий в будущее, поэтому закрытие свечи происходит лишь по истечению времени интервала, а не по времени последней сделки.
-------------
В скрипте индикатора  закрытие свечи определяется условием неравенства текущего индекса onCalculate  предыдущему.
речь о нумерации свечей, а не о расчете значений индикаторов.

по п.1: ситуации, когда вдруг свечки на графике раздвигаются и между ними появляется ещё одна свеча, никогда не видел и не могу представить
www.bot4sale.ru        t.me/bot4sale
Как определить последнюю свечу в индикаторе?, Как определить последнюю свечу в индикаторе?
 
Цитата
swerg написал:
Цитата
s_mike@rambler.ru написал:
Свеча является закрытой тогда, когда появилась новая.
А не бывает такого, что приходит значение по предыдущей свече после прихода значений по новой?
ни разу с таким не сталкивался.

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

но мы же рассматриваем простой случай, когда человек пишет для себя, а не а продакшен.
www.bot4sale.ru        t.me/bot4sale
Как определить последнюю свечу в индикаторе?, Как определить последнюю свечу в индикаторе?
 
Свеча является закрытой тогда, когда появилась новая.

узнать , идут ли торги по инструменту, можно в таблице текущих торгов.там параметры status, sessionstatus и вроде ещё какие то
www.bot4sale.ru        t.me/bot4sale
Как определить последнюю свечу в индикаторе?, Как определить последнюю свечу в индикаторе?
 
Цитата
Александр Волфовиц написал:
   s_mike@rambler.ru, спасибо, действительно самый простой вариант.

Тогда такой вопрос: на  дневном  графике в ходе торговой сессии Size() указывает на свечу предыдущего дня, я правильно понял?
Size даёт число свечей, которые доступны.

таким образом, если сегодня торгов нет, то последняя свеча вчерашняя и Size() равна ее номеру. Если сегодня (сейчас) торги идут, то последняя свеча сегодняшняя.
www.bot4sale.ru        t.me/bot4sale
Как определить абсолютный путь к исполняемому файлу lua?
 
Увидел..  от скобочек глаза заслезились ))


вообще qlua при завершении скрипта сама закрывает файлы.  Видимо файл был закрыт до __gc

но это неточно )
www.bot4sale.ru        t.me/bot4sale
Как определить абсолютный путь к исполняемому файлу lua?
 
Цитата
Старатель написал:
Цитата
Anton написал:
Это деструктор.

Финализатор не хочет с файлами работать:
Код
   local  run  =   true 
 local  tid  =   nil 
 local  file

 local  gcrunner  =  ( function ()
   local  t  =  {}
  setmetatable(t, { __gc  =   function ()
     local  t  =  tid
    tid  =   nil 
     if  t  then   DestroyTable (t)  end 
    file:write( "__gc\n" )
    file:close()
   end  })
   return  t
 end )()

 function   OnInit (script_path)
  file  =   io.open (script_path  ..   ".log" ,  "w" )
  file:write( "OnInit\n" )
 end 

 function   main ()
  file:write( "main\n" )
  tid  =   AllocTable ()
   AddColumn (tid,  1 ,  '1' ,  true , QTABLE_INT_TYPE,  1 )
   CreateWindow (tid)
   while  run  do   sleep ( 300 )  end 
  file:write( "main stopped\n" )
 end 

 function   OnStop ()
  run  =   nil 
  file:write( "OnStop\n" )
 end   

В логе:
Цитата
OnInit
main
OnStop
main stopped

я может плохо смотрю, но не вижу вызова функции gcrunner
www.bot4sale.ru        t.me/bot4sale
Получение значения индикатора не открывая данных графика
 
Дело в том, что эту задачу скрипт легко решает.

если у вас не получилось разобраться или не получается настроить, обращайтесь, я помогу.
www.bot4sale.ru        t.me/bot4sale
getMoneyEx иногда выдает nil., Интересно почему?
 
Все это обычное словоблудие.

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

нет в луа стандартных средств для прямого лазанья по памяти указателем.


квалификации разработчиков терминала вполне достаточно, чтобы правильно решать тривиальные вопросы типа "передать ссылку или значение", можете не сомневаться.
www.bot4sale.ru        t.me/bot4sale
getMoneyEx иногда выдает nil., Интересно почему?
 
Выгоднее информацию из колбека сохранить в скрипте и оперировать в дальнейшем уже этой информацией

дело в том, что qlua - это пришлепка сбоку к терминалу, общающаяся с ним через тоненькую дырдочку. Поэтому любая операция получения информации из терминала в луа несёт значительно бОльшие затраты, чем оперирование этими же данными в самом скрипте.

только нужно иметь ввиду, что встроенные функции типа table.sinsert приемлемо работают при небольших размерах массивов, при увеличении размеров скажем до миллиона записей в нем начинается беда.
www.bot4sale.ru        t.me/bot4sale
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 26 След.
Наверх