Автор |
Сообщение |
tlt-vlad
Зарегистрирован: 19.01.2008
Сообщения: 162
Откуда: ... теперь Москва
|
На ПАУКе в разделе Ами есть ветка про экспорт данных из Квика в Амиброкер с использованием СУБД MySQL .
Вкратце суть : из Квика экспортируется "Таблица всех сделок " в БД MySQL там после обработки на выходе имеем O,H,L,C,V,SYMBOL,DT и т.д. ,далее при помощи плагина ODBC.dll и ODBCA.dll ( скачал на сайте Амиброкера) цепляемся к БД и "кушаем" котировки.
Согласно документации по настройке БД в Ами [url] http://www.amibroker.com/odbc.html следует , что таким путём можно из внешней СУБД выдернуть практически любые данные .
Но вот у меня получилось только O,H,L,C,V Symbol,DT , а хотелось бы ещё кое что .
Подскажите , что я делаю не так ???
Вввожу в AFL Editor
///B///
odbcOpenDatabase("ODBC;DATABASE=quikauto;DSN=mysql;OPTION=0;PWD=twix;PORT=0;SERVER=localhost;UID=root");
Graph0=odbcGetArraySQL("SELECT B, DT FROM quotations WHERE Symbol='EESR'ORDER BY DT Asc");
Graph0Style= styleHistogram ;
Graph0=colorRed;
и в Ами ни чего не отображается ( хотя запрос SELECT B, DT FROM quotations WHERE Symbol='EESR'ORDER BY DT Asc в MySQL отрабатывается отлично .
Настройка БД Амиброкера показывает что Ами нашёл необходимую внешнюю БД и видит все имеющиеся таблицы и имеющиеся столбы таблиц .
У меня сложилось мнение , что я просто не правильно выполняю запрос , либо что то с ODBCA.dll ( плагин отвечает за работу с AFL code) ???
[/url] |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
|
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
tlt-vlad
Зарегистрирован: 19.01.2008
Сообщения: 162
Откуда: ... теперь Москва
|
|
Посмотреть профиль Отправить личное сообщение |
|
qitt
Зарегистрирован: 09.04.2008
Сообщения: 5
|
Добрый день! Спасибо за хороший сайт.
Вы хорошо разбираетесь в Амиброкере.
Поэтому решил спросить у Вас:
Сделал таблицу в Базе Данных(от Angel's death).
В квике такую же (в смысле столбцы или поля):
номер, код бумаги, цена, количество, объем, время, операция.
Для тикового графика в амиброкере.
Настроил вывод данных. Все нормально. А как настроить амиброкер, не знаю:
Делаю новую базу данных, нажимаю "Configure" и надо заполнять поля:
Open, High, Low, Close, но данные-то не в барах идут.
Когда оставил их пустыми, то вот что вышло: см. рис.
Сплошные непонятки Дайте совет.
Игорь. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Цитата: |
Сделал таблицу в Базе Данных(от Angel's death).
В квике такую же (в смысле столбцы или поля): |
Angel's death делал две связанных таблицы. В первую получал из квика таблицу всех сделок и из неё формировал 5минутки во вторую таблицу к которой и подключал Ами. Кроме того он еще при этом химичил с форматом Времени/Даты. Точнее ничего подсказать не могу. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
tlt-vlad
Зарегистрирован: 19.01.2008
Сообщения: 162
Откуда: ... теперь Москва
|
000 писал(а): |
Цитата: |
Сделал таблицу в Базе Данных(от Angel's death).
В квике такую же (в смысле столбцы или поля): |
Angel's death делал две связанных таблицы. В первую получал из квика таблицу всех сделок и из неё формировал 5минутки во вторую таблицу к которой и подключал Ами. Кроме того он еще при этом химичил с форматом Времени/Даты. Точнее ничего подсказать не могу. |
В вышеуказанной БД нужно внести изменения в некоторый триггер и получить другой тайм и ещё много чего ... |
|
|
Посмотреть профиль Отправить личное сообщение |
|
fewry
Зарегистрирован: 06.10.2009
Сообщения: 61
|
по ODBC.
помогите вытянуть данyые из БД
со страницей http://www.amibroker.com/odbc.html ничего не понял. туго у меня с этим.
Источник данных 1.mbd там две колонки: Vol(объем) и Op(купля или продажа)). Как например построить график используя только значения Vol?
смог намудрить только такое:
Код: |
odbcOpenDatabase("ODBC;DATABASE=ODBC;DSN=1;OPTION=0;PORT=0;UID=root");
odbcSetFieldNames("ticker", "datetime" );
Graph0=odbcGetArray("1", "V", "Vol");
Graph0Style= styleLine ;
Graph0=colorRed;
|
|
|
|
Посмотреть профиль Отправить личное сообщение |
|
fewry
Зарегистрирован: 06.10.2009
Сообщения: 61
|
по ODBC.
помогите вытянуть данyые из БД
со страницей http://www.amibroker.com/odbc.html ничего не понял. туго у меня с этим.
База данных в ами ODBC. Источник данных 1.mdb там две колонки: Vol(объем) и Op(купля или продажа)). Как например построить график используя только значения Vol?
смог намудрить только такое:
Код: |
odbcOpenDatabase("ODBC;DATABASE=ODBC;DSN=1;OPTION=0;PORT=0;UID=root");
odbcSetFieldNames("ticker", "datetime" );
Graph0=odbcGetArray("1", "V", "Vol");
Graph0Style= styleLine ;
Graph0=colorRed;
|
|
|
|
Посмотреть профиль Отправить личное сообщение |
|
tlt-vlad
Зарегистрирован: 19.01.2008
Сообщения: 162
Откуда: ... теперь Москва
|
Если мне не изменяет память, то нужно ещё привязаться к времени . БД должна содержать поле Time.
Например:
Код: |
_SECTION_BEGIN("buy_volume");
odbcOpenDatabase("ODBC;DATABASE=quik;DSN=quik;OPTION=0;PWD=password;PORT=0;SERVER=localhost;UID=root");
Var1=odbcGetArray("quota","","B_V");
Plot(Var1,"buyvol",43,styleHistogram|styleThick);
_SECTION_END();
|
|
|
|
Посмотреть профиль Отправить личное сообщение |
|
fewry
Зарегистрирован: 06.10.2009
Сообщения: 61
|
tlt-vlad писал(а): |
Если мне не изменяет память, то нужно ещё привязаться к времени . БД должна содержать поле Time.
Например:
Код: |
_SECTION_BEGIN("buy_volume");
odbcOpenDatabase("ODBC;DATABASE=quik;DSN=quik;OPTION=0;PWD=password;PORT=0;SERVER=localhost;UID=root");
Var1=odbcGetArray("quota","","B_V");
Plot(Var1,"buyvol",43,styleHistogram|styleThick);
_SECTION_END();
|
|
Хорошо. Но так и не получилось что-либо построить.
1)а что такое SERVER=localhost? в описании по ODBC нет такого.
2)В строке Var1=odbcGetArray("quota","","B_V"); quota - это имя БД или что?
Или пожалуй, пожалуйста распишите параметры функции
odbcGetArray( "tablename", "symbol", "fieldname" )
а то я недопонимаю что написано в инструкции. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
tlt-vlad
Зарегистрирован: 19.01.2008
Сообщения: 162
Откуда: ... теперь Москва
|
MAAAN779 писал(а): |
tlt-vlad писал(а): |
Если мне не изменяет память, то нужно ещё привязаться к времени . БД должна содержать поле Time.
Например:
Код: |
_SECTION_BEGIN("buy_volume");
odbcOpenDatabase("ODBC;DATABASE=quik;DSN=quik;OPTION=0;PWD=password;PORT=0;SERVER=localhost;UID=root");
Var1=odbcGetArray("quota","","B_V");
Plot(Var1,"buyvol",43,styleHistogram|styleThick);
_SECTION_END();
|
|
Хорошо. Но так и не получилось что-либо построить.
1)а что такое SERVER=localhost? в описании по ODBC нет такого.
2)В строке Var1=odbcGetArray("quota","","B_V"); quota - это имя БД или что?
Или пожалуй, пожалуйста распишите параметры функции
odbcGetArray( "tablename", "symbol", "fieldname" )
а то я недопонимаю что написано в инструкции. |
Данный скрипт состоит из трёх строк.
1.Параметры базы данных (внешеней , к которой цепляется Ами).
2. Инициализируем переменную , выполняя запрос.
3.Выводим полученный , в данном случае массив на экран.
По Вашим пунктам.
1. Параметры соединения с внешним источником данных (напрмер MySQL). Прописывается , а при необходимости и создаётся , следающим образом : Пуск->Панель управления->Администрирование->Источники данных(ODBC) . На вкладке пользовательский DNS : Добавить, далее выбираем из списка драйверов MySQL ODBC 3.51 Driver ( если его нет, то предварительно устанавливаем ). Жмём готово.
Далее в новом окне, на вкладке Login прописываем, вышеупомянутые параметры внешней БД ( в нашем случае используем сервер MySQL , созданная база данных ( на сервере) имеет имя "quik").
В описании всё это есть....
2.quota - имя таблицы , нашей базы данных quik.
"...odbcGetArray( "tablename", "symbol", "fieldname" )
а то я недопонимаю что написано в инструкции ..."
odbcGetArray( "имя таблицы нашей внешней БД , откуда мы собираемся тянуть данные", "наша таблица должна содержать поле "symbol", в этом поле прописываем название того symbol для которого хотим тянуть данные, если пишем "" то данные выводятся по умолчанию ", "название поля - столбца который мы хотим вывести в Ами, например B_V" ).
Удачи |
|
|
Посмотреть профиль Отправить личное сообщение |
|
fewry
Зарегистрирован: 06.10.2009
Сообщения: 61
|
спасибо! не хватало этого драйвера. но тут новые препятствия - нажимаю указать Database и тут ошибка. мне уже стало пофиг на этот одбк столько непоняток и косяков возникает, и видимо я там ничего полезного не найду, раз "вселенная" так отстраняет от меня одбк)) |
|
|
Посмотреть профиль Отправить личное сообщение |
|
tlt-vlad
Зарегистрирован: 19.01.2008
Сообщения: 162
Откуда: ... теперь Москва
|
Хотелось бы уточнить, какая прога у Вас установлена - MySQL или Аccess? Создана ли у в ней соответствующая база данных ? Судя по расширению (.mdb) , Вы юзаете Аccess.
Советую отказаться от Аccess, ибо тормозит, а если собираетесь прелапатить тиковые данные, то лучше к другой проге, как вариант MySQL. Все вышеописанные действия были неоднократно проверены на ней. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
tlt-vlad
Зарегистрирован: 19.01.2008
Сообщения: 162
Откуда: ... теперь Москва
|
MAAAN779 писал(а): |
... мне уже стало пофиг на этот одбк столько непоняток и косяков возникает, и видимо я там ничего полезного не найду, раз "вселенная" так отстраняет от меня одбк)) |
Сдался без боя... так далеко не уедешь. Настойчивость и терпение в достижении цели, а так же трудолюбие, хорошие помощники. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
fewry
Зарегистрирован: 06.10.2009
Сообщения: 61
|
не получился не DDE не ODBC . не шарю я в таких вещах вообще. для меня надо писать подробнейшую инструкцию или видео - а кто так будет со мной няньчиться). хз как там с этим драйвером - выдает ошибку и все. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
|