Сергей Николаев (Все сообщения пользователя)

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

Страницы: 1
Из скрипта qlua подключится в БД mySQL
 
Действительно загрузилась! Кто бы знал что ему нужно!
Большое спасибо!

Кому интересно напишу от начала и до конца что нужно сделать.
В папке с квиком создаем папку luasql
В неё копируем 2 файла libmysql.dll и mysql.dll (только 32-битные версии !!  64-битные версии QUIK  НЕ загрузит !! )
В папке с квиком находим файл lua5.1.dll , делаем его копию. Копию переименовываем в lua.dll
Т.е. в папке с квиком должно быть 2 абсолютно одинаковых файла, но с разными именами -  lua5.1.dll и lua.dll

В lua скрипте пишем:
Код
-- Подключение драйвера (библиотеки):
require "luasql.mysql"

-- Инициализация драйвера (библиотеки):
env = luasql.mysql()

-- подключение к базе данных:
-- conn = env:connect([имя_базы], [имя_пользователя], [пароль], [хост], [порт])
conn = env:connect( "all_trades", "root", "12345678", "localhost", 64000 )
На ЭТОЙ странице есть небольшой мануал.
Обезличенные сделки за прошлые торговые сессии
 
Цитата
Виктор Столетов написал:
  Сегодня 21 декабря если посмотреть таблицу обезличенных сделок по акциям М.Видео, то там почти одни продажи, причем крупные лоты исключительно продажи. Несмотря на это акция падает не сильно, а временами даже поднимается. Как же так может быть?  Кроме того,  ведь  на каждого продавца должен быть покупатель, так что сумма продаж за любой интервал, например минутный,   по идее должна быть уравновешена суммой покупок. А этого нет.
Насколько у меня опыта хватает судить об этой теме, то я могу сказать, что здесь нужно ещё смотреть на биржевой стакан (DOM).
Например, может быть такая ситуация. Стоят очень большие заявки на покупку и чтобы цена пошла вниз нужно чтобы они все исполнились.
Поэтому вы видите большие объёмы продаж, а цена не движется вниз.

Я такое вижу постоянно и на разных акциях. Поэтому очень сложно одномоментно анализировать обезличенные сделки - лучше их рассматривать в динамике, располагая на графике цены.

Насчет МаркетМейкера напишу пару слов.
МаркетМейкер устанавливает цену открытия торговой сессии.
МаркетМейкер может "придержать" движение цены в определённую сторону.
"Придержать" это значит, что он может размещать очень крупные ордера на покупку и/или на продажу с целью остановить мелких трейдеров и/или скальперов. Позиционщиков это не сильно остановит или испугает, если они увидят очень крупные объёмы против их позиции.

Такое я видел сегодня утром по акциям Сбербанка (SBER).
Стояла крупная заявка на покупку (примерно 100000 лотов) примерно в 12:30 - перед небольшим падением в 13:00. Как только цена до неё дошла и она начала исполнятся её сняли.
Именно СНЯЛИ - она НЕ ИСПОЛНИЛАСЬ. Я смотрел в таблице обезличенных сделок таких или похожих объёмов не было. Скорее всего - это МаркетМейкер придерживал цену.

Тоже сегодня 17:08 акция Сбербанка (SBER)
Скриншот
Обратите внимание на заявку: 177,16 @ 389856 - таже самая ситуация - как только цена до неё дошла и она начала исполнятся её сняли ( в таблице обезличенных сделок таких или похожих объёмов не было).
Обезличенные сделки за прошлые торговые сессии
 
Спасибо большое. Это то что надо.
Как-нибудь придумаю как эти данные засунуть в мою БД ...
Из скрипта qlua подключится в БД mySQL
 
Вот что мне сейчас выдает Dependency:
ссылка
Обезличенные сделки за прошлые торговые сессии
 
Я настроил вывод обезличенных сделок по ODBC в БД mySQL и каждую торговую сессию они у меня сохраняются в БД.
Но мне хотелось бы получить эти данные за прошлые торговые сессии (месяц, полгода), если это возможно.
Из скрипта qlua подключится в БД mySQL
 
Скачал и установил программу Dependency Walker. Открыл в ней файл c:\QuikFinam\mysql.dll
Если я все правильно понял, то не хватает библиотеки LUA.dll
Нашел в папке c:\QuikFinam\ файл lua5.1.dll
Сделал его копию и переименовал в lua.dll
Теперь при запуске скрипта QUIK выдает ошибку:
"error loading module 'mysql' from file '.\mysql.dll':
Не найдена указанная процедура."

