Список форумов AmiSite.ru AmiSite.ru
Форум по Ами
 FAQ  •  Поиск  •  Пользователи  •  Группы   •  Регистрация  •  Профиль  •  Войти и проверить личные сообщения  •  Вход
 Экспорт данных ИЗ Амиброкера Следующая тема
Предыдущая тема
Начать новую тему  Ответить на тему
Автор Сообщение
Tinych



Зарегистрирован: 08.02.2012
Сообщения: 41

СообщениеДобавлено: Вт Мар 25, 2014 4:50 pm Ответить с цитатой Вернуться к началу

Уважаемые коллеги,
А можно сделать экспорт из Амиброкер в текстовые или любые другие форматы, автоматическим. Самым нужным был бы онлайн экспорт из Амиброкер в Эксель.
Посмотреть профиль Отправить личное сообщение
Mechanic



Зарегистрирован: 10.06.2008
Сообщения: 359

СообщениеДобавлено: Вт Мар 25, 2014 7:16 pm Ответить с цитатой Вернуться к началу

Да, причём легко. Взять любой код, делающий такой экспорт, и запустить его на сканирование в анализаторе с автоповтором каждые n секунд/минут
Посмотреть профиль Отправить личное сообщение ICQ Number
Tinych



Зарегистрирован: 08.02.2012
Сообщения: 41

СообщениеДобавлено: Чт Мар 27, 2014 1:46 pm Ответить с цитатой Вернуться к началу

Mechanic писал(а):
Да, причём легко. Взять любой код, делающий такой экспорт, и запустить его на сканирование в анализаторе с автоповтором каждые n секунд/минут

АФЛ делающий экспорт в текстовый файл работает при последовательном нажатии кнопок Эксплор и Файл/Экспорт. Загрузке этого же кода и нажатии копки скан Амиброкер выдает сообщение (на приложенном рисунке). Код для разового экспорта в текстовый файл:
Filter=1;
//AddColumn(O,"Open");
AddColumn(H,"High");
AddColumn(L,"Low");
AddColumn(C,"Close");
//AddColumn(V,"Volume",1.0);
//OIRI=Foreign("OIRI","C");
//AddColumn(OIRI,"OIRI");
Посмотреть профиль Отправить личное сообщение
MrDrJOKER



Зарегистрирован: 22.06.2009
Сообщения: 489

СообщениеДобавлено: Пт Мар 28, 2014 1:24 am Ответить с цитатой Вернуться к началу

Tinych писал(а):
Mechanic писал(а):
Да, причём легко. Взять любой код, делающий такой экспорт, и запустить его на сканирование в анализаторе с автоповтором каждые n секунд/минут

АФЛ делающий экспорт в текстовый файл работает при последовательном нажатии кнопок Эксплор и Файл/Экспорт. Загрузке этого же кода и нажатии копки скан Амиброкер выдает сообщение (на приложенном рисунке). Код для разового экспорта в текстовый файл:
Filter=1;
//AddColumn(O,"Open");
AddColumn(H,"High");
AddColumn(L,"Low");
AddColumn(C,"Close");
//AddColumn(V,"Volume",1.0);
//OIRI=Foreign("OIRI","C");
//AddColumn(OIRI,"OIRI");


побольше скрина не было?

Код:

fh = fopen( "DataFor"+Name()+".csv", "w" );
if( fh )
{
  fputs("Symbol,Date,Time,Open,High,Low,Close,OpenInt,Volume\n", fh );

  dn = DateNum();
  tn = TimeNum();
 
  for( i = 0; i < BarCount; i++ )
  {
   Line = Name() +
   StrFormat(",%06.0f,%06.0f,%g,%g,%g,%g,%g,%g\n",
   dn[ i ] % 1000000,
   tn[ i ],
   Open[ i ],
   High[ i ],
   Low[ i ],
   Close[ i ],
   OpenInt[ i ],
   Volume[ i ] );
 
   fputs( Line, fh );
  }
 
  fclose( fh );
}

Buy=Sell=0; // for scan
Filter = Status("lastbarinrange");
AddTextColumn("Export done", "Status");
Посмотреть профиль Отправить личное сообщение
Tinych



Зарегистрирован: 08.02.2012
Сообщения: 41

СообщениеДобавлено: Пт Мар 28, 2014 10:42 am Ответить с цитатой Вернуться к началу

Большое спасибо, MrDrJOKER.
Все прекрасно работает, но это только первый шаг на пути к автоматизации wavelet преобразований, ARIMA и т.д. К сожалению в Амиброкере это напрямую сделать скорей всего невозможно.
Еще раз спасибо.
Посмотреть профиль Отправить личное сообщение
Tinych



Зарегистрирован: 08.02.2012
Сообщения: 41

СообщениеДобавлено: Пн Сен 01, 2014 1:15 pm Ответить с цитатой Вернуться к началу

