Список форумов AmiSite.ru AmiSite.ru
Форум по Ами
 FAQ  •  Поиск  •  Пользователи  •  Группы   •  Регистрация  •  Профиль  •  Войти и проверить личные сообщения  •  Вход
 TimeFrame (set/restore...и др.) Следующая тема
Предыдущая тема
Начать новую тему  Ответить на тему
Автор Сообщение
kosbar



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

СообщениеДобавлено: Пн Янв 24, 2011 9:59 pm Ответить с цитатой Вернуться к началу

Спасибо большое.
Посмотреть профиль Отправить личное сообщение ICQ Number
Swell



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

СообщениеДобавлено: Чт Июл 30, 2015 9:40 pm Ответить с цитатой Вернуться к началу

Олег. Не подскажешь, почему эта вещь не работает:

TimeFrameSet(inHourly);
BI=BarIndex();
Dat="29.01.2014 17:00:00";
n=Lookup(BI, _DT(Dat), 0);
TimeFrameRestore();
PopupWindow(""+n,"",30);

Суть в том, что надо получить номер бара из другого интервала, зная дату/время этого бара. Например, находясь в дневном интервале, получить номер бара из часового интервала (исходный интервал базы данных - часовой).
Вышеприведённый код выдаёт n=EMPTY.
Или может быть есть какой-нибудь другой способ?
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Чт Июл 30, 2015 10:54 pm Ответить с цитатой Вернуться к началу

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

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



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

СообщениеДобавлено: Чт Июл 30, 2015 11:49 pm Ответить с цитатой Вернуться к началу

Swell писал(а):
Олег. Не подскажешь, почему эта вещь не работает:

TimeFrameSet(inHourly);
BI=BarIndex();
Dat="29.01.2014 17:00:00";
n=Lookup(BI, _DT(Dat), 0);
TimeFrameRestore();
PopupWindow(""+n,"",30);

Суть в том, что надо получить номер бара из другого интервала, зная дату/время этого бара. Например, находясь в дневном интервале, получить номер бара из часового интервала (исходный интервал базы данных - часовой).
Вышеприведённый код выдаёт n=EMPTY.
Или может быть есть какой-нибудь другой способ?



Код:
Dat = "2014-01-29 17:00:00";

SetBarsRequired( -2, -2 );

tmfrm = inHourly;
TimeFrameSet( tmfrm );
BI = BarIndex();
int_ = Interval(2);
TimeFrameRestore();

bi = TimeFrameExpand( bi, tmfrm, expandfirst );
bi = bi - bi[0];

Plot( bi, "bi_"+int_, -1, styleHistogram );

n = Lookup (BI, _DT (Dat), 0);
printf( "Bi "+int_+": %g", n );

Filter = 1;
AddColumn( BarIndex(), "bi_"+Interval(2), 1 );
AddColumn( bi, "bi_"+int_, 1 );
AddTextColumn( Dat, "Lookup date", 1, -1, -1, 120 );
AddColumn( n, "Lookup(bi_"+int_+")", 1 );


Image
Посмотреть профиль Отправить личное сообщение
Swell



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

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

trashfx, а в каком интервале была карта - 15мин или час?
Смысл в том, чтобы находясь на более крупном интервале получить информацию из более мелкого, а не наоборот.
Я этот код пробовал находясь на дневном интервале, чтобы получить информацию из часового. Всё равно n=empty. Экспанд не помог.(
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Сб Авг 01, 2015 7:57 pm Ответить с цитатой Вернуться к началу

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

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



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

СообщениеДобавлено: Сб Авг 01, 2015 11:53 pm Ответить с цитатой Вернуться к началу

Swell писал(а):
trashfx, а в каком интервале была карта - 15мин или час?
Смысл в том, чтобы находясь на более крупном интервале получить информацию из более мелкого, а не наоборот.
Я этот код пробовал находясь на дневном интервале, чтобы получить информацию из часового. Всё равно n=empty. Экспанд не помог.(


The set UI timeframe has to be equal or lower than the time frame being set in TimeFrameSet().

But you may try to use static variables to send data from lower TF to higher TF.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Вс Авг 02, 2015 12:45 am Ответить с цитатой Вернуться к началу

trashfx писал(а):

But you may try to use static variables to send data from lower TF to higher TF.

Да. Только для этого надо сначала переключиться на меньший фрейм, затем создать там статическую переменную, затем переключиться на старший фрейм и оттуда читать эту переменную.
Или иметь 2 окна. Одно с меньшим фреймом (там создаем статическую переменную), а второе со старшим фреймаом (там читаем).

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



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

СообщениеДобавлено: Вс Авг 02, 2015 12:49 am Ответить с цитатой Вернуться к началу

000 писал(а):
trashfx писал(а):

But you may try to use static variables to send data from lower TF to higher TF.

Да. Только для этого надо сначала переключиться на меньший фрейм, затем создать там статическую переменную, затем переключиться на старший фрейм и оттуда читать эту переменную.
Или иметь 2 окна. Одно с меньшим фреймом (там создаем статическую переменную), а второе со старшим фреймаом (там читаем).


Да, я знаю.
Посмотреть профиль Отправить личное сообщение
Swell



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

СообщениеДобавлено: Пн Авг 03, 2015 9:38 am Ответить с цитатой Вернуться к началу

Получается, только один способ - сделать некие действия на меньшем фрейме. Т.е. лишние манипуляции...
Досадно здесь то, что эта информация в Ami есть, но возможности прочесть её из программы нет.
Обидно(.
Посмотреть профиль Отправить личное сообщение
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



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


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

File Attachment © by Meik Sievertsen