P.S.
При использовании 64-битных версий  файлов libmysql.dll и mysql.dll QUIK выдает ошибку:
"error loading module 'mysql' from file '.\mysql.dll':
%1 не является приложением Win32"
QUIK загружает только 32-битные версии, хотя у меня 64-бинтая Win7
Из скрипта qlua подключится в БД mySQL
 
Вот ссылка на mysql_2.1.1.rar
Вот ссылка на mysql_2.1.1_win64.rar
Обезличенные сделки за прошлые торговые сессии
 
У меня в квике таблица обезличенных сделок очищается с новой торговой сессией.
Подскажите, это у всех так или можно настроить квик, чтобы он показывал сделки за прошлые дни?

Если это у всех так, то где-нибудь эти данные можно взять, скачать?
Я даже готов купить их, если это вообще где-нибудь возможно.
Из скрипта qlua подключится в БД mySQL
 
Цитата
swerg написал:
Вы их скопировали в c:\QuikFinam\luasql\,  а надо прямо в папку квика c:\QuikFinam\
Скопировал 2 файла libmysql.dll и mysql.dll в папку c:\QuikFinam\
Саму папку c:\QuikFinam\luasql\ удалил.
В скрипте написал
Код
require "mysql"
При запуске ошибка
Код
error loading module 'mysql' from file '.\mysql.dll':
   Не найден указанный модуль.


Цитата
swerg написал:
Либо, как вариант, квик не находит не сами эти библиотеки, а связанные с ними, от которых они зависят.
Да, скорее всего именно в этом причина, но я не могу понять что QUIK ещё нужно для загрузки этого mysql.dll !!!
Как это можно узнать?
Из скрипта qlua подключится в БД mySQL
 
Если я пишу
Код
require "c:\\QuikFinam\\luasql\\mysql"
то ошибка такая
Код
module 'c:\QuikFinam\luasql\mysql' not found:
no field package.preload['c:\QuikFinam\luasql\mysql']
no file '.\c:\QuikFinam\luasql\mysql.lua'
no file 'C:\QuikFinam\lua\c:\QuikFinam\luasql\mysql.lua'
no file 'C:\QuikFinam\lua\c:\QuikFinam\luasql\mysql\init.lua'
no file 'C:\QuikFinam\c:\QuikFinam\luasql\mysql.lua'
no file 'C:\QuikFinam\c:\QuikFinam\luasql\mysql\init.lua'
no file 'C:\Program Files (x86)\Lua\5.1\lua\c:\QuikFinam\luasql\mysql.luac'
no file 'C:\QuikFinam\Include\c:\QuikFinam\luasql\mysql.dll'
no file 'C:\QuikFinam\Include\c:\QuikFinam\luasql\mysql.lua'
no file 'C:\QuikFinam\Include\c:\QuikFinam\luasql\mysql.luac'
no file '.\c:\QuikFinam\luasql\mysql.dll'
no file 'C:\QuikFinam\c:\QuikFinam\luasql\mysql.dll'
no file 'C:\QuikFinam\loadall.dll'

Если пишу
Код
require "c:\\QuikFinam\\luasql\\mysql.dll"
то ошибка такая
Код
module 'c:\QuikFinam\luasql\mysql.dll' not found:
no field package.preload['c:\QuikFinam\luasql\mysql.dll']
no file '.\c:\QuikFinam\luasql\mysql\dll.lua'
no file 'C:\QuikFinam\lua\c:\QuikFinam\luasql\mysql\dll.lua'
no file 'C:\QuikFinam\lua\c:\QuikFinam\luasql\mysql\dll\init.lua'
no file 'C:\QuikFinam\c:\QuikFinam\luasql\mysql\dll.lua'
no file 'C:\QuikFinam\c:\QuikFinam\luasql\mysql\dll\init.lua'
no file 'C:\Program Files (x86)\Lua\5.1\lua\c:\QuikFinam\luasql\mysql\dll.luac'
no file 'C:\QuikFinam\Include\c:\QuikFinam\luasql\mysql\dll.dll'
no file 'C:\QuikFinam\Include\c:\QuikFinam\luasql\mysql\dll.lua'
no file 'C:\QuikFinam\Include\c:\QuikFinam\luasql\mysql\dll.luac'
no file '.\c:\QuikFinam\luasql\mysql\dll.dll'
no file 'C:\QuikFinam\c:\QuikFinam\luasql\mysql\dll.dll'
no file 'C:\QuikFinam\loadall.dll'
no file 'C:\QuikFinam\Include\c:\QuikFi
Насколько я понимаю в директиве require нужно писать относительный путь. Причем, в странной форме: <имя_папки><точка><имя_модуля_без_расширения>
При запуске lua скрипта QUIK сам ищет этот модуль в папках
C:\QuikFinam
C:\QuikFinam\luasql\
и т.д. и НЕ НАХОДИТ ЕГО !!!
Если внимательно посмотреть на эти сообщения об ошибках, то можно понять, что QUIK ищет файл mysql с расширениями dll, lua и luac