Столкнулся с проблемой, есть скрипт для автоматического экспорта данных в файл в формате CSV:
OIRI=Foreign("OIRI","C");
fh = fopen( "C:\\Users\\Vladimir\\Documents\\MATLAB\\NN_OHLC_V_OI\\RiR"+Name()+".csv", "w" );
if( fh )
{
fputs("Ticker,Date/Time,Open,High,Low,Close,Volume,OIRI\n", fh );

//dn = Date();
//tn = Time();
d = Day();
m = Month();
y = Year();

r = Hour();
e = Minute();
sn = Second();
for( i = 0; i < BarCount; i++ )
{
Line = Name() +
StrFormat(",%g.%g.%g %g:%g:%g,%g,%g,%g,%g,%g,%g,\n",
//dn[ i ] % 1000000,
//tn[ i ],

d[ i ] % 1000000,
m[ i ],
y[ i ],
r[ i ],
e[ i ],
sn[ i ],
Open[ i ],
High[ i ],
Low[ i ],
Close[ i ],
Volume[ i ],
OIRI[ i ] );

fputs( Line, fh );
}

fclose( fh );
}

Buy=Sell=0; // for scan
Filter = Status("lastbarinrange");
AddTextColumn("Export done", "Status");
По непонятной причине он передает в файл только 81 строку в файл. Первый файл в приложении.
В то время как следующий код для не автоматического экспорта выдает все 278 строк в файле. Второй файл в приложении.
Filter=1;
AddColumn(O,"Open",1.5);
AddColumn(H,"High",1.5);
AddColumn(L,"Low",1.5);
AddColumn(C,"Close",1.5);
AddColumn(V,"Volume",1.0);
OIRI=Foreign("OIRI","C");
AddColumn(OIRI,"OIRI");

Как заставить первый скрипт полностью передавать все строки в CSV файл.
Посмотреть профиль Отправить личное сообщение
Tinych



Зарегистрирован: 08.02.2012
Сообщения: 41

СообщениеДобавлено: Пн Сен 01, 2014 1:25 pm Ответить с цитатой Вернуться к началу

И еще , в АА в Settings в обеих случаях стоит Hourly, но почему-то первый скрипт упорно экспортирует 5 минутки. Как заставить передавать часы?
Посмотреть профиль Отправить личное сообщение
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Пн Сен 01, 2014 6:15 pm Ответить с цитатой Вернуться к началу

А этот первый код для автоматического экспорта. Он у тебя как работает?
Подозреваю, что ты его как индикатор используешь.

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Tinych



Зарегистрирован: 08.02.2012
Сообщения: 41

СообщениеДобавлено: Ср Сен 03, 2014 12:39 pm Ответить с цитатой Вернуться к началу

000 писал(а):
А этот первый код для автоматического экспорта. Он у тебя как работает?
Подозреваю, что ты его как индикатор используешь.

Спасибо за ответ.
Да, я вначале засунул его, как индикатор в отдельное окошко, и он даже проработал один день. Возможно сразу невнимательно посмотрел, так как в Матлабе ряд проблем было с онлайн чтением. Теперь я засунул этот код в график цен и все работает штатным образом.

Вопрос по коду, зачем вот этот миллион здесь: d[ i ] % 1000000,

с остальным понятно все.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Ср Сен 03, 2014 8:06 pm Ответить с цитатой Вернуться к началу

% берет остаток от целочисленного деления. Я не знаю зачем там так сделано. По моему можно % 1000000 убрать

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
fujis84



Зарегистрирован: 07.01.2014
Сообщения: 56

СообщениеДобавлено: Ср Сен 03, 2014 10:06 pm Ответить с цитатой Вернуться к началу

отлично работает здесь

Код:
OIRI = Foreign( "OIRI", "C" );
dt = DateTime();
bir = Status( "BarInRange" );
destination = "C:\\Users\\Vladimir\\Documents\\MATLAB\\NN_OHLC_V_OI\\";
fh = fopen( destination + "RiR" + Name() + ".csv", "w" );

if ( fh )
{
    fputs( "Ticker,Date/Time,Open,High,Low,Close,Volume,OIRI\n", fh );
    for ( i = 0; i < BarCount; i++ )
    {
        if( bir[i] ) // export bars of selected analysis range
        {
         dtstring = DateTimeToStr( dt[i] ); // Datetime to string conversion
         
         Line = Name() + "," + dtstring +
               StrFormat( ",%g,%g,%g,%g,%g,%g\n",                      
                       Open[ i ],
                       High[ i ],
                       Low[ i ],
                       Close[ i ],
                       Volume[ i ],
                       OIRI[ i ] );

         fputs( Line, fh );
        }
    }

    fclose( fh );
}
else
{
    Error("ERROR: file can not be opened");
}

Buy = 0; // for scan
Filter = Status( "lastbarinrange" );
AddTextColumn( "Export done", "Status" );
Посмотреть профиль Отправить личное сообщение
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



Следующая тема
Предыдущая тема
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете вкладывать файлы
Вы не можете скачивать файлы


Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme :: Часовой пояс: GMT + 3

File Attachment © by Meik Sievertsen