    <!-- свойства идшников, а также все идшники, которые попадают в index.xml -->
    <!-- skip_zero_delta: пропускать ли при экспорте graph_n.xml файлов значения с нулевой дельтой: 1 - пропускать, 0 - не пропускать -->
    <!-- параметр skip_zero_delta был сделан для отсеивания подозрительных параметров, "левых" значений от непроверенных источников -->
    <!-- параметр precision отвечает за количество знаков после запятой для экспортируемого значения котировки -->
    <!-- параметр hasBuyValue - bool флаг, если 1 - то у котировки есть курс покупки и продажи, если 0 - то у котировки только одно значение, например, назначаемое банком -->

1. Требуется экспортировать данные с разной точностью.
2. Надо быстро добавлять новые поля в экспорт.

По экспорту важные значения:
  - name - короткое имя
  - news_title - название для новостей
  - name_readable - вот фиг его знает что это

Также необходимо знать - из какого источника забирается котировка сейчас (то
есть написать соответствующую функцию, которая парсит конфигурационные файлы и
находит файл с котировкой. Функция должна ругаться, если таких файлов несколько
и у этих источников одинаковый вес!)

exclude_ids - список котировок, которые не попадают в index и all.
exclude_all_xml_ids - исключаем из all_xml

Для экспорта мы дополняем нашу систему (от ревизии 290a08cae4f0ac0f9254e238e75b77ff24fe5812):
  - для квоты вводим поля name, news_title, name_readable;
  - для квоты вводим поле aliases, в котором будут прописаны псевдонимы для этой котировки.
  - для квоты указываем, как она должна экспортироваться: исключить из all, исключить из index.

index.xml отличается от all.xml набором котировок.

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

Алгоритм экспорта:
  - получить список котировок (это сделает QuotesConfig);
  - узнать активный источник для котировки (он должен быть единственным);
  - получить данные из базы данных (например, 10 штук);
  - вычислить дополнительные данные (дельты);
  - упаковать данные в namespace для передачи их шаблонизатору;
  - запустить шаблонизатор.

Очевидно, что на этапе импорта не нужны некоторые поля (экспортные), поэтому,
для импорта создается новый класс ExportableQuote. Нужно научить QuotesConfig
использовать произвольный класс котировок.

Возможно потребуется изменить логику. Сейчас транспорт передает в парсер
неразобранные список котировок. Нам необходимо передать котировку (Quote)! То
есть при импорте базовым объектом является котировка, а не цена.

Логичнее написать отдельный экспортер (Exporter). Этот экспортер выдает список
квот для экспорта (ExportableQuote). Затем квота поступает на этап расчета,
после чего сохраняется в namespace. Дополнительную обработку может сделать
шаблонизатор.