Если я пишу
Код
require "luasql.mysql"
то ошибка такая
Код
error loading module 'luasql.mysql' from file 'C:\QuikFinam\luasql\mysql.dll':
Не найден указанный модуль.
Т.е. файл C:\QuikFinam\luasql\mysql.dll  QUIK видит, пытается его загрузить, но не может - не понятно почему.
Строка "Не найден указанный модуль" по-видимому относится не к файлу C:\QuikFinam\luasql\mysql.dll , а к чему-то другому. Что-то ему нужно ещё загрузки mysql.dll
Из скрипта qlua подключится в БД mySQL
 
Цитата
Антон Кыт. написал:
Тогда, наверное, надо писать?
require "luasql\luasql.mysql"
Нет. В этом случае QUIK выдает вот такую ошибку:
Код
module 'luasqlluasql.mysql' not found:
no field package.preload['luasqlluasql.mysql']
no file '.\luasqlluasql\mysql.lua'
no file 'C:\QuikFinam\lua\luasqlluasql\mysql.lua'
no file 'C:\QuikFinam\lua\luasqlluasql\mysql\init.lua'
no file 'C:\QuikFinam\luasqlluasql\mysql.lua'
no file 'C:\QuikFinam\luasqlluasql\mysql\init.lua'
no file 'C:\Program Files (x86)\Lua\5.1\lua\luasqlluasql\mysql.luac'
no file 'C:\QuikFinam\Include\luasqlluasql\mysql.dll'
no file 'C:\QuikFinam\Include\luasqlluasql\mysql.lua'
no file 'C:\QuikFinam\Include\luasqlluasql\mysql.luac'
no file '.\luasqlluasql\mysql.dll'
no file 'C:\QuikFinam\luasqlluasql\mysql.dll'
no file 'C:\QuikFinam\loadall.dll'
no file 'C:\QuikFinam\Include\luasqlluasql.dll'
no file 'C:\QuikFinam\Include\luasqlluasql.lua'
no file 'C:\QuikFinam\Include\luasqlluasql.luac'
no file '.\luasqlluasql.dll'
Вообщем, получается, что если я пишу
Код
require "luasql.mysql"
то QUIK видит файл c:\QuikFinam\luasql\mysql.dll , но загрузить его не может, или другого какого-то файла не хватает.
Из скрипта qlua подключится в БД mySQL
 
Цитата
swerg написал:
квик ведь у вас наверняка не в этой пепке установлен
Нет. QUIK я установил в папку c:\QuikFinam - мне так удобнее.
Из скрипта qlua подключится в БД mySQL
 
Уже неделю не могу заставить qlua скрипт хотя бы загрузить библиотеку для БД mySQL.
Подключаю библиотеку так:
Код
require "luasql.mysql"
Сами файлы библиотеки находится в папке с программой QUIK по пути c:\QuikFinam\luasql\
В этой папке 2 файла libmysql.dll и mysql.dll , которые я взял с ЭТОЙ страницы.
При запуске скрипта QUIK выдает ошибку:
Код
error loading module 'luasql.mysql' from file 'C:\QuikFinam\luasql\mysql.dll':
Не найден указанный модуль.
Сам LUA я поставил вот от сюда (не знаю нужно это или нет).
Эту тему смотрел - ответа на мой вопрос там не нашел.
Чувствую, что библиотеки для mySQL я взял какие-то не правильные. А где взять правильные не знаю.

Может кто-нибудь поделится своими библиотеками для mySQL или подскажите где их взять рабочие.
Устанавливать дополнительно ещё что-нибудь нужно?
Заранее всем спасибо.
Страницы: 1
Наверх