Это целая песня, тут Вы абсолютно правы
Пользователь:
BlakBird (IP-адрес скрыт)
Дата: 11.03.2007 15:16
Принцип действия следующий:
Во-первых хранение данных, так чтобы в них самому не запутаться, организовано следующим образом: все данные хранятся в обычных текстовых файлах, чтобы можно было видеть все "косяки" с данными без спецпрограмм, а заодно просто их редактировать. Поиск данных начинается от некоторой базовой директории. В ней лежат названия поставщиков данных (мы ведь можем получить их из разных источников). В них лежат директории с названиями символов. В них уже лежат сами данные, разбитые по таймфреймам. Все таймфреймы я не храню, только тики, M1, H1 и D1 – остальные считаются «на лету». Тики хранятся по дню, минуты по месяцу, часы по году, дни хранятся все в одном файле.
Обращение к данным «прозрачно» для обращающейся программы. Я использую С++ и обращение выглядит как обращение к классу SYMBOL. Завожу переменную это класса и указываю с какими данными работать, например:
SYMBOL IEESR(“Finam”, “IEESR”);
Далее, могу выбирать интересующие меня, например, часы:
Bar = IEESR.H1(время);
И уже с барами работаю как мне нужно для расчётов. В этом месте происходит «сшивка» с новыми поступающими данными. Если на запрошенное время не находится данных, то система останавливает текущую задачу. Как только данные приходят, задача получает новый бар и продолжает делать то что должна, как будто и не было никакой остановки.
Вся выборка из базы получается полностью прозрачной для вызывающего кода. Система сама определяет в каком файле хранятся запрашиваемые данные, загружает весь файл в память, где и хранит не стирая до тех пор, пока не закончится память, или я не выйду из программы полностью. Это сделано со следующими целями – не нужно повторно обращаться к файлам (это долго), если торговая система периодически перезапрашивает одни и те же данные, и не нужно загружать данные ещё раз, если работают параллельно с одними данными несколько задач. Поскольку данные хранятся в памяти только один раз, то при приходе новых данных достаточно обновить только одну таблицу. Когда эта таблица освобождает память, если она была изменена – она сохраняется на диске в истории.
BlakBird..
проблемы с отображением Omega
|
к-ьфт |
1392 |
09.03.2007 20:53 |
Re: проблемы с отображением Omega
|
к-ьфт |
734 |
09.03.2007 20:55 |
А чем Омега лучше Метастока?
|
BlakBird |
838 |
10.03.2007 13:51 |
Тем, что там есть EasyLanguage и хороший тестер
|
к-ьфт |
756 |
10.03.2007 15:23 |
По-моему, проще использовать "обычные" языки программирования
|
BlakBird |
801 |
10.03.2007 17:41 |
Омега и Метасток неактуальные продукты
|
nofx |
869 |
11.03.2007 18:07 |
для разработки - возможно, а в рабочей торговой системе вы всё это используете?(-)
|
Andrej |
703 |
12.03.2007 11:35 |
wld только разработка
|
nofx |
780 |
12.03.2007 11:52 |
Re: остаюсь на омеге
|
Чапаев |
754 |
12.03.2007 11:10 |
эти извращения в большей степени относятся к квику
|
nofx |
761 |
12.03.2007 12:08 |
Re: адаптор то есть, только грузит он только ту базу которая в АД имеется(-)
|
Чапаев |
698 |
12.03.2007 12:24 |
Re: Омега и Метасток неактуальные продукты
|
Camel.Vulgaris |
765 |
11.03.2007 20:42 |
Re: Омега и Метасток неактуальные продукты
|
pavel |
753 |
12.03.2007 00:14 |
Re: Омега и Метасток неактуальные продукты
|
Camel.Vulgaris |
914 |
12.03.2007 08:47 |
Re: Омега и Метасток неактуальные продукты
|
nofx |
725 |
11.03.2007 21:03 |
Спасибо, надо будет "пощупать"(-)
|
BlakBird |
684 |
11.03.2007 18:11 |
Re: По-моему, проще использовать "обычные" языки программирования
|
pavel |
773 |
11.03.2007 12:15 |
Это целая песня, тут Вы абсолютно правы |
BlakBird |
834 |
11.03.2007 15:16 |
Re: Это целая песня, тут Вы абсолютно правы
|
pavel |
757 |
11.03.2007 17:35 |
Re: Это целая песня, тут Вы абсолютно правы
|
Camel.Vulgaris |
976 |
11.03.2007 20:30 |
Можно и с финама, ничего сложного
|
BlakBird |
748 |
11.03.2007 17:56 |
а зачем такие усилия с одной базой?
|
nofx |
788 |
11.03.2007 17:52 |
Ставлю конечную дату расчётов меньше текущей
|
BlakBird |
711 |
11.03.2007 18:08 |
Re: Ставлю конечную дату расчётов меньше текущей
|
nofx |
722 |
11.03.2007 18:28 |
Re: Ставлю конечную дату расчётов меньше текущей
|
BlakBird |
688 |
11.03.2007 19:34 |
Re: Ставлю конечную дату расчётов меньше текущей
|
nofx |
675 |
11.03.2007 20:55 |
Re: а зачем такие усилия с одной базой?
|
pavel |
770 |
11.03.2007 18:07 |
Re: а зачем такие усилия с одной базой?
|
nofx |
723 |
11.03.2007 18:16 |
Re: а зачем такие усилия с одной базой?
|
pavel |
734 |
11.03.2007 22:55 |
Re: а зачем такие усилия с одной базой?
|
pavel |
763 |
11.03.2007 21:08 |
Re: а зачем такие усилия с одной базой?
|
nofx |
780 |
12.03.2007 10:55 |
Возможно. Я же не так давно торгую.
|
к-ьфт |
723 |
10.03.2007 18:13 |
Скорее всего системная проблема, связанная с битовыми ограничениями
|
BlakBird |
745 |
10.03.2007 19:41 |
Re: Скорее всего системная проблема, связанная с битовыми ограничениями
|
Andrej |
685 |
12.03.2007 11:43 |
Попробовал. Все нормально. Дело еще в том..
|
к-ьфт |
725 |
10.03.2007 20:14 |