Анализ эффективности вложений денежных средств в РКО


                                 Содержание.
                                                                 стр.

      Введение.   3

      Глава 1. Функционирование рынка РКО.    4

        Участники рынка.     4

        Процедура торгов.    4
         Первичное размещение (аукцион).     4
         Вторичные торги.   5
         Погашение.    5

        Документооборот.     5
         Отчеты, предоставляемые биржей.     5
         Отчеты, предоставляемые Дилерами.   5

      Глава 2. Задачи Дилера на рынке РКО.    7

        Ведение бэк-офиса.   7

        Оптимизация вложений собственных средств.   7

        Управление средствами инвесторов.     7

        Исполнение поручений Инвесторов.      8

        Анализ эффективности вложений.  8

      Глава 3. Задачи формирования и ведения собственного  портфеля
облигаций Дилера.      9

        Формирование портфеля облигаций.      9
         Ликвидность портфеля.    9
         Период инвестирования.   9
         Инвестирование с целью максимизации дохода.    10
         Безрисковое инвестирование.   10

        Анализ эффективности вложений денежных средств в РКО.  11
         Постановка задачи. 11
         Метод решения.     11
         Экономическая интерпретация метода. 13
         Экономическая интерпретация полученных результатов.  13
         Применение результатов исследования для построения методов
    эффективного управления портфелем облигаций.   14

      Заключение. 15

      Список литературы.     15

      Приложения. 18

        Приложение № 1. Программа автоматизации учета РКО.     18
         Приложение 1.1. Руководство пользователя. 18
         Приложение 1.2. Текст программы.    20
         Приложение № 1.3. Журнал оборотов.  63
         Приложение № 1.4. Журнал лицевого учета.  64
         Приложение № 1.5. Мемориальный ордер.     65
         Приложение № 1.6. Отчет инвестору о совершенных сделках.   66
         Приложение № 1.7. Структура пртфеля в разрезе по бумагам.  67
         Приложение № 1.8. Структура портфеля обобщенная.     68
         Приложение № 1.9. Биржевая информация.    69
         Приложение № 1.10. Еженедельный отчет в депозитарий. 70
         Приложение № 1.11. Ежемесячный отчет в депозитарий.  71

        Приложение № 2. Программа анализа эффективности вложений в РКО.   71
         Приложение 2.1. Текст программы.    72
         Приложение № 2.2. Диаграмма сравнения доходности портфеля и рынка.
    81
         Приложение № 2.3. Диаграмма сравнения индекса портфеля и рынка. 82

        Приложение № 3. Входные статистические данные.   83
         Приложение 3.1. Информация о бумагах.     83
         Приложение 3.2. Информация о сделках.     84
         Приложение 3.3. Информация о движениях денежных средств.   90
         Приложение 3.4. Биржевая информация.      92



                                  Введение.


      Республиканские краткосрочные бескупонные облигации (РКО)  выпускаются
Министерством Финансов Республики Татарстан. Рынок  РКО  существует  с  1995
года. За три года  он  стал  важнейшим  сегментом  в  экономике  Татарстана,
сравнимый  по  объему  заимствований  с  рынком  межбанковских  кредитов   и
иностранной валюты.
      Гарантом надежности вложений в РКО является Правительство  РТ.  РКО  -
ликвидный и наиболее доходный инструмент финансового  рынка.  Доходность  по
РКО выше, чем по банковским  вкладам  и  депозитным  сертификатам,  а  также
государственным ценным бумагам. Имея льготное налогообложение, РКО  является
наиболее привлекательным вложением свободных финансовых ресурсов.
      Вкладывать средства в РКО могут  как  юридические,  так  и  физические
лица. Доход по этим облигациям получается от разницы между ценой  покупки  и
продажи, т.е. дисконт.
      РКО обращаются в бездокументарной  форме  и  учитываются  записями  по
счетам депо. Продажа и покупка производится на фондовой  бирже.  В  связи  с
этим возникает задача учета операций с РКО как со стороны биржи,  так  и  со
стороны организаций-инвесторов.
      На данном сегменте фондового рынка можно производить как краткосрочные
спекулятивные операции, так и долгосрочные  вложения  свободных  собственных
или заемных  средств.  Таким  образом,  актуальной  является  задача  оценки
эффективности вложений в РКО.
      В данной дипломной работе решаются две задачи:
      1. Автоматизация учета операций с РКО;
      2. Оценка эффективности вложений в РКО.
      На основе результатов второй  задачи  можно  будет  сделать  некоторые
выводы  для  оптимизации  принятия  решений  при  вложении   в   бескупонные
облигации.

                    Глава 1. Функционирование рынка РКО.


      Республиканские краткосрочные облигации обращаются на  Волжско-Камской
бирже (ВКБ) посредством проведения электронных  торгов.  В  функционировании
рынка РКО можно выделить следующие моменты:

      1. Участники рынка.
      2. Процедура торгов.
      3. Документооборот.


                              Участники рынка.


      Участники рынка разделяются на две категории: Дилеры и инвесторы.
      Дилер - любое  юридическое  лицо,  профессиональным  участником  рынка
ценных бумаг, заключившее договор  на  выполнение  функций  по  обслуживанию
операций с облигациями с коммунальным предприятием  "Дирекция  по  работе  с
ценными бумагами". Дилер может заключать сделки с РКО от своего имени  и  за
свой  счет,  а  также  может  выполнять  функции  финансового  брокера   при
заключении сделок от своего имени за счет и по поручению инвестора.
      Инвестор -  любое  юридическое  или  физическое  лицо,  заключившее  с
Дилером договор  брокерского  обслуживания  на  рынке  РКО.  Инвестор  может
приобретать облигации только через Дилеров, уплачивая при этом комиссию.


                              Процедура торгов.


      В ходе торгов РКО проходят следующие этапы:
      . Первичное размещение;
      . Вторичные торги;
      . Погашение.


                       Первичное размещение (аукцион).


      Аукцион   -   это   первичное   размещение   облигаций,    проводимого
Организатором  (Коммунальное  предприятие  "Дирекция  по  работе  с  ценными
бумагами",  агент  Министерства  финансов  РТ   по   обслуживанию   выпусков
облигаций) по поручению  Министерства  финансов  Республики  Татарстан.  Они
проводятся  по  специальному  графику.  Дата  аукциона,   предельный   объем
выпуска,  место  и  время  проведения  аукциона  объявляются  Организатором.
Контрагентами в  этой  процедуре  являются  Министерство  Финансов  с  одной
стороны, и Дилеры - другой. В ходе аукциона Дилеры подают заявки на  покупку
облигаций. После подачи всех заявок до установленного времени,  Министерство
Финансов устанавливает цену отсечения -  минимальная  цена,  по  которой  он
готов  продать  облигации.  Все  заявки,  поданные  выше   цены   отсечения,
удовлетворяются, заявки, поданные с более низкой ценой, не удовлетворяются.


                              Вторичные торги.


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


                                 Погашение.


      Погашение облигаций производится  в  определенный  день  Министерством
Финансов по номинальной стоимости.


                              Документооборот.


      РКО обращаются в электронной форме. Учет по  ним  ведется  посредством
записей на  счетах  депо,  открытых  в  Волжско-Камской  трастовой  компании
(ВКТК). В  связи  с  этим  возникают  вопросы  отражения  учета  операций  в
документальной форме. В ходе обращения РКО  можно  выделить  следующие  типы
документов:

      . Отчеты, предоставляемые биржей;
      . Отчеты, предоставляемые Дилерами.


                       Отчеты, предоставляемые биржей.


      По завершении торгов  биржа  предоставляет  каждому  Дилеру  следующие
документы:
      . Биржевая информация;
      . Выписка из протокола торгов;
      . Обязательства Дилера по итогам торгов;
      . Выписка из реестра сделок.


                      Отчеты, предоставляемые Дилерами.


      В процессе участия в торгах  Дилеры  обязаны  предоставлять  следующие
документы бирже:
      . Еженедельный отчет;
      . Ежемесячный отчет;
      . Другие документы, необходимые для допуска Дилера к торгам.

      После совершения сделки купли-продажи по  поручению  Инвестора,  Дилер
обязан  предоставить  Инвестору  отчет  о  совершенной   сделке   в   форме,
установленной в договоре по брокерскому  обслуживанию  и  выписку  со  счета
депо.  Дилер  также  может  предоставить  биржевую  информацию  и  оказывать
консультационные услуги.


                    Глава 2. Задачи Дилера на рынке РКО.


      Являясь  активным  участником  рынка  РКО,   Дилер   сталкивается   со
следующими задачами:
      1. Ведение бэк-офиса;
      2. Оптимизация вложений собственных средств;
      3. Управление средствами Инвесторов;
      4. Исполнение поручений Инвесторов;
      5. Анализ эффективности вложений.


                             Ведение бэк-офиса.


      Бэк-офис - система электронного учета операций с ценными бумагами.  Он
включает в себя очень широкий спектр функциональных вопросов:
      . Ведение журнала лицевого учета и журнала оборотов (Приложение № 1.3,
        1.4);
      . Формирование и печать мемориальных ордеров (Приложение №1.5);
      . Формирование и печать отчетов Инвесторам (Приложение №1.6);
      . Формирование и печать собственного  портфеля  Дилера  (Приложение  №
        1.7, 1.8);
      . Формирование и печать биржевой информации (Приложение №1.9);
      .  Формирование  и  печать  еженедельного   и   ежемесячного   отчетов
        (Приложение №1.10, 1.11).
      Все  перечисленные  задачи  реализованы  в  представленной   программе
автоматизированного учета операций с РКО.


                  Оптимизация вложений собственных средств.


      Под оптимизацией  вложений  собственных  средств  понимается  создание
портфеля облигаций, который удовлетворял бы поставленной инвестиционной  или
спекулятивной задаче.
      Для формирования портфеля можно исходить из следующих факторов:
      . Ликвидность;
      . "Время жизни";
      . Получение наибольшего дохода;
      . Использование РКО в залоговых операциях для получения  межбанковских
        кредитов.


                      Управление средствами инвесторов.


      Дилер может сам управлять средствами  Инвесторов,  если  был  заключен
договор трастового обслуживания. При этом он  может  брать  комиссию  как  с
отдельной сделки, так и с дохода, полученного Инвестором.  В  данном  случае
актуальной является задача оптимального  управления  портфелем  Инвестора  и
оценка эффективности деятельности Дилера.


                      Исполнение поручений Инвесторов.


      Дилер, являясь также и брокером на рынке РКО, совершает операции купли-
продажи от своего имени, но по поручению Инвестора и за  его  счет.  В  этом
случае  Дилер  должен  вести  учет  приема  заявок  Инвесторов,   исполнение
поручений на бирже  и  формирование  отчетов.  За  эти  услуги  он  получает
комиссионное вознаграждение.


                       Анализ эффективности вложений.


      Данная задача  является  одной  из  наиболее  сложных  и  необходимых.
Определение метода анализа - нетривиальная задача.  В  Главе  3  рассмотрены
две  методики  анализа  эффективности   вложений   собственных   средств   в
облигации.

             Глава 3. Задачи формирования и ведения собственного

                         портфеля облигаций Дилера.

      В процессе управления портфелем облигаций  Дилер  ставит  перед  собой
следующие задачи:
      . формирование портфеля облигаций;
      . анализ эффективности вложений денежных средств.


                      Формирование портфеля облигаций.


      В процессе участия  в  торгах  Дилер  инвестирует  свободные  денежные
средства в облигации, создавая при этом портфель, состоящий из разных  серий
РКО, отличающиеся тем, что имеют разные сроки до погашения.
      Спецификой портфеля,  состоящего  из  РКО,  могут  являться  следующие
моменты:
      . ликвидность портфеля;
      . период инвестирования;
      . инвестирование с целью максимизации дохода;
      . безрисковое инвестирование.


                            Ликвидность портфеля.


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


                           Период инвестирования.


       Дилер при инвестировании сталкивается и со следующей задачей:  период
инвестирования. Так как ликвидность  рынка  напрямую  зависит  от  срока  до
погашения облигации, то с  этим  приходится  диверсифицировать  портфеля  по
срокам погашения облигаций. Причем необходимо выбрать  наилучшую  стратегию,
зависящую  от  целей  инвестирования.  Если  целью  инвестирования  является
получения максимального дохода за продолжительный период времени,  то  можно
инвестировать средства в наиболее доходные серии облигаций.  В  случае  если
целью  инвестирования  является  краткосрочная   спекуляция,   то   наиболее
оптимальной стратегией в данном случае является покупка серий  облигаций  со
сроком погашения, близким к  установленному  сроку  инвестирования;  в  этом
случае минимизируется риск  невозможности  продажи  облигаций  на  вторичном
рынке.


                 Инвестирование с целью максимизации дохода.


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


                         Безрисковое инвестирование.


      В целях  получения  дохода,  но  также  минимизации  риска  извлечения
денежных  средств  из  портфеля,  можно  формировать  портфеля   с   помощью
диверсификации  по  срокам  погашения   серий   облигаций.   Облигации,   по
определению, являясь долговыми обязательствами, имеют срок  погашения,  т.е.
срок, в  который  инвестор  получает  номинал  облигации,  поэтому  о  риске
вложений приходится говорить лишь с точки зрения периода вложения.


            Анализ эффективности вложений денежных средств в РКО.


                             Постановка задачи.


      Анализ эффективности вложения денежных в РКО можно разделить на анализ
внутреннего управления портфелем облигаций и внешнего.
      Внутреннее управление  -  это  оценка  изменения  индекса  портфеля  в
сравнении с индексом рынка.
      Внешнее управление - это оценка изменения средневзвешенной  доходности
к  погашению  портфеля  в  сравнении  со  средневзвешенной   доходностью   к
погашению рынка.
      Таким  образом,  возникает  задача  сравнения   управления   портфелем
облигаций  относительно  рынка  путем  построения   некоторого   показателя,
который адекватно отражал бы  динамику  изменения  портфеля  в  сравнении  с
динамикой изменения рынка.


                               Метод решения.

      Предлагаются методики для решения поставленных задач путем  построения
следующих показателей:

     1. Индекс портфеля и рынка (для оценки внутреннего управления).
      Индекс строится следующим образом.
      Для портфеля:
      [pic]                             (1)
      [pic]
      [pic]                             (1.1)
      [pic]                  (1.2)
      где:
      [pic]значение индекса в момент t
      [pic]коэффициент
      [pic]стоимость портфеля по средневзвешенным ценам на  момент  закрытия
торгов в момент t
      [pic]сумма дополнительных вложений  (извлечений)  денежных  средств  в
портфель в момент t, причем, если
      [pic]дополнительные вложения
      [pic]сумма изъятых денег
      [pic]средневзвешенная цена i серии на момент закрытия торгов
      [pic]количество бумаг i серии в портфеле
      [pic]количество серий бумаг, обращающихся на рынке
      Для рынка при расчете коэффициента  [pic]  и  [pic]  переменные  будут
иметь следующий смысл:
      [pic]объем капитализации рынка по средневзвешенным ценам на момент t
      [pic]сумма размещенных (погашенных) средств на аукционе
      [pic]сумма размещенных средств на аукционе
      [pic]сумма погашенных средств на аукционе
      [pic]количество бумаг i серии, обращающихся на рынке

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

     2. Эффективная норма доходности  к  погашению  портфеля  и  рынка  (для
        оценки внешнего управления).
      Показатель строится следующим образом(2 метода):
      В теории расчета применяется следующий  метод:
      [pic]                             (2)
      где:
      [pic]                                        (2.1)
      [pic]сумма i расходного платежа
      [pic]сумма i доходного платежа
      [pic]количество дней между i расходным и доходным платежами
      [pic]эффективная норма доходности, которая и определяется  из  решения
      данного уравнения
      [pic]количество расходных и доходных платежей
      Уравнение   (2)   решается   численными   методами,   причем   решение
      единственно.
      Из-за неудобства решения уравнения на практике обычно применяют другой
      метод нахождения [pic]:
      [pic]                                   (2.2)
      где:
      [pic]доходность к погашению i бумаги
      [pic]количество i бумаги
      [pic]дней до погашения i бумаги
      [pic] рассчитывается следующим образом:
      [pic]                             (2.3)
      где:
      [pic]цена покупки i бумаги в % от номинала (расходный платеж)
      [pic]цена погашения в % от номинала (доходный платеж)
      [pic]количество дней в году
      [pic]дней до погашения i бумаги
      Данный  метод  более  удобен  при  расчетах  и  дает   более   быстрые
      результаты, вследствие чего он был  применен  при  построении  данного
      показателя.


                     Экономическая интерпретация метода.


      Анализ с помощью методики построения индекса портфеля и рынка включает
в себя следующие моменты:
      Индекс построен таким образом, что он  адекватно  отражает  управление
портфелем и поведение рынка.
      По построенному индексу можно  определить  доходность  к  приобретению
портфеля и рынка, что бывает необходимым для  сравнения  вложений  в  РКО  с
другими  инвестиционными  операциями.  Доходность  к  приобретению   -   это
доходность на день расчета, которую  можно  получить  при  продаже  портфеля
облигаций.
      Кроме того, можно оценить поведение рынка РКО в  сравнении  с  другими
рынками. Методика сравнения может быть различной  и  их  построение  требует
учета специфики различных рынков.
      Второй вид анализа - вычисление эффективной нормы доходности  портфеля
и рынка.
      Предложенный метод отражает поведение рынка и доходность  к  погашению
портфеля в текущий момент времени. Воздействовать на этот  показатель  можно
путем добавления или извлечения денежных средств в портфель  облигаций.  При
этом,  эффективное  внешнее   управление   напрямую   зависит   от   объемов
добавления/извлечения денежных средств и сложившейся  конъюнктурой  рынка  в
день проведения операций, т.е. другими словами,  должно  быть  своевременное
проведение данных операций.
      Этот вид анализа можно применить также для эффективного  распределения
свободных ресурсов между  различными  инвестиционными  рынками,  оценивая  и
сравнивая  доходности  различных  рынков  и  направляя  свободные   денежные
средства на наиболее доходные секторы.


             Экономическая интерпретация полученных результатов.


      В данной работе сравнивался портфель РКО банка и рынок РКО  с  февраля
по май месяц 1997 года.
      При анализе путем построения индекса было выявлено следующее.  График,
построенный на основе индекса рынка (Приложение №2.3),  имеет  положительный
наклон. Это обусловлено тем, что рынок в то время имел тенденцию к  снижению
доходности,  поэтому,  индекс,   отражающий   доходность   к   приобретению,
увеличивался.  В  приведенном  примере,  основанном  на   реальных   данных,
внутреннее управление портфелем было эффективным по сравнению  с  рынком  до
начала мая месяца.
      На графике сравнения доходности портфеля и рынка  (Приложение  №  2.2)
можно видеть падение доходности к погашению портфеля в связи со  сложившейся
рыночной конъюнктурой.  При  анализе  с  помощью  данного  показателя  можно
сказать, что апрель месяц был  наиболее  благоприятным  для  дополнительного
инвестирования денежных средств.


   Применение результатов исследования для построения методов эффективного
                       управления портфелем облигаций.


      Результаты исследования  с  помощью  применения  предложенных  методик
позволяют   сделать   основополагающие   выводы   для   построения   методов
эффективного  управления  портфелем  облигаций.   В   данном   случае,   под
эффективным  управлением  понимается   получение   наибольшего   дохода   за
определенный промежуток времени.
      Для построения методик  эффективного  управления  портфелем  облигаций
необходимо учитывать следующее:
     1) управление должно давать максимальный эффект;
     2) в  управлении  нужно  учитывать  возможность  ввода-вывода  денежных
        средств;
     3)  необходимость  попытки  прогнозирования  ситуации   при   изменении
        рыночной конъюнктуры;
     4)  управление  портфелем  с  точки  зрения  как  доходности,   так   и
        ликвидности;
      Полученные результаты также позволяют оценить степень влияния человека
(в данном случае - трейдер) на управление портфелем облигаций.  От  методов,
применяемых  им  для  принятия  решений,  зависит  эффективность  управления
портфелем  облигаций.  В  этом  случае  бывает  целесообразным  контроль  за
управлением портфелем со  стороны  вышестоящего  начальства  без  применения
обременительных методик расчетов, с другой стороны, можно поощрять  трейдера
за успешное  управление  портфелем  облигаций.  Следовательно,  предложенный
индекс можно применить для оценки управления портфелем облигаций трейдером.
      Другая задача, которою можно решить на основе полученных результатов -
это задача доверительного управления (траст).  Основываясь  на  результатах,
можно  предложить  следующую  схему  взимания  платы  за  траст  со  стороны
управляющего  с  клиента.  Сравнивается  индекс  рынка  и  индекс   портфеля
облигаций,  находящегося  в  трасте.  В   случае,   если   индекс   портфеля
превосходит индекс рынка, то дополнительный  доход,  получающийся  от  более
эффективного  управления  портфелем  облигаций,   делится   в   определенной
пропорции  между  управляющим  и  клиентом.  Другой   вариант:   управляющий
гарантирует   клиенту   определенный   процент,   а    плата    управляющему
рассчитывается по определенной методике исходя из гарантированного дохода  и
дохода, полученного свыше.


                                 Заключение.


      В работе решены следующие ключевые моменты, необходимые для  работы  с
Республиканскими краткосрочными бескупонными облигациями (РКО):
      . Автоматизация учета операций с РКО
      . Оценка эффективности вложений в РКО
      . Описано  функционирование  рынка  РКО,  поставлены  задачи,  которые
        решает Дилер на рынке.
      Решением задачи автоматизации  операций  с  РКО  является  программный
продукт, написанный на Visual Basic for Microsoft Excel,  который  позволяет
вести   полный   документооборот   Дилера   на   рынке   РКО.   Результатами
автоматизации являются стандартизованные  выходные  формы,  необходимые  для
ведения бухгалтерского учета РКО и предоставления различных отчетов.
      При решении задачи оценки эффективности  вложений  в  РКО  применялись
статьи, содержащие информацию  об  различных  методиках  расчета  доходности
облигаций.   Результатом   решения   данной   задачи   является   разработка
собственной методики  анализа.  Методика  проверена  на  реальных  численных
данных  за  определенный  период  функционирования   рынка   РКО.   Конечным
продуктом  метода  является  программа,  написанная  на  Visual  Basic   for
Microsoft  Excel,  позволяющая  делать   анализ   эффективности   управления
портфелем облигаций. Приведенный  метод  анализа  также  можно  применить  в
дальнейшем  для  построения  методов   эффективного   управления   портфелем
облигаций.
      Обе поставленные задачи внедрены и используются на практике.

                             Список литературы.


      1. Башарин Г.П. «Начала финансовой математики» Москва, «ИНФРА-М»  1997
г.
      2. Бродский В., Горлин Ю. «Модель действительной  доходности  ГКО  для
клиентов» журнал «Рынок ценных бумаг» №1 1994 г.
      3. Ветров А. «Как построить агрегированные показатели доходности рынка
ГКО/ОФЗ» журнал «Рынок ценных бумаг» №5 1996 г.
      4.   Горелов   М.   «Построение   оптимального   портфеля   ГКО:   как
максимизировать прибыль» журнал «Рынок ценных бумаг» №6 1996 г.
      5.  Горелов  М.,  Никифоров  Л.  «О  границах  применимости   принципа
рыночного момента» журнал «Рынок ценных бумаг» №16 1996 г.
      6. Горелов М. «Что нельзя упускать при  построении  модели  управления
портфелем ГКО» журнал «Рынок ценных бумаг» №11 1996 г.
      7. Горлин Ю. «Оценка доходности  операций  с  ГКО:  вырианты  биржевой
игры» журнал «Рынок ценных бумаг» №6 1994 г.
      8.  Грядовая  О.  «Доходность  как  критерий  оптимизации  решений  по
управлению портфелем ГКО» журнал «Рынок ценных бумаг» №15 1994 г.
      9. Губерниев В. «ГКО в  оптимальном  портфеле»  журнал  «Рынок  ценных
бумаг» №15 1996 г.
      10. Демушкина Е. «Сделки с государственными ценными  бумагами»  журнал
«Рынок ценных бумаг» №23 1996 г.
      11. Екушов А. «Как превысить  среднюю  доходность  рынка  ГКО»  журнал
«Рынок ценных бумаг» №11 1997 г.
      12. Ивахин А. «Как преодолеть ограничения в моделировании  рынка  ГКО»
журнал «Рынок ценных бумаг» №12 1996 г.
      13. Комягин В.Б. «Программирование в Excel 5 и Excel 7 на языке Visual
Basic» Москва, «Радио и связь» 1996 г.
      14. Кузнецов М., Нифатов П. «Денежный поток и   торговые  операции  на
рынке ГКО» журнал «Рынок ценных бумаг» №4 1996 г.
      15. Мешкова Н. Кулакова Ю. «Прогнозирование тренда  цены  ГКО»  журнал
«Рынок ценных бумаг» №6 1996 г.
      16. Михеев А. «Играем на заемные средства» журнал «Рынок ценных бумаг»
№3 1997 г.
      17. Остроушко О., Гришин О. «Доходность и дюрация портфеля ГКО» журнал
«Рынок ценных бумаг» №5 1996г.
      18. Положение об обслуживании и обращении выпусков  РКО  РТ(утверждено
постановлением Кабинета Министров РТ от 21 апреля 1995 г. № 238)
      19. «Потоки платежей,виды облигаций и  вычисление  доходности»  Москва
«Консультационное агентство «Соболев» 1996 г.
      20. «Рынок ценных бумаг» учебник под ред. Галанова В.А.,  Басова  А.И.
Москва «Финансы и статистика» 1996 г.
      21. Суменкова Е.В. «Операции с ценными бумагами» Москва  «Перспектива»
1997 г.
      22. Ушаков П. «О взаимосвязях индикаторов  рынка  ГКО»  журнал  «Рынок
ценных бумаг» №3 1997 г.
      23. Черкасов В.Е. «Практическое руководство по финансово-экономическим
расчетам» Москва «Метаинформ» 1995 г.
      24. Черновский А. «Как оценить эффективноть управления портфелем  ГКО»
журнал «Рынок ценных бумаг» №24 1996 г.
      25. Четыркин Е. «Методы финансовых и коммерческих расчетов»

                                 Приложения.



             Приложение № 1. Программа автоматизации учета РКО.



                  Приложение 1.1. Руководство пользователя.


      Данная программа написана на Microsoft Visual  Basic  for  Excel.  Для
запуска программы необходимо открыть файл sprav.xls в Excel,  после  чего  в
линейке меню появится дополнительный пункт меню «Справочник»,  состоящий  из
следующих разделов:
      Дата
      Просмотр остатков
      Печать
            Депозитарий
            Портфель
            Биржевая информация
            Отчеты клиентам
            Отчет недельный
            Отчет месячный
            Журнал лицевого учета
      Окно
            Бумаги
            Сделки
            Клиенты
            Биржа

      Рассмотрим подробнее каждое из пунктов меню.
      Дата - изменение даты для работы.
      Просмотр остатков - просмотр остатков по Клиентам.

      Печать - распечатка на принтер следующих данных:
      Депозитарий - печать депозитария.
      Портфель - печать собственного портфеля Дилера.
      Биржевая информация - печать биржевой информации.
      Отчеты клиентам - печать отчетов Клиентам.
      Отчет недельный -  печать  еженедельного  отчета,  предоставляемого  в
депозитарий.
      Отчет  месячный  -  печать  ежемесячного  отчета,  предоставляемого  в
депозитарий.
      Журнал лицевого учета  -  печать  журнала  лицевого  учета  и  журнала
оборотов Дилера.
      Окно - выбор следующих окон для ввода информации:
      Бумаги - выбор окна ввода информации об обращающихся на рынке бумагах.
      Сделки - выбор окна ввода сделок.
      Клиенты - выбор окна ввода Клиентов.
      Биржа - выбор окна ввода биржевой информации.

      Результатом работы программы являются Приложения №1.3-1.12


                      Приложение 1.2. Текст программы.


      Option Explicit
      Option Base 1
      Public CurDate As Date
      Public DepoArray() As Integer
      Public BumArray(); BumArrayV() As Integer
      Public Button;  Просмотр;  ExitVar;  Покупка;  Продажа;  Погашение  As
Boolean

      Const DilerConst = 1000900000
      Const FilialConst = 1000999999
      Const ConstMaxBum = 100 ' максимальное кол-во бумаг(выпусков)
      Const MaxCount = 1000 ' максимальное кол-во сделок по 1-ой бумаге
      Const S192 = "50202"
      Const S904 = "47423"
      Const S960 = "70102"
      Const S970 = "70204"
      Const SR970 = "70204"
      Sub Auto_Open()
       ActiveWindow.WindowState = xlMaximized
       CurDate = Date
       Worksheets("Врем").Cells(1; 4) = CurDate
       Application.OnWindow = "CancelChanges"
       Application.Windows("Sprav.xls").OnWindow = "Start"
      End Sub

      Sub Auto_Close()
       MenuBars(xlModule).Reset
       MenuBars(xlWorksheet).Reset
       Application.OnWindow = ""
       Application.Windows("Sprav.xls").OnWindow = ""
       ActiveWorkbook.Save
      End Sub

      Sub Start()
       Call CreateMenu
       Application.DisplayFullScreen = False
       ActiveWindow.WindowState = xlMaximized
       CurDate = Date
       Worksheets("Врем").Cells(1; 4) = CurDate
      End Sub

      Sub CancelChanges()
       MenuBars(xlModule).Reset
       MenuBars(xlWorksheet).Reset
      End Sub

      Sub CreateMenu()
       MenuBars(xlModule).Reset
       MenuBars(xlWorksheet).Reset
       With MenuBars(xlModule).Menus.Add("&Справочник")
        .MenuItems.Add "&Дата"; "DateChange"

        .MenuItems.Add "П&росмотр остатков"; "PrintOst"

        .MenuItems.AddMenu ("&Печать")
        .MenuItems("&Печать").MenuItems.Add "&Депозитарий"; "PrintDepo"
        .MenuItems("&Печать").MenuItems.Add "&Портфель"; "PrintPortfel"
           .MenuItems("&Печать").MenuItems.Add    "&Биржевая    информация";
"PrintBirgaInfo"
            .MenuItems("&Печать").MenuItems.Add     "Отчеты      &клиентам";
"PrintOtchClient"
            .MenuItems("&Печать").MenuItems.Add     "Отчет      &недельный";
"PrintOtchWeek"
            .MenuItems("&Печать").MenuItems.Add      "Отчет      &месячный";
"PrintOtchMonth"
         .MenuItems("&Печать").MenuItems.Add   "Журнал   &лицевого   учета";
"PrintMagazine"

        .MenuItems.AddMenu ("&Окно")
        .MenuItems("&Окно").MenuItems.Add "&Бумаги"; "ViewPaper"
        .MenuItems("&Окно").MenuItems.Add "&Сделки"; "ViewDeal"
        .MenuItems("&Окно").MenuItems.Add "&Клиенты"; "ViewClient"
        .MenuItems("&Окно").MenuItems.Add "Би&ржа"; "ViewBirga"
        .MenuItems("&Окно").MenuItems.Add "&Остатки 812"; "ViewOst812"
        .MenuItems("&Окно").MenuItems.Add "О&статки биржа"; "ViewOstBirga"
        .MenuItems("&Окно").MenuItems.Add "&Защита"; "ViewProgram"
       End With
       With MenuBars(xlWorksheet).Menus.Add("&Справочник")
        .MenuItems.Add "&Дата"; "DateChange"

        .MenuItems.Add "П&росмотр остатков"; "PrintOst"

        .MenuItems.AddMenu ("&Печать")
        .MenuItems("&Печать").MenuItems.Add "&Депозитарий"; "PrintDepo"
        .MenuItems("&Печать").MenuItems.Add "&Портфель"; "PrintPortfel"
           .MenuItems("&Печать").MenuItems.Add    "&Биржевая    информация";
"PrintBirgaInfo"
            .MenuItems("&Печать").MenuItems.Add     "Отчеты      &клиентам";
"PrintOtchClient"
            .MenuItems("&Печать").MenuItems.Add     "Отчет      &недельный";
"PrintOtchWeek"
            .MenuItems("&Печать").MenuItems.Add      "Отчет      &месячный";
"PrintOtchMonth"
         .MenuItems("&Печать").MenuItems.Add   "Журнал   &лицевого   учета";
"PrintMagazine"

        .MenuItems.AddMenu ("&Окно")
        .MenuItems("&Окно").MenuItems.Add "&Бумаги"; "ViewPaper"
        .MenuItems("&Окно").MenuItems.Add "&Сделки"; "ViewDeal"
        .MenuItems("&Окно").MenuItems.Add "&Клиенты"; "ViewClient"
        .MenuItems("&Окно").MenuItems.Add "Би&ржа"; "ViewBirga"
        .MenuItems("&Окно").MenuItems.Add "&Остатки 812"; "ViewOst812"
        .MenuItems("&Окно").MenuItems.Add "О&статки биржа"; "ViewOstBirga"
        .MenuItems("&Окно").MenuItems.Add "&Защита"; "ViewProgram"
       End With
      End Sub

      Sub ViewPaper()
       Sheets("Бумаги").Select
       Call EndOf
      End Sub
      Sub ViewDeal()
       Sheets("Сделки").Select
       Call EndOf
      End Sub
      Sub ViewClient()
       Sheets("Клиенты").Select
       Call EndOf
      End Sub
      Sub ViewBirga()
       Sheets("Биржа").Select
       Call EndOf
      End Sub
      Sub ViewOst812()
       Sheets("Остатки812").Select
       Call EndOf
      End Sub
      Sub ViewOstBirga()
       Sheets("ОстаткиБиржа").Select
       Call EndOf
      End Sub
      Sub ViewProgram()
       Sheets("Защита").Select
      End Sub

      '------------------------------ Печать Депозитария ---------------
      Sub PrintDepo()
       Dim BumNum; CliNum; i; j; k; a; n; Sign; s As Integer
       Dim Flag As Boolean
       Dim Code As Long
       Dim Str As String
       Dim DepoFil() As Integer
       Dim Num As Integer
       CurDate = Worksheets("Врем").Cells(1; 4)
       Call FormBum
       Sheets("Депо").Select
       BumNum = Worksheets("Врем").Cells(1; 2)
       Cells(3; 5) = Worksheets("Врем").Cells(1; 4)
       Cells(3; 5).NumberFormat = "Д ММММ, ГГГГ"
       Cells(3; 5).HorizontalAlignment = xlCenterAcrossSelection
       Cells(3; 5).Font.Bold = True
       Num = 9
       For i = 1 To BumNum
        Cells(6; i + 1) = Worksheets("Врем").Cells(i; 1)
        Cells(6; i + 1).Font.Bold = True
        Cells(6; i + 1).Interior.ColorIndex = 40
        Cells(Num + 1; i + 1).Interior.ColorIndex = 15
        Cells(Num + 1; i + 1) = ""
        Cells(Num; i + 1).Interior.ColorIndex = 40
        Cells(Num; i + 1) = ""
        Cells(5; i + 1).Interior.ColorIndex = 40
       Next
       Cells(Num; 1).Interior.ColorIndex = 40
       Cells(Num; 1) = "Итого"
       Cells(Num; 1).Font.Bold = True
       Cells(Num; 1).Font.Italic = True
       Cells(Num; 1).HorizontalAlignment = xlCenter
       Cells(Num + 1; 1) = ""
       Cells(Num + 1; 1).Interior.ColorIndex = 15
       CliNum = Worksheets("Врем").Cells(1; 3)
       ReDim DepoArray(CliNum; BumNum)
       ReDim DepoFil(BumNum)
       a = 2
       While Worksheets("Сделки").Cells(a; 1) <> Empty
        i = 1
        While Worksheets("Клиенты").Cells(i + 1; 2) <> _
         Worksheets("Сделки").Cells(a; 2)
         If Worksheets("Клиенты").Cells(i + 1; 2) = Empty Then
          MsgBox "Неверный номер клиента в Окне 'Сделки' строка: " + CStr(a)
          Sheets("Сделки").Select
          Cells(a; 2).Select
          Exit Sub
         End If
         i = i + 1
        Wend

        k = 0
        For j = 1 To BumNum
         If Worksheets("Врем").Cells(j; 1)  =  Worksheets("Сделки").Cells(a;
3) Then
          k = j
          Exit For
         End If
        Next
        If k = 0 Then
         a = a + 1
         GoTo NNN
        End If
        If Not IsEmpty(Worksheets("Сделки").Cells(a; 4)) Then
         Sign = 1
        Else
         Sign = -1
        End If
        If CurDate >= Worksheets("Сделки").Cells(a; 1) Then
         If Worksheets("Сделки").Cells(a; 2) = FilialConst Then
          DepoFil(k) = DepoFil(k) + Sign * Worksheets("Сделки").Cells(a; 6)
         Else
             DepoArray(i;    k)    =    DepoArray(i;    k)    +    Sign    *
Worksheets("Сделки").Cells(a; 6)
         End If
        End If
        a = a + 1
      NNN:
       Wend

       n = 7
       For i = 1 To CliNum
        Flag = False
        For k = 1 To BumNum
         If DepoArray(i; k) > 0 Then Flag = True
        Next
         If Flag Then
          Str = Format(Worksheets("Клиенты").Cells(i + 1; 2); "0000000000")
          Str = Right(Str; 5)
          Cells(n; 1).NumberFormat = "@"
          Cells(n; 1).Font.Bold = True
          Cells(n; 1).HorizontalAlignment = xlCenter
          Cells(n; 1).Font.Italic = False
          Cells(n; 1).Interior.ColorIndex = 2
          Cells(n; 1) = Str
          For k = 1 To BumNum
           If DepoArray(i; k) <> 0 Then
            Cells(n; k + 1) = DepoArray(i; k)
           Else
            Cells(n; k + 1) = ""
           End If
           Cells(n; k + 1).Font.Bold = False
           Cells(n; k + 1).Font.Italic = False
           Cells(n; k + 1).Interior.ColorIndex = 2
          Next
          If n = 7 Then
           n = n + 4
          Else
            n = n + 1
          End If
         End If
       Next
       'расчет по филиалу
       Cells(8; 1) = "Филиал"
       Cells(8; 1).Font.Bold = True
       Cells(8; 1).HorizontalAlignment = xlCenter
       Cells(8; 1).Font.Italic = False
       Cells(8; 1).Interior.ColorIndex = 2
       For k = 1 To BumNum
        If DepoFil(k) <> 0 Then
         Cells(8; k + 1) = DepoFil(k)
        Else
         Cells(8; k + 1) = ""
        End If
        Cells(8; k + 1).Font.Bold = False
        Cells(8; k + 1).Font.Italic = False
        Cells(8; k + 1).Interior.ColorIndex = 2
       Next

       For i = 1 To BumNum
        Cells(n; i + 1).Interior.ColorIndex = 40
        s = 0
        For k = 11 To n - 1
         s = s + Cells(k; i + 1)
        Next
        Cells(n; i + 1).Value = s
       Next
       For i = 1 To BumNum
        Cells(9; i + 1) = Cells(7; i + 1) + Cells(8; i + 1)
       Next
       Cells(n; 1).Interior.ColorIndex = 40
       Cells(n; 1) = "Итого 9998"
       Cells(n; 1).Font.Bold = True
       Cells(n; 1).Font.Italic = True
       Range("A1:Z200").Borders(xlLeft).LineStyle = xlNone
       Range("A1:Z200").Borders(xlRight).LineStyle = xlNone
       Range("A1:Z200").Borders(xlTop).LineStyle = xlNone
       Range("A1:Z200").Borders(xlBottom).LineStyle = xlNone
       Range("A1:Z200").BorderAround LineStyle:=xlNone
       Range(Cells(5; 1); Cells(n;  BumNum  +  1)).Borders(xlLeft).Weight  =
xlThin
       Range(Cells(5; 1); Cells(n; BumNum  +  1)).Borders(xlRight).Weight  =
xlThin
       Range(Cells(5; 1);  Cells(n;  BumNum  +  1)).Borders(xlTop).Weight  =
xlThin
       Range(Cells(5; 1); Cells(n; BumNum +  1)).Borders(xlBottom).Weight  =
xlThin
         Range(Cells(5;   1);    Cells(n;    BumNum    +    1)).BorderAround
Weight:=xlMedium
       Range(Cells(n + 1; 1); Cells(100; 30)).Delete shift:=xlToLeft
       Range(Cells(1; BumNum + 2); Cells(100; 30)).Delete shift:=xlToLeft
       If DialogPrint("Депо"; 1) Then Exit Sub
       Call EditOstBirga(DilerConst)
      End Sub

      '-------------------------------- Печать Отчеты клиентам -----------
      Sub PrintOtchClient()
       Dim Sheet; Ost812 As Object
       Dim i; j; d; a; Col; m; MM; NN; MMM; k; b; q As Long
       Dim FlagBuy; FlagCell; FlagDeal; FlagDepo As Boolean
       Dim CliNum As Long
       Dim ComStr; StrComS As String
       Dim BumNum; z; z1; Index As Integer
       Dim s; sum; SumBuy; Ost; SumCom; ComBirga; ComDiler; ComSum As Double
       Dim Com As Double
       Dim OstIn; OstOut; OstBegin; OstEnd As Double
       Dim RowNum As Long
       Dim OstInDate; OstOutDate As String
       Dim DoFlag As Boolean
       Dim Auk As Boolean
       Set Sheet = Worksheets("Сделки")
       Sheet.Range("A2").Sort Key1:=Sheet.Range("A2");  Order1:=xlAscending;
_
                              Key2:=Sheet.Range("B2");  Order2:=xlAscending;
_
                              Key3:=Sheet.Range("D2");  Order3:=xlAscending;
_
                              Header:=xlYes; OrderCustom:=1; _
                              MatchCase:=False; Orientation:=xlTopToBottom
       CurDate = Worksheets("Врем").Cells(1; 4)
       Worksheets("ОтчетыИнвесторам").Select
       i = 2
       FlagDeal = False
       FlagBuy = True
       FlagCell = True
       NN = 29 ' начало
       m = NN
       Range(Cells(NN - 1; 2); Cells(NN + 200; 6)).Delete shift:=xlToLeft
       Rows(CStr(NN - 1) + ":" + CStr(NN - 1)).RowHeight = 28
       Rows(CStr(NN - 1) + ":" + CStr(NN - 1)).WrapText = True
       Rows(CStr(NN -  1)  +  ":"  +  CStr(NN  -  1)).HorizontalAlignment  =
xlCenter
       Rows(CStr(NN - 1) + ":" + CStr(NN - 1)).VerticalAlignment = xlBottom
       Cells(NN - 1; 2) = "№ выпуска"
       Cells(NN - 1; 3) = "Дата погашения"
       Cells(NN - 1; 4) = "Цена сделки"
       Cells(NN - 1; 5) = "Количество"
       Cells(NN - 1; 6) = "Сумма сделки"
       Cells(NN - 3; 3) = "Совершенные сделки на рынке РКО"
       Cells(NN - 3; 3).Font.Bold = True
       sum = 0
       SumBuy = 0
       SumCom = 0
       ComBirga = 0
       Call FormBum
       BumNum = Worksheets("Врем").Cells(1; 2)
       ReDim BumArray(BumNum)
       ReDim BumArrayV(BumNum)
       Index = CInt(InputBox("Введите номер 1-го ордера"))
       Do While Sheet.Cells(i; 1) <> Empty
        If Sheet.Cells(i; 1) = CurDate And Sheet.Cells(i; 2)  <>  DilerConst
Then
         FlagDeal = True
         If FlagBuy And Sheet.Cells(i; 4) <> Empty Then
          Покупка = True
          CliNum = Sheet.Cells(i; 2)
          Cells(m; 2) = "Покупка"
          Cells(m; 2).HorizontalAlignment = xlLeft
          Range(Cells(m; 2); Cells(m; 6)).Interior.ColorIndex = 15
          m = m + 1
          MM = m
          FlagBuy = False
         End If
         If FlagCell And Sheet.Cells(i; 4) = Empty Then
          If Not FlagBuy Then
           s = 0
           Col = 0
           SumCom = 0
           ComBirga = 0
           For a = MM To m - 1
            Cells(a; 6) = Cells(a; 4) * Cells(a; 5) * 10
            If Cells(a; 4) <> 100 Then
             SumCom = SumCom + Cells(a; 4) * Cells(a; 5) * 10
             ComBirga = ComBirga + _
               CDbl(Format(Cells(a;   4)   *   Cells(a;   5)   *    0,1    *
Worksheets("Инфо").Cells(1; 2) + 0,001; "0,00"))
            Else
             Погашение = True
            End If
            Cells(a; 6).NumberFormat = "# ###"
            s = s + Cells(a; 6)
            Col = Col + Cells(a; 5)
           Next a
           sum = sum + s
           SumBuy = s
           Cells(m; 6) = s
           Cells(m; 6).NumberFormat = "# ###"
           Cells(m; 5) = Col
           Cells(m; 2) = "Итого"
           m = m + 1
          End If
          CliNum = Sheet.Cells(i; 2)
          Cells(m; 2) = "Продажа"
          Продажа = True
          Cells(m; 2).HorizontalAlignment = xlLeft
          Range(Cells(m; 2); Cells(m; 6)).Interior.ColorIndex = 15
          m = m + 1
          MM = m
          FlagCell = False
         End If
          Cells(m; 2) = Sheet.Cells(i; 3)
          q = 2
          While Worksheets("Бумаги").Cells(q; 1) <> Empty
           If Worksheets("Бумаги").Cells(q; 1) = Cells(m; 2) Then
            Cells(m; 3) = Worksheets("Бумаги").Cells(q; 3)
            Cells(m; 3).NumberFormat = "ДД.ММ.ГГ"
           End If
           q = q + 1
          Wend
          If Sheet.Cells(i; 4) <> Empty Then
           Cells(m; 4) = Sheet.Cells(i; 4)
          Else
           Cells(m; 4) = Sheet.Cells(i; 5)
          End If
          Cells(m; 4).NumberFormat = "0,00"
          Cells(m; 5) = Sheet.Cells(i; 6)
          m = m + 1
         If CliNum <> Sheet.Cells(i + 1; 2) Or  Sheet.Cells(i  +  1;  1)  <>
CurDate Then
           s = 0
           Col = 0
           For a = MM To m - 1
            Cells(a; 6) = Cells(a; 4) * Cells(a; 5) * 10
            If Cells(a; 4) <> 100 Then
             SumCom = SumCom + Cells(a; 4) * Cells(a; 5) * 10
             ComBirga = ComBirga + _
               CDbl(Format(Cells(a;   4)   *   Cells(a;   5)   *    0,1    *
Worksheets("Инфо").Cells(1; 2) + 0,001; "0,00"))
            Else
             Погашение = True
            End If

            Cells(a; 6).NumberFormat = "# ###,00"
            s = s + Cells(a; 6)
            Col = Col + Cells(a; 5)
           Next a
           sum = sum + s
           If FlagCell Then SumBuy = s
           Cells(m; 6) = s
           Cells(m; 6).NumberFormat = "# ###,00"
           Cells(m; 5) = Col
           Cells(m; 2) = "Итого"
           Cells(5; 4) = CliNum
           If CliNum = FilialConst Then Cells(5; 4) = DilerConst
           k = 2
           While Worksheets("Клиенты").Cells(k; 1) <> Empty
            If Worksheets("Клиенты").Cells(k; 2) = CliNum Then
             Cells(4; 4) = Worksheets("Клиенты").Cells(k; 1)
            End If
            k = k + 1
           Wend

           Range(Cells(NN - 1;  2);  Cells(m;  6)).Borders(xlLeft).Weight  =
xlThin
           Range(Cells(NN - 1; 2);  Cells(m;  6)).Borders(xlRight).Weight  =
xlThin
           Range(Cells(NN -  1;  2);  Cells(m;  6)).Borders(xlTop).Weight  =
xlThin
           Range(Cells(NN - 1; 2); Cells(m;  6)).Borders(xlBottom).Weight  =
xlThin
             Range(Cells(NN   -    1;    2);    Cells(m;    6)).BorderAround
Weight:=xlMedium

           For b = 1 To BumNum
            BumArray(b) = 0
            BumArrayV(b) = 0
           Next
           b = 2
           While Worksheets("Сделки").Cells(b; 1) <> Empty
            If CurDate >= Worksheets("Сделки").Cells(b; 1) And _
              CliNum = Worksheets("Сделки").Cells(b; 2) Then
             z = 0
             For z1 = 1 To BumNum
                    If       Worksheets("Врем").Cells(z1;        1)        =
Worksheets("Сделки").Cells(b; 3) Then
                z = z1
              Exit For
              End If
             Next
             If z <> 0 Then
              If Not IsEmpty(Worksheets("Сделки").Cells(b; 4)) Then
               If CurDate > Worksheets("Сделки").Cells(b; 1) Then
                BumArrayV(z) = BumArrayV(z) +  Worksheets("Сделки").Cells(b;
6)
               End If
               BumArray(z) = BumArray(z) + Worksheets("Сделки").Cells(b; 6)
              Else
               If CurDate > Worksheets("Сделки").Cells(b; 1) Then
                BumArrayV(z) = BumArrayV(z) -  Worksheets("Сделки").Cells(b;
6)
               End If
               BumArray(z) = BumArray(z) - Worksheets("Сделки").Cells(b; 6)
              End If
             End If
            End If
            b = b + 1
           Wend
           ' M+4
           MMM = m + 5
           Rows(CStr(m + 1) + ":" + CStr(m + 200)).Delete
           FlagDepo = False
           For b = 1 To BumNum
            If BumArray(b) > 0 Or BumArrayV(b) > 0 Then
             FlagDepo = True
             Cells(MMM; 2) = Worksheets("Врем").Cells(b; 1)
             If BumArrayV(b) < BumArray(b) Then
              Cells(MMM; 4) = BumArray(b) - BumArrayV(b)
             Else
              If BumArrayV(b) > BumArray(b) Then
               Cells(MMM; 5) = BumArrayV(b) - BumArray(b)
              End If
             End If
             Cells(MMM; 3) = BumArrayV(b)
             Cells(MMM; 6) = BumArray(b)
             MMM = MMM + 1
            End If
           Next
           If FlagDepo Then
            Rows(CStr(m + 4) + ":" + CStr(m + 4)).RowHeight = 28
            Rows(CStr(m + 4) + ":" + CStr(m + 4)).WrapText = True
            Rows(CStr(m + 4) + ":"  +  CStr(m  +  4)).HorizontalAlignment  =
xlCenter
            Rows(CStr(m + 4)  +  ":"  +  CStr(m  +  4)).VerticalAlignment  =
xlBottom
            Cells(m + 4; 2) = "№ выпуска"
            Cells(m + 4; 3) = "Входящий остаток"
            Cells(m + 4; 4) = "Куплено"
            Cells(m + 4; 5) = "Продано/ Погашено"
            Cells(m + 4; 6) = "Исходящий остаток"
            Cells(m + 2; 3).Font.Bold = True
            Cells(m + 2; 3) =  "Количество  бумаг,  принадлежащих  Инвестору
(штук)"
            Range(Cells(m + 4; 2); Cells(MMM - 1; 6)).Borders(xlLeft).Weight
= xlThin
               Range(Cells(m     +     4;     2);     Cells(MMM     -     1;
6)).Borders(xlRight).Weight = xlThin
            Range(Cells(m + 4; 2); Cells(MMM - 1;  6)).Borders(xlTop).Weight
= xlThin
               Range(Cells(m     +     4;     2);     Cells(MMM     -     1;
6)).Borders(xlBottom).Weight = xlThin
             Range(Cells(m  +  4;  2);  Cells(MMM  -   1;   6)).BorderAround
Weight:=xlMedium
           End If
      ' ------------------------------------------------------
      ' - расчет остатков

       Set Ost812 = Worksheets("Остатки812")
                 Ost812.Range("B2").Sort           Key1:=Ost812.Range("B2");
Order1:=xlAscending; _
                                                   Key2:=Ost812.Range("A2");
Order2:=xlDescending; _
                               Header:=xlYes; OrderCustom:=1; _
                               MatchCase:=False; Orientation:=xlTopToBottom
       OstIn = 0
       OstOut = 0
       OstBegin = 0
       OstInDate = ""
       OstOutDate = ""
       RowNum = 0
       k = 2
       DoFlag = True
       Do While Ost812.Cells(k; 1) <> Empty
        If Ost812.Cells(k; 2) = CliNum And DoFlag Then
         If Ost812.Cells(k; 1) < CurDate Then
          OstBegin = Ost812.Cells(k; 8)
         Else
          Do While Ost812.Cells(k; 1) <> Empty
           If Ost812.Cells(k; 2) <> CliNum Then Exit Do
           If Ost812.Cells(k; 1) = CurDate Then
            OstBegin = Ost812.Cells(k; 3)
            OstIn = Ost812.Cells(k; 4)
            OstInDate = Ost812.Cells(k; 5)
            OstOut = Ost812.Cells(k; 6)
            OstOutDate = Ost812.Cells(k; 7)
            RowNum = k
            Exit Do
           End If
           k = k + 1
          Loop
         End If
         DoFlag = False
        End If
        k = k + 1
       Loop
       If RowNum = 0 Then RowNum = k
       k = RowNum

      ' - начало таблицы
           With DialogSheets("ДиалогКлиент")
            .Labels(8).Text = Cells(4; 4) ' Клиент
            .Labels(9).Text = sum ' Сумма сделки
            .Labels(10).Text = CurDate ' Дата текущая
            .Labels(17).Text = CliNum
            If CliNum = FilialConst Then .Labels(17).Text = DilerConst
            .EditBoxes(1).Text = "0" ' Сумма списания
            .EditBoxes(1).InputType = xlNumber
            .EditBoxes(2).Text = CurDate ' Дата сделки
            .EditBoxes(7).Text = OstOutDate ' списано (дата)
            .EditBoxes(8).Text = OstOut ' списано (сумма)
            .EditBoxes(8).InputType = xlNumber
            .EditBoxes(9).Text = OstInDate ' перечислено (дата)
            .EditBoxes(10).Text = OstIn ' перечислено (сумма)
            .EditBoxes(10).InputType = xlNumber
            Com = 0,00015
            Select Case SumCom
             Case Is < 36000
              Com = 0,005
             Case Is < 51000
              Com = 0,004
             Case Is < 101000
              Com = 0,003
             Case Is < 301000
              Com = 0,002
             Case Is < 501000
              Com = 0,001
             Case Is < 1001000
              Com = 0,0005
             Case Is < 3001000
              Com = 0,00025
            End Select
            If Cells(4; 4) = "Универсалбанк" Then Com = 0
            .EditBoxes(3).Text = Com ' Комиссия дилера
            .EditBoxes(3).InputType = xlNumber
            .EditBoxes(4).Text = "0" ' Сумма вознаграждения дилера
            .EditBoxes(4).InputType = xlNumber
            .EditBoxes(5).Text = "" ' Запись о вознаграждении
            .EditBoxes(6).Text = OstBegin ' Остаток на 812 счете клиента
            .EditBoxes(6).InputType = xlNumber
            Cells(MMM +  3;  1)  =  "Начальник  инвестиционно-аналитического
отдела_________________"
            Cells(MMM + 3; 6) = ""

      Again:
            Просмотр = False
            ExitVar = False
            Button = False
            .Show
            If .EditBoxes(1).Text = "" Then .EditBoxes(1).Text = 0
            If .EditBoxes(3).Text = "" Then .EditBoxes(3).Text = 0
            If .EditBoxes(4).Text = "" Then .EditBoxes(4).Text = 0
            If .EditBoxes(6).Text = "" Then .EditBoxes(6).Text = 0
            If .EditBoxes(8).Text = "" Then .EditBoxes(8).Text = 0
            If .EditBoxes(10).Text = "" Then .EditBoxes(10).Text = 0
            Cells(21; 1) = .EditBoxes(5).Text ' Запись о вознаграждении
            Cells(21; 1).Font.Italic = True
            Cells(6; 4) = .EditBoxes(2).Text ' Дата сделки

      ' занесение данных в итоговую таблицу
            Cells(10; 6) = .EditBoxes(6).Text ' Входящий остаток
            OstBegin = .EditBoxes(6).Text
            Cells(14; 6) = SumBuy
            Cells(15; 6) = sum - SumBuy
            ComStr = Format(SumCom * .EditBoxes(3).Text; "0,00")
            ComDiler = CDbl(ComStr)
            Cells(16; 6) = ComBirga
            Cells(18; 6) = ComDiler
            Cells(20; 6) = .EditBoxes(4).Text
            Cells(11; 6) = .EditBoxes(8).Text
            OstOut = .EditBoxes(8).Text
            OstIn = .EditBoxes(10).Text
            Cells(12; 6) = .EditBoxes(10).Text
             Cells(13;  6)  =  .EditBoxes(6).Text  -  .EditBoxes(8).Text   +
.EditBoxes(10).Text
            Cells(11; 1)  =  "2.Списано  на  р/с  /  выдано  наличными  "  +
.EditBoxes(7).Text
            OstInDate = .EditBoxes(9).Text
            OstOutDate = .EditBoxes(7).Text
            Cells(12; 1) = "3.Перечислено на покупку " + .EditBoxes(9).Text
            Cells(22; 6) = 2 * SumBuy - sum + ComBirga + ComDiler
            Cells(23; 6) = .EditBoxes(1).Text
             Cells(24;  6)  =  .EditBoxes(6).Text  -  .EditBoxes(8).Text   +
.EditBoxes(10).Text - _
                            (2 * SumBuy - sum + ComBirga + ComDiler) - _
                            .EditBoxes(1).Text - .EditBoxes(4).Text
            OstEnd = Cells(24; 6)

            Ost812.Cells(k; 1) = CurDate
            Ost812.Cells(k; 2) = CliNum
            Ost812.Cells(k; 3) = OstBegin
            Ost812.Cells(k; 4) = OstIn
            Ost812.Cells(k; 5) = OstInDate
            Ost812.Cells(k; 6) = OstOut
            Ost812.Cells(k; 7) = OstOutDate
            Ost812.Cells(k; 8) = OstEnd
            Ost812.Cells(k; 9) = Cells(14; 6) + Cells(15; 6)
            Ost812.Cells(k; 10) = Cells(16; 6)
            Ost812.Cells(k; 11) = Cells(18; 6)
            Call EditOstBirga(CliNum)

      ' конец занесения данных
           If Просмотр Then
            Worksheets("ОтчетыИнвесторам").PrintPreview
            GoTo Again
           End If
           If Button Then ActiveWindow.SelectedSheets.PrintOut copies:=2
           If ExitVar Then Exit Sub
           End With
      ' печать мемориальных ордеров
            Dim StrS As String
            Auk = False
            With DialogSheets("ДиалогОперация")
             .Show
             If .OptionButtons(1).Value = xlOn Then StrS = "Покупка"
             If .OptionButtons(2).Value = xlOn Then StrS = "Продажа"
             If .OptionButtons(3).Value = xlOn Then StrS = "Погашение"
             If .OptionButtons(4).Value  =  xlOn  Then  StrS  =  "Покупка  /
Продажа"
             If .OptionButtons(5).Value  =  xlOn  Then  StrS  =  "Покупка  /
Погашение"
             If .OptionButtons(5).Value = xlOn Then Auk = True
            End With
            Worksheets("Ордер").Select
            Dim Pos812 As Integer
            Dim Page; Page1 As Object
            Set Page = Worksheets("ОтчетыИнвесторам")
            Set Page1 = Worksheets("Клиенты")
            Pos812 = 2

               While    (Page1.Cells(Pos812;    1)     <>     Empty)     And
(Worksheets("Клиенты").Cells(Pos812; 2) <> CliNum)
              Pos812 = Pos812 + 1
            Wend

            If Page.Cells(14; 6) - Page.Cells(15; 6) > 0 Then
             If MemoOrder(Index; Page.Cells(14; 6) - Page.Cells(15;  6);  6;
7; Pos812; _
                StrS + " РКО за " + CStr(CurDate)) Then Exit Sub
              Index = Index + 1
            Else
             If MemoOrder(Index; Page.Cells(15; 6) - Page.Cells(14;  6);  7;
6; Pos812; _
               StrS + " РКО за " + CStr(CurDate)) Then Exit Sub
             Index = Index + 1
            End If

            Dim SumS As Double
            SumS = Page.Cells(16; 6) + Page.Cells(18; 6) + Page.Cells(20; 6)
            If SumS > 0 Then
             StrS = ""
             If Page.Cells(18; 6) > 0 Then  StrS  =  "Комиссия  Дилера  "  +
CStr(Page.Cells(18; 6)) + " в т.ч. НДС " + _
              CStr(Format(Page.Cells(18; 6) / 6; "0,00"))
             If Page.Cells(16; 6) > 0 And Not Auk  Then  StrS  =  StrS  +  "
возмещение ком. ВКБ " + CStr(Page.Cells(16; 6)) + " в т.ч. НДС " + _
              CStr(Format(Page.Cells(16; 6) / 6; "0,00"))
              If CliNum = FilialConst Then
               If MemoOrder(Index; SumS; 6; 7; Pos812; StrS) Then Exit Sub
              Else
               If Auk Then
                StrS = StrS + " по приобретению на аукционе"
                If MemoOrder(Index; Page.Cells(18; 6) +  Page.Cells(20;  6);
6; 12; Pos812; StrS) Then Exit Sub
                StrS = "Возмещение ком. ВКБ " + CStr(Page.Cells(16; 6)) +  "
в т.ч. НДС " + _
                        CStr(Format(Page.Cells(16; 6) / 6; "0,00"))
                Index = Index + 1
                If MemoOrder(Index; Page.Cells(16; 6); 6; 8;  Pos812;  StrS)
Then Exit Sub
               Else
                If MemoOrder(Index; SumS; 6; 8; Pos812; StrS) Then Exit Sub
               End If
              End If
              Index = Index + 1
            End If
            If CliNum <> FilialConst Then
             If Len(StrComS) > 0 Then
              StrComS = StrComS + "," + CStr(Right(CliNum; 3))
             Else
              StrComS = StrComS + CStr(Right(CliNum; 3))
             End If
            End If
            If CliNum <> FilialConst Then ComSum = ComSum  +  Page.Cells(16;
6)
            Worksheets("ОтчетыИнвесторам").Select
      '---------------

           Rows(CStr(m + 4) + ":" + CStr(m + 4)).RowHeight = 13,8
           Rows(CStr(m + 4) + ":" + CStr(m + 4)).WrapText = False
           Rows(CStr(m + 4) +  ":"  +  CStr(m  +  4)).HorizontalAlignment  =
xlRight
           Rows(CStr(m +  4)  +  ":"  +  CStr(m  +  4)).VerticalAlignment  =
xlBottom

           Range(Cells(NN; 2); Cells(NN + 200; 6)).Delete shift:=xlToLeft
           m = NN
           FlagBuy = True
           FlagCell = True
           ComBirga = 0
           sum = 0
           SumBuy = 0
           SumCom = 0
          End If
         End If
         i = i + 1
       Loop
       If Not FlagDeal Then
        MsgBox "Сделок в текущий день не было"
       Else
        If ComSum > 0 Then
         Worksheets("Ордер").Select
         If MemoOrder(Index; ComSum; 9; 7; 2; _
          "Комиссия ВКБ по инвесторам " + StrComS + " в т.ч. НДС " + _
          CStr(Format(ComSum / 6; "0,00"))) Then Exit Sub
        End If
       End If
      End Sub

      '-------------------------------- Печать Отчеты недельные ----------
      Sub PrintOtchWeek()
       Dim BumNum; CliNum; i; j; k; a; n; Sign; s As Integer
       Dim Flag As Boolean
       Dim Code As Long
       Dim Str As String
       Dim DepoFil() As Integer
       Dim Num As Integer
       CurDate = Worksheets("Врем").Cells(1; 4)
       Call FormBum
       Sheets("ОтчетНедельный").Select
       BumNum = Worksheets("Врем").Cells(1; 2)
       Num = 8
       For i = 1 To BumNum
        Cells(6; i + 1) = Worksheets("Врем").Cells(i; 1)
        Cells(6; i + 1).Font.Bold = True
        Cells(6; i + 1).Interior.ColorIndex = 40
        Cells(Num; i + 1).Interior.ColorIndex = 15
        Cells(Num; i + 1) = ""
        Cells(5; i + 1).Interior.ColorIndex = 40
       Next
       Cells(Num; 1).Interior.ColorIndex = 15
       Cells(Num; 1) = ""
       Cells(5; 1).Interior.ColorIndex = 40
       Cells(5; 1) = ""
       Cells(6; 1).Interior.ColorIndex = 40
       Cells(6; 1).Font.Bold = True
       Cells(6; 1) = "№ бумаги"
       Cells(7; 1) = "Дилер"
       Cells(6; 1).HorizontalAlignment = xlCenter
       Cells(7; 1).HorizontalAlignment = xlCenter
       Cells(7; 1).Font.Bold = True
       CliNum = Worksheets("Врем").Cells(1; 3)
       ReDim DepoArray(CliNum; BumNum)
       a = 2
       While Worksheets("Сделки").Cells(a; 1) <> Empty
        i = 1
        While Worksheets("Клиенты").Cells(i + 1; 2) <> _
         Worksheets("Сделки").Cells(a; 2)
         If Worksheets("Клиенты").Cells(i + 1; 2) = Empty Then
          MsgBox "Неверный номер клиента в Окне 'Сделки'"
          Exit Sub
         End If
         i = i + 1
        Wend
        k = 0
        For j = 1 To BumNum
         If Worksheets("Врем").Cells(j; 1)  =  Worksheets("Сделки").Cells(a;
3) Then
          k = j
          Exit For
         End If
        Next
        If k = 0 Then
         a = a + 1
         GoTo NNN
        End If
        If Not IsEmpty(Worksheets("Сделки").Cells(a; 4)) Then
         Sign = 1
        Else
         Sign = -1
        End If
        If CurDate >= Worksheets("Сделки").Cells(a; 1) Then
            DepoArray(i;    k)    =    DepoArray(i;    k)    +    Sign     *
Worksheets("Сделки").Cells(a; 6)
        End If
        a = a + 1
      NNN:
       Wend
       For k = 1 To BumNum
        DepoArray(1; k) = DepoArray(1; k) + DepoArray(2; k)
        DepoArray(2; k) = 0
       Next k
       n = 7
       For i = 1 To CliNum
        Flag = False
        For k = 1 To BumNum
         If DepoArray(i; k) > 0 Then Flag = True
        Next
         If Flag Then
          If n > 7 Then
           Str = Format(Worksheets("Клиенты").Cells(i + 1; 2); "0000000000")
           Str = Right(Str; 5)
           Cells(n; 1).NumberFormat = "@"
           Cells(n; 1).Font.Bold = True
           Cells(n; 1).HorizontalAlignment = xlCenter
           Cells(n; 1).Font.Italic = False
           Cells(n; 1).Interior.ColorIndex = 2
           Cells(n; 1) = Str
          End If
          For k = 1 To BumNum
           If DepoArray(i; k) <> 0 Then
            Cells(n; k + 1) = DepoArray(i; k)
           Else
            Cells(n; k + 1) = ""
           End If
           Cells(n; k + 1).Font.Bold = False
           Cells(n; k + 1).Font.Italic = False
           Cells(n; k + 1).Interior.ColorIndex = 2
          Next
          If n = 7 Then
           n = n + 2
          Else
            n = n + 1
          End If
         End If
       Next

       For i = 1 To BumNum
        Cells(n; i + 1).Interior.ColorIndex = 40
        s = 0
        For k = 9 To n - 1
         s = s + Cells(k; i + 1)
        Next
        Cells(n; i + 1).Value = s
       Next
       Cells(n; 1).Interior.ColorIndex = 40
       Cells(n; 1) = "Итого по инвесторам"
       Cells(n; 1).Font.Bold = True
       Cells(n; 1).Font.Italic = True
       Range("A1:Z200").Borders(xlLeft).LineStyle = xlNone
       Range("A1:Z200").Borders(xlRight).LineStyle = xlNone
       Range("A1:Z200").Borders(xlTop).LineStyle = xlNone
       Range("A1:Z200").Borders(xlBottom).LineStyle = xlNone
       Range("A1:Z200").BorderAround LineStyle:=xlNone
       Range(Cells(5; 1); Cells(n;  BumNum  +  1)).Borders(xlLeft).Weight  =
xlThin
       Range(Cells(5; 1); Cells(n; BumNum  +  1)).Borders(xlRight).Weight  =
xlThin
       Range(Cells(5; 1);  Cells(n;  BumNum  +  1)).Borders(xlTop).Weight  =
xlThin
       Range(Cells(5; 1); Cells(n; BumNum +  1)).Borders(xlBottom).Weight  =
xlThin
         Range(Cells(5;   1);    Cells(n;    BumNum    +    1)).BorderAround
Weight:=xlMedium
       Range(Cells(n + 1; 1); Cells(100; 30)).Delete shift:=xlToLeft
       Range(Cells(1; BumNum + 2); Cells(100; 30)).Delete shift:=xlToLeft
       Range("a2") = "на " + CStr(CurDate)

       Range(Cells(n +  2;  1);  Cells(n  +  3;  BumNum  +  1)).BorderAround
Weight:=xlMedium
       Cells(n + 2;  1)  =  "Количество  перечисленных  облигаций  на  счета
""Депо"""
       Cells(n + 3; 1) = "без совершения сделок купли-продажи"
       Cells(n + 2; 1).Font.Bold = True
       Cells(n + 3; 1).Font.Bold = True
       Cells(n + 5; 1).Font.Size = 12
       Cells(n + 5; 1) = "Ответственное лицо Дилера " + _
                                                                           "
_________________________ "
       Cells(n + 3; BumNum + 1) = 0
       Cells(n + 3; BumNum + 1).Font.Bold = True
       If DialogPrint("ОтчетНедельный"; 2) Then Exit Sub
      End Sub


      '-------------------------------- Печать Отчеты Месячные -----------
      Sub PrintOtchMonth()
       Dim DateBegin; DateEnd; DateMas() As Date
       Dim i; k; m; NumberClients; kk As Long
       Dim Sign; BumNum; Row; Col; Num; sum As Integer
       Dim DateFlag; Flag; CliInput(); BumInput() As Boolean
       Dim Bum(ConstMaxBum) As Long
       Dim mas() As Integer
       Dim Sheet As Object
       Dim Str As String
       With DialogSheets("ДиалогМесОтчет")
        .EditBoxes(1).InputType = xlDate
        .EditBoxes(2).InputType = xlDate
        .Show
        If Not Button Then Exit Sub
        If IsDate(.EditBoxes(1).Text) = False Or _
         IsDate(.EditBoxes(2).Text) = False Then
         MsgBox "Неверно введены даты"
         Exit Sub
        End If
        DateBegin = CDate(.EditBoxes(1).Text)
        DateEnd = CDate(.EditBoxes(2).Text)
        If DateBegin >= DateEnd Then
         MsgBox "Даты не пересекаются"
         Exit Sub
        End If
       End With
       Set Sheet = Worksheets("Бумаги")
       i = 2
       BumNum = 0
       While Sheet.Cells(i; 1) <> Empty
        If (Sheet.Cells(i; 2) < DateBegin And Sheet.Cells(i; 3) > DateBegin)
Or _
           (Sheet.Cells(i; 2) < DateEnd And Sheet.Cells(i; 3) > DateEnd)  Or
_
           (Sheet.Cells(i; 2) > DateBegin And Sheet.Cells(i; 3)  <  DateEnd)
Then
         Bum(BumNum + 1) = Sheet.Cells(i; 1)
         BumNum = BumNum + 1
        End If
        i = i + 1
       Wend
       Set Sheet = Worksheets("Клиенты")
       i = 2
       k = 0
       While Sheet.Cells(i; 1) <> Empty
        If Sheet.Cells(i; 2) > k And Sheet.Cells(i; 2) <> FilialConst Then
         k = Sheet.Cells(i; 2)
        End If
        i = i + 1
       Wend
       NumberClients = k - DilerConst
       DateFlag = True
       ReDim mas(NumberClients; BumNum * 7)
       ReDim DateMas(NumberClients; BumNum)
       ReDim CliInput(NumberClients)
       ReDim BumInput(BumNum)
       i = 2
       Worksheets("Сделки").Select
       While Cells(i; 1) <> Empty
        If Cells(i; 2) <> DilerConst And Cells(i; 2) <> FilialConst Then
         If Cells(i; 1) < DateBegin Then
          Flag = True
          For k = 1 To BumNum              ' поиск номера бумаги
           If Cells(i; 3) = Bum(k) Then
            Flag = False
            Exit For
           End If
          Next k
          If Flag Then GoTo cont
          Sign = 1
          If IsEmpty(Cells(i; 4)) Then Sign = -1
          mas(Cells(i; 2) - DilerConst; (k - 1) * 7 + 1) = _
           mas(Cells(i; 2) - DilerConst; (k - 1) * 7 + 1) + Sign *  Cells(i;
6)
         End If
         If Cells(i; 1) >= DateBegin And DateFlag Then
          For k = 1 To NumberClients
           For m = 1 To BumNum
            mas(k; (m - 1) * 7 + 2) = mas(k; (m - 1) * 7 + 1)
           Next m
          Next k
          DateFlag = False
         End If
         If Cells(i; 1) >= DateBegin And Cells(i; 1) <= DateEnd Then
          Flag = True
          For k = 1 To BumNum
           If Cells(i; 3) = Bum(k) Then
            Flag = False
            Exit For
           End If
          Next k
          If Flag Then GoTo cont
          If Cells(i; 7) <> "списание" And Cells(i; 7) <> "зачисление" Then
           If Not IsEmpty(Cells(i; 4)) Then
            mas(Cells(i; 2) - DilerConst; (k - 1) * 7 + 3) = _
             mas(Cells(i; 2) - DilerConst; (k - 1) * 7 + 3) + Cells(i; 6)
           Else
            mas(Cells(i; 2) - DilerConst; (k - 1) * 7 + 4) = _
             mas(Cells(i; 2) - DilerConst; (k - 1) * 7 + 4) + Cells(i; 6)
           End If
           If DateMas(Cells(i; 2) - DilerConst; k) <> Cells(i; 1) Then
            DateMas(Cells(i; 2) - DilerConst; k) = Cells(i; 1)
            mas(Cells(i; 2) - DilerConst; (k - 1) * 7 + 5) = _
             mas(Cells(i; 2) - DilerConst; (k - 1) * 7 + 5) + 1
           End If
          End If
          If Cells(i; 7) = "списание" Then
            mas(Cells(i; 2) - DilerConst; (k - 1) * 7 + 6) = _
             mas(Cells(i; 2) - DilerConst; (k - 1) * 7 + 6) + Cells(i; 6)
          End If
          If Cells(i; 7) = "зачисление" Then
            mas(Cells(i; 2) - DilerConst; (k - 1) * 7 + 7) = _
             mas(Cells(i; 2) - DilerConst; (k - 1) * 7 + 7) + Cells(i; 6)
          End If
          Sign = 1
          If IsEmpty(Cells(i; 4)) Then Sign = -1
          mas(Cells(i; 2) - DilerConst; (k - 1) * 7 + 2) = _
           mas(Cells(i; 2) - DilerConst; (k - 1) * 7 + 2) + Sign *  Cells(i;
6)
         End If
        End If
      cont:
        i = i + 1
       Wend
       For i = 1 To NumberClients
        CliInput(i) = False
        For k = 1 To BumNum
         If mas(i; (k - 1) * 7 + 1) > 0 Or _
            mas(i; (k - 1) * 7 + 2) > 0 Or _
            mas(i; (k - 1) * 7 + 3) > 0 Or _
            mas(i; (k - 1) * 7 + 4) > 0 Or _
            mas(i; (k - 1) * 7 + 5) > 0 Or _
            mas(i; (k - 1) * 7 + 6) > 0 Or _
            mas(i; (k - 1) * 7 + 7) > 0 Then CliInput(i) = True
        Next k
       Next i
       For k = 1 To BumNum
        BumInput(k) = False
        For i = 1 To NumberClients
         If mas(i; (k - 1) * 7 + 1) > 0 Or _
            mas(i; (k - 1) * 7 + 2) > 0 Or _
            mas(i; (k - 1) * 7 + 3) > 0 Or _
            mas(i; (k - 1) * 7 + 4) > 0 Or _
            mas(i; (k - 1) * 7 + 5) > 0 Or _
            mas(i; (k - 1) * 7 + 6) > 0 Or _
            mas(i; (k - 1) * 7 + 7) > 0 Then BumInput(k) = True
        Next i
       Next k
       Worksheets("ОтчетМесячный").Select
       Range(Cells(7; 1); Cells(800; 22)).Delete shift:=xlToLeft
       Row = 4
       Col = 2
       Cells(2; 1) =  "за  период  от  "  +  CStr(DateBegin)  +  "  до  "  +
CStr(DateEnd)
       kk = 0
       Flag = False
       For k = 1 To BumNum
        If BumInput(k) Then
         Cells(Row; Col) = Bum(k)
         Num = 0
         For i = 1 To NumberClients
          If CliInput(i) Then
           If Col = 2 Then
            Str = Format(i; "0000000000")
            Str = Right(Str; 5)
            Cells(Row + Num + 3; Col - 1).NumberFormat = "@"
            Cells(Row + Num + 3; Col - 1).Font.Bold = True
            Cells(Row + Num + 3; Col - 1).HorizontalAlignment = xlCenter
            Cells(Row + Num + 3; Col - 1).Font.Italic = False
            Cells(Row + Num + 3; Col - 1).Interior.ColorIndex = 2
            Cells(Row + Num + 3; Col - 1) = Str
           End If
           Cells(Row + Num + 3; Col) = mas(i; (k - 1) * 7 + 1)
           Cells(Row + Num + 3; Col + 1) = mas(i; (k - 1) * 7 + 2)
           Cells(Row + Num + 3; Col + 2) = mas(i; (k - 1) * 7 + 3)
           Cells(Row + Num + 3; Col + 3) = mas(i; (k - 1) * 7 + 4)
           Cells(Row + Num + 3; Col + 4) = mas(i; (k - 1) * 7 + 5)
           Cells(Row + Num + 3; Col + 5) = mas(i; (k - 1) * 7 + 6)
           Cells(Row + Num + 3; Col + 6) = mas(i; (k - 1) * 7 + 7)
           Num = Num + 1
          End If
         Next i
         Col = Col + 7
         kk = kk + 1
         Flag = True
        End If
        If ((kk > 0) And (kk Mod 3 = 0) And Flag) Or k = BumNum Then
         Flag = False
         For i = 2 To 22
          sum = 0
          For m = 1 To NumberClients
           sum = sum + Cells(m + 6; i)
          Next m
          Cells(Num + 7; i) = sum
          Cells(Num + 7; i).Font.Bold = True
          Cells(Num + 7; i).Interior.ColorIndex = 15
         Next i
         Cells(Num + 7; 1) = "Итого"
         Cells(Num + 7; 1).Font.Bold = True
         Cells(Num + 7; 1).HorizontalAlignment = xlCenter
         Cells(Num + 7; 1).Interior.ColorIndex = 15
         Range(Cells(7; 1); Cells(Num  +  7;  22)).Borders(xlLeft).Weight  =
xlThin
         Range(Cells(7; 1); Cells(Num +  7;  22)).Borders(xlRight).Weight  =
xlThin
         Range(Cells(7; 1);  Cells(Num  +  7;  22)).Borders(xlTop).Weight  =
xlThin
         Range(Cells(7; 1); Cells(Num + 7;  22)).Borders(xlBottom).Weight  =
xlThin
           Range(Cells(7;   1);    Cells(Num    +    7;    22)).BorderAround
Weight:=xlMedium
           Range(Cells(7;   9);    Cells(Num    +    7;    15)).BorderAround
Weight:=xlMedium
            Cells(Num    +     10;     10)     =     "Ответственное     лицо
Дилера______________________________"
         If DialogPrint("ОтчетМесячный"; 2) Then Exit Sub

         Row = 4
         Col = 2
         Cells(Row; Col) = " "
         Cells(Row; Col + 7) = " "
         Cells(Row; Col + 14) = " "
         Range(Cells(7; 1); Cells(800; 22)).Delete shift:=xlToLeft
        End If
       Next k
       Worksheets("СписокКлиентов").Select
       Num = 5
       Range(Cells(Num; 1); Cells(100; 3)).Delete shift:=xlToLeft
       For i = 1 To NumberClients
        If CliInput(i) Then
         k = 2
         While Sheet.Cells(k; 2) <> DilerConst + i
          k = k + 1
         Wend
         Cells(Num; 1) = Sheet.Cells(k; 1)
         Cells(Num; 2) = Sheet.Cells(k; 2)
         Cells(Num; 3) = Sheet.Cells(k; 3)
         Cells(Num; 1).HorizontalAlignment = xlLeft
         Cells(Num; 2).HorizontalAlignment = xlCenter
         Cells(Num; 3).HorizontalAlignment = xlCenter
         Cells(Num; 3).WrapText = True
         Num = Num + 1
        End If
       Next i
       Cells(2; 1) =  "за  период  от  "  +  CStr(DateBegin)  +  "  до  "  +
CStr(DateEnd)
       Range(Cells(5; 1); Cells(Num - 1; 3)).Borders(xlLeft).Weight = xlThin
       Range(Cells(5;  1);  Cells(Num  -  1;  3)).Borders(xlRight).Weight  =
xlThin
       Range(Cells(5; 1); Cells(Num - 1; 3)).Borders(xlTop).Weight = xlThin
       Range(Cells(5; 1);  Cells(Num  -  1;  3)).Borders(xlBottom).Weight  =
xlThin
       Range(Cells(5; 1); Cells(Num - 1; 3)).BorderAround Weight:=xlMedium
       Range(Cells(5; 2); Cells(Num - 1; 2)).BorderAround Weight:=xlMedium
           Cells(Num     +     2;     2)     =      "Ответственное      лицо
Дилера______________________________"
       With DialogSheets("ДиалогПечать")
      AgainMonthOtch1:
          Просмотр = False
          ExitVar = False
          Button = False
          .Show
          If Просмотр Then
           Worksheets("СписокКлиентов").PrintPreview
           GoTo AgainMonthOtch1
          End If
          If ExitVar Then Exit Sub
          If Button Then ActiveWindow.SelectedSheets.PrintOut copies:=2
       End With
      End Sub
      '-------------------------------- Перечисление/списание биржа ------
      Sub GotoBirga()
       Dim Sheet As Object
       Dim OstIn; OstOut; OstBegin; CliNum As Double
       Dim RowNum; k As Long
       Dim DoFlag As Boolean
       Set Sheet = Worksheets("ОстаткиБиржа")
       Sheet.Range("B2").Sort Key1:=Sheet.Range("B2");  Order1:=xlAscending;
_
                                                    Key2:=Sheet.Range("A2");
Order2:=xlDescending; _
                               Header:=xlYes; OrderCustom:=1; _
                               MatchCase:=False; Orientation:=xlTopToBottom
       Sheet.Select
       CurDate = Worksheets("Врем").Cells(1; 4)
       k = 2
       While Worksheets("Клиенты").Cells(k; 1) <> Empty
        k = k + 1
       Wend

       With DialogSheets("ДиалогБиржа")
        .DropDowns.ListFillRange = "Клиенты!$B$2:$B$" + CStr(k - 1)
        .EditBoxes(1).InputType = xlNumber
        .EditBoxes(2).InputType = xlNumber
        .Show
        If Button = False Then
         MsgBox "Данные не занесены"
         Exit Sub
        End If
        CliNum = .DropDowns(1).List(.DropDowns(1).ListIndex)
        If .EditBoxes(1).Text = "" Then
         OstIn = 0
        Else
         OstIn = .EditBoxes(1).Text
        End If

        If .EditBoxes(2).Text = "" Then
         OstOut = 0
        Else
         OstOut = .EditBoxes(2).Text
        End If

        OstBegin = 0
        k = 2
        DoFlag = True
        Do While Cells(k; 1) <> Empty
         If Cells(k; 2) = CliNum And DoFlag Then
          If Cells(k; 1) < CurDate Then
           OstBegin = Cells(k; 6)
          Else
           MsgBox "Невозможен ввод информации"
           Exit Sub
          End If
          DoFlag = False
         End If
         k = k + 1
        Loop
        Cells(k; 1) = CurDate
        Cells(k; 2) = CliNum
        Cells(k; 3) = OstBegin
        Cells(k; 4) = OstIn
        Cells(k; 5) = OstOut
        Cells(k; 6) = OstBegin + OstIn - OstOut
       End With
      End Sub

      '-------------------------------- Просмотр остатков 812 ------------
      Sub PrintOst()
       Dim Sheet; Sheet1 As Object
       Dim i; k; CliNum As Long
       Dim Ost As Double
       CurDate = Worksheets("Врем").Cells(1; 4)
       i = 2
       While Worksheets("Сделки").Cells(i; 1) <> Empty
        If Worksheets("Сделки").Cells(i; 1) = CurDate Then
         Call EditOstBirga(Worksheets("Сделки").Cells(i; 2))
        End If
        i = i + 1
       Wend
       Set Sheet = Worksheets("Остатки812")
       Set Sheet1 = Worksheets("ОстаткиБиржа")
       Sheets("Клиенты").Select
       i = 2
       Sheet.Range("B2").Sort Key1:=Sheet.Range("B2");  Order1:=xlAscending;
_
                                                    Key2:=Sheet.Range("A2");
Order2:=xlDescending; _
                               Header:=xlYes; OrderCustom:=1; _
                               MatchCase:=False; Orientation:=xlTopToBottom
                 Sheet1.Range("B2").Sort           Key1:=Sheet1.Range("B2");
Order1:=xlAscending; _
                                                   Key2:=Sheet1.Range("A2");
Order2:=xlDescending; _
                               Header:=xlYes; OrderCustom:=1; _
                               MatchCase:=False; Orientation:=xlTopToBottom
       While Cells(i; 2) <> Empty
        CliNum = Cells(i; 2)
        k = 2
        Do
         If Sheet.Cells(k; 1) = Empty Then
          Ost = 0
          Exit Do
         End If
         If Sheet.Cells(k; 2) = CliNum Then
          Ost = Sheet.Cells(k; 8)
          Exit Do
         End If
         k = k + 1
        Loop
        Cells(i; 4) = Ost
        k = 2
        Do
         If Sheet1.Cells(k; 1) = Empty Then
          Ost = 0
          Exit Do
         End If
         If Sheet1.Cells(k; 2) = CliNum Then
          Ost = Sheet1.Cells(k; 6)
          Exit Do
         End If
         k = k + 1
        Loop
        Cells(i; 5) = Ost
        i = i + 1
       Wend
      End Sub

      '-------------------------------- Печать портфель ------------------
      Sub PrintPortfel()
       Dim Sheet As Object
       Dim i; k; BumNum; m As Long
       Dim Bum(ConstMaxBum); DatePog(ConstMaxBum) As Long
       Dim Volume(); BiginIndex(); dates(); V() As Integer
       Dim Price(); BumPrice(); DohPog(); DohPriobr() As Double
       Dim DateMas() As Date
       Dim Flag; BumIndex() As Boolean
       Dim SumPog1(); SumPog2(); SumPriobr1(); SumPriobr2() As Double
       Dim SumPog11; SumPriobr11; SumPog22; SumPriobr22 As Double
       Dim BumVol() As Integer
       Dim AllVol As Long
       Dim PortfelCost; PortfelBalance As Double

       CurDate = Worksheets("Врем").Cells(1; 4)
       Set Sheet = Worksheets("Бумаги")
       i = 2
       BumNum = 0
       While Sheet.Cells(i; 1) <> Empty
        If (Sheet.Cells(i; 2) <= CurDate And Sheet.Cells(i;  3)  >  CurDate)
Then
         Bum(BumNum + 1) = Sheet.Cells(i; 1)
         DatePog(BumNum + 1) = Sheet.Cells(i; 3)
         BumNum = BumNum + 1
        End If
        i = i + 1
       Wend
       Worksheets("Сделки").Select
       Range("B2").Sort Key1:=Range("A2"); Order1:=xlAscending; _
                               Key2:=Range("D2"); Order2:=xlAscending; _
                               Header:=xlYes; OrderCustom:=1; _
                               MatchCase:=False; Orientation:=xlTopToBottom
       ReDim Volume(BumNum; MaxCount)
       ReDim Price(BumNum; MaxCount)
       ReDim DateMas(BumNum; MaxCount)
       ReDim DohPog(BumNum; MaxCount)
       ReDim DohPriobr(BumNum; MaxCount)
       ReDim dates(BumNum); V(BumNum); BeginIndex(BumNum)
       ReDim BumIndex(BumNum); BumPrice(BumNum)
         ReDim   SumPog1(BumNum);    SumPog2(BumNum);    SumPriobr1(BumNum);
SumPriobr2(BumNum)
       ReDim BumVol(BumNum)
       For i = 1 To BumNum
        dates(i) = 1
       Next i

       i = 2
       While Cells(i; 1) <> Empty
        If Cells(i; 2) = DilerConst And Cells(i; 7) <> "списание" _
         And Cells(i; 7) <> "зачисление" Then
         Flag = True
         For k = 1 To BumNum              ' поиск номера бумаги
          If Cells(i; 3) = Bum(k) Then
           Flag = False
           Exit For
          End If
         Next k
         If Flag Then GoTo cont
         If Cells(i; 1) <= CurDate Then
          If Not IsEmpty(Cells(i; 4)) Then
           Volume(k; dates(k)) = Cells(i; 6)
           Price(k; dates(k)) = Cells(i; 4)
           DateMas(k; dates(k)) = Cells(i; 1)
           dates(k) = dates(k) + 1
           V(k) = V(k) + Cells(i; 6)
          Else
           V(k) = V(k) - Cells(i; 6)
          End If
         End If
        End If
      cont:
        i = i + 1
       Wend

       For k = 1 To BumNum
        For i = dates(k) To 1 Step -1
         If V(k) > Volume(k; i) Then
          V(k) = V(k) - Volume(k; i)
         Else
          Volume(k; i) = V(k)
          BeginIndex(k) = i
          Exit For
         End If
        Next i
       Next k

       For k = 1 To BumNum
        BumIndex(k) = False
        If V(k) > 0 Then BumIndex(k) = True
       Next k

       i = 2
       While Cells(i; 1) <= CurDate And Cells(i; 1) <> Empty
        If (Cells(i; 1) = CurDate And Cells(i; 2) = DilerConst) _
         And (Cells(i; 7) <> "зачисление" And  Cells(i;  7)  <>  "списание")
Then
         For k = 1 To BumNum
          If Cells(i; 3) = Bum(k) Then
           BumIndex(k) = True
          End If
         Next k
        End If
        i = i + 1
       Wend
       i = 2
       Set Sheet = Worksheets("Биржа")
       Flag = True
       While Sheet.Cells(i; 1) <> Empty
        If Sheet.Cells(i; 1) = CurDate Then
         Flag = False
         For k = 1 To BumNum
          If Sheet.Cells(i; 2) = Bum(k) Then
           If Sheet.Cells(i; 6) > 0 Then
            BumPrice(k) = Sheet.Cells(i; 6)
           Else
            BumPrice(k) = 0
           End If
          End If
         Next k
        End If
        i = i + 1
       Wend

       If Flag Then
        MsgBox "Биржевой информации нет. Портфель сформировать невозможно."
        Exit Sub
       End If

       Worksheets("Портфель1").Select
       Cells(4; 3) = CurDate
       Range("A7:H200").Delete shift:=xlToLeft
       m = 7
       PortfelCost = 0
       PortfelBalance = 0
       For k = 1 To BumNum
        If Volume(k; BeginIndex(k)) > 0 Then
         For i = BeginIndex(k) To dates(k)
          If Volume(k; i) > 0 Then
           Cells(m; 1) = Bum(k)
           Cells(m; 1).NumberFormat = "0"
           Cells(m; 2) = DateMas(k; i)
           Cells(m; 2).NumberFormat = "ДД.ММ.ГГ"
           Cells(m; 3) = Price(k; i)
           Cells(m; 3).NumberFormat = "0,00"
           Cells(m; 4) = Volume(k; i)
           Cells(m; 4).NumberFormat = "0"
           DohPog(k; i) = (100 / Price(k; i) - 1) * 36500  /  (DatePog(k)  -
DateMas(k; i))
           Cells(m; 5) = DohPog(k; i)

           Cells(m; 5).NumberFormat = "0,00"
           Cells(m; 8).NumberFormat = "0"
           Dim tmp As Long
           tmp = CurDate - DateMas(k; i)
           Cells(m; 8) = tmp
           PortfelBalance = PortfelBalance + Price(k; i) * Volume(k; i)
           If BumPrice(k) > 0 Then
            PortfelCost = PortfelCost + BumPrice(k) * Volume(k; i)
           Else
            PortfelCost = PortfelCost + Price(k; i) * Volume(k; i)
           End If
           If BumPrice(k) > 0 Then
            Cells(m; 6) = BumPrice(k)
            Cells(m; 6).NumberFormat = "0,00"
            If CurDate <> DateMas(k; i) Then
             DohPriobr(k; i) = (BumPrice(k) / Price(k; i) -  1)  *  36500  /
(CurDate - DateMas(k; i))
             Cells(m; 7) = DohPriobr(k; i)
             Cells(m; 7).NumberFormat = "0,00"
            End If
           End If
           m = m + 1
          End If
         Next i
         Range(Cells(m; 1); Cells(m; 8)).Interior.ColorIndex = 15
         m = m + 1
        End If
       Next k

       Range(Cells(7; 1); Cells(m - 1; 8)).Borders(xlLeft).Weight = xlThin
       Range(Cells(7; 1); Cells(m - 1; 8)).Borders(xlRight).Weight = xlThin
       Range(Cells(7; 1); Cells(m - 1; 8)).Borders(xlTop).Weight = xlThin
       Range(Cells(7; 1); Cells(m - 1; 8)).Borders(xlBottom).Weight = xlThin
       Range(Cells(7; 1); Cells(m - 1; 8)).BorderAround Weight:=xlMedium

       If DialogPrint("Портфель1"; 1) Then Exit Sub

       Worksheets("Портфель2").Select
       Cells(4; 3) = CurDate
       SumPog11 = 0
       SumPog22 = 0
       SumPriobr11 = 0
       SumPriobr22 = 0
       AllVol = 0
       m = 7
       Range("A7:H200").Delete shift:=xlToLeft
       For k = 1 To BumNum
        If Volume(k; BeginIndex(k)) > 0 Then
         SumPog1(k) = 0
         SumPog2(k) = 0
         SumPriobr1(k) = 0
         SumPriobr2(k) = 0
         BumVol(k) = 0
         For i = BeginIndex(k) To dates(k)
          If Volume(k; i) > 0 Then
            SumPog1(k)  =  SumPog1(k)  +  DohPog(k;  i)  *  Volume(k;  i)  *
(DatePog(k) - DateMas(k; i))
           SumPog2(k) = SumPog2(k) + Volume(k; i) * (DatePog(k) - DateMas(k;
i))
           If CurDate <> DateMas(k; i) Then
            SumPriobr1(k) = SumPriobr1(k) + DohPriobr(k; i) * Volume(k; i) *
(CurDate - DateMas(k; i))
            SumPriobr2(k) =  SumPriobr2(k)  +  Volume(k;  i)  *  (CurDate  -
DateMas(k; i))
           End If
           SumPog11 = SumPog11 + SumPog1(k)
           SumPog22 = SumPog22 + SumPog2(k)
           SumPriobr11 = SumPriobr11 + SumPriobr1(k)
           SumPriobr22 = SumPriobr22 + SumPriobr2(k)
           BumVol(k) = BumVol(k) + Volume(k; i)
           AllVol = AllVol + Volume(k; i)
          End If
         Next i
         Cells(m; 1) = Bum(k)
         Cells(m; 1).NumberFormat = "0"
         Cells(m; 2) = BumVol(k)
         Cells(m; 2).NumberFormat = "0"
         Cells(m; 3) = SumPog1(k) / SumPog2(k)
         Cells(m; 3).NumberFormat = "0,00"
         If SumPriobr2(k) > 0 And SumPriobr1(k) > 0 Then
          Cells(m; 4) = SumPriobr1(k) / SumPriobr2(k)
          Cells(m; 4).NumberFormat = "0,00"
         End If
         m = m + 1
        End If
       Next k
       Cells(m; 1) = "Итого"
       Cells(m; 1).Font.Bold = True
       Cells(m; 1).HorizontalAlignment = xlCenter
       Cells(m; 2) = AllVol
       Cells(m; 2).NumberFormat = "0"
       Cells(m; 3) = SumPog11 / SumPog22
       Cells(m; 3).NumberFormat = "0,00"
       Cells(m; 4) = SumPriobr11 / SumPriobr22
       Cells(m; 4).NumberFormat = "0,00"
       Range(Cells(m; 1); Cells(m; 4)).Interior.ColorIndex = 15
       Range(Cells(7; 1); Cells(m; 4)).Borders(xlLeft).Weight = xlThin
       Range(Cells(7; 1); Cells(m; 4)).Borders(xlRight).Weight = xlThin
       Range(Cells(7; 1); Cells(m; 4)).Borders(xlTop).Weight = xlThin
       Range(Cells(7; 1); Cells(m; 4)).Borders(xlBottom).Weight = xlThin
       Range(Cells(7; 1); Cells(m; 4)).BorderAround Weight:=xlMedium
       Range(Cells(m; 1); Cells(m; 4)).BorderAround Weight:=xlMedium
       Cells(m + 1; 1) = "Стоимость портфеля по балансу"
       Cells(m + 2; 1) = "Текущая стоимость потфеля"
       Cells(m + 1; 1).Font.Bold = True
       Cells(m + 2; 1).Font.Bold = True
       Range(Cells(m + 1; 1); Cells(m + 2; 4)).BorderAround Weight:=xlMedium
       Cells(m + 1; 4) = PortfelBalance * 10
       Cells(m + 1; 4).NumberFormat = "### ### ###,00"
       Cells(m + 1; 4).Font.Bold = True
       Cells(m + 2; 4) = PortfelCost * 10
       Cells(m + 2; 4).NumberFormat = "### ### ###,00"
       Cells(m + 2; 4).Font.Bold = True
       If DialogPrint("Портфель2"; 1) Then Exit Sub
      End Sub

      '-------------------------------- Печать Журнала лицевого учета -------
--
      Sub PrintMagazine()
       Dim Sheet As Object
       Dim i; k; BumNum; m; m1; j As Long
       Dim Bum(ConstMaxBum) As Long
       Dim Volume(); BiginIndex(); dates(); V(); Vol As Integer
       Dim sum; Price() As Double
       Dim DateMas() As Date
       Dim Flag; BumIndex() As Boolean
       Dim ComBirga; ComMas(); MagMas(); Mag(4) As Double
       CurDate = Worksheets("Врем").Cells(1; 4)
       i = 2
       Flag = True
       Do While Worksheets("Сделки").Cells(i; 1) <> Empty
        If Worksheets("Сделки").Cells(i; 1) = CurDate And _
           Worksheets("Сделки").Cells(i; 2) = DilerConst Then
         Flag = False
         Exit Do
        End If
        i = i + 1
       Loop
       If Flag Then
        MsgBox "Сделок в текущий день не было"
        Exit Sub
       End If

       Set Sheet = Worksheets("Бумаги")
       i = 2
       BumNum = 0
       While Sheet.Cells(i; 1) <> Empty
        If (Sheet.Cells(i; 2) <= CurDate And Sheet.Cells(i; 3)  >=  CurDate)
Then
         Bum(BumNum + 1) = Sheet.Cells(i; 1)
         BumNum = BumNum + 1
        End If
        i = i + 1
       Wend
       Worksheets("Сделки").Select
       Range("B2").Sort Key1:=Range("A2"); Order1:=xlAscending; _
                               Key2:=Range("D2"); Order2:=xlAscending; _
                               Header:=xlYes; OrderCustom:=1; _
                               MatchCase:=False; Orientation:=xlTopToBottom
       ReDim Volume(BumNum; MaxCount)
       ReDim Price(BumNum; MaxCount)
       ReDim DateMas(BumNum; MaxCount)
       ReDim dates(BumNum); V(BumNum); BeginIndex(BumNum)
       ReDim BumIndex(BumNum); ComMas(BumNum)
       ReDim MagMas(BumNum; 4)
       For i = 1 To BumNum
        ComMas(i) = 0
        dates(i) = 1
       Next i
       i = 2
       While Cells(i; 1) <> Empty And CurDate > Cells(i; 1)
        If Cells(i; 2) = DilerConst And Cells(i; 7) <> "списание" _
         And Cells(i; 7) <> "зачисление" Then
         Flag = True
         For k = 1 To BumNum              ' поиск номера бумаги
          If Cells(i; 3) = Bum(k) Then
           Flag = False
           Exit For
          End If
         Next k
         If Flag Then GoTo cont
         If Not IsEmpty(Cells(i; 4)) Then
          Volume(k; dates(k)) = Cells(i; 6)
          Price(k; dates(k)) = Cells(i; 4)
          DateMas(k; dates(k)) = Cells(i; 1)
          dates(k) = dates(k) + 1
          V(k) = V(k) + Cells(i; 6)
         Else
          V(k) = V(k) - Cells(i; 6)
         End If
        End If
      cont:
        i = i + 1
       Wend

       For k = 1 To BumNum
        For i = dates(k) To 1 Step -1
         If V(k) > Volume(k; i) Then
          V(k) = V(k) - Volume(k; i)
         Else
          Volume(k; i) = V(k)
          BeginIndex(k) = i
          Exit For
         End If
        Next i
       Next k

       For k = 1 To BumNum
        BumIndex(k) = False
        If V(k) > 0 Then BumIndex(k) = True
       Next k

       ComBirga = Worksheets("Инфо").Cells(1; 2)
       i = 2
       While Cells(i; 1) <> Empty
        If (Cells(i; 1) = CurDate And Cells(i; 2) = DilerConst) _
         And (Cells(i; 7) <> "зачисление" And  Cells(i;  7)  <>  "списание")
Then
         For k = 1 To BumNum
          If Cells(i; 3) = Bum(k) Then
           BumIndex(k) = True
           If Not IsEmpty(Cells(i; 4)) Then
            ComMas(k) = ComMas(k) +  Format(Cells(i;  4)  *  Cells(i;  6)  *
ComBirga * 0,1 + 0,0001; "0,00")
           Else
            If Cells(i; 5) <> 100 Then
             ComMas(k) = ComMas(k) + Format(Cells(i;  5)  *  Cells(i;  6)  *
ComBirga * 0,1 + 0,0001; "0,00")
            End If
           End If
          End If
         Next k
        End If
        i = i + 1
       Wend

       Set Sheet = Worksheets("Сделки")
       Worksheets("Журнал лицевого учета").Select
       Cells(5; 1) = CurDate
       Cells(49; 2) = ComBirga
       Покупка = False
       Продажа = False
       Vol = 0
       sum = 0
       For k = 1 To BumNum
        If BumIndex(k) Then
         m = 7
         Range("A7:C43").ClearContents
         Range("E7:G43").ClearContents
         Vol = 0
         sum = 0
         For i = BeginIndex(k) To dates(k)
          If Volume(k; i) > 0 Then
           Cells(m; 1) = DateMas(k; i)
           Cells(m; 2) = Volume(k; i)
           Cells(m; 3) = Format(Price(k; i); "0,00")
           Vol = Vol + Volume(k; i)
           sum = sum + Format(Price(k; i); "0,00") * Volume(k; i) * 10
           m = m + 1
          End If
         Next i
         Cells(6; 2) = Vol
         Cells(6; 4) = sum
         Cells(49; 3) = ComMas(k)
         Cells(5; 3) = CStr(Bum(k)) + "MFTS"
         i = 2
         m1 = 7
         j = BeginIndex(k)
         While Sheet.Cells(i; 1) <> Empty
          If Sheet.Cells(i; 1) = CurDate And Sheet.Cells(i; 3) = Bum(k)  And
_
           Sheet.Cells(i;  7)  <>  "зачисление"  And  Sheet.Cells(i;  7)  <>
"списание" And _
           Sheet.Cells(i; 2) = DilerConst Then
           If Not IsEmpty(Sheet.Cells(i; 4)) Then
            Покупка = True
            Cells(m; 1) = Sheet.Cells(i; 1)
            Cells(m; 2) = Sheet.Cells(i; 6)
            Cells(m; 3) = Sheet.Cells(i; 4)
            Volume(k; dates(k)) = Sheet.Cells(i; 6)
            Price(k; dates(k)) = Sheet.Cells(i; 4)
            DateMas(k; dates(k)) = Sheet.Cells(i; 4)
            dates(k) = dates(k) + 1
            m = m + 1
           Else
            Продажа = True
            Vol = Sheet.Cells(i; 6)
            If Vol < Volume(k; j) Then
             Cells(m1; 5) = Vol
             Cells(m1; 6) = Format(Price(k; j); "0,00")
             Cells(m1; 7) = Sheet.Cells(i; 5)
             Volume(k; j) = Volume(k; j) - Sheet.Cells(i; 6)
             m1 = m1 + 1
            Else
             If Volume(k; j) = 0 Then j = j + 1
             While Vol > Volume(k; j) And Volume(k; j) <> Empty
              Cells(m1; 5) = Volume(k; j)
              Cells(m1; 6) = Format(Price(k; j); "0,00")
              Cells(m1; 7) = Sheet.Cells(i; 5)
              Vol = Vol - Volume(k; j)
              j = j + 1
              m1 = m1 + 1
             Wend
             If Volume(k; j) <> Empty Then
              Cells(m1; 5) = Vol
              Cells(m1; 6) = Format(Price(k; j); "0,00")
              Cells(m1; 7) = Sheet.Cells(i; 5)
              Volume(k; j) = Volume(k; j) - Vol
              m1 = m1 + 1
             End If
            End If
           End If
          End If
          i = i + 1
         Wend
      no_do:
         MagMas(k; 1) = Format(Cells(46; 3); "0,00")
         MagMas(k; 2) = Format(Cells(47; 3); "0,00")
         MagMas(k; 3) = Format(Cells(48; 3); "0,00")
         MagMas(k; 4) = Format(Cells(45; 4); "0,00")
         If DialogPrint("Журнал лицевого учета"; 1) Then Exit Sub
        End If
       Next k

      ' Формирование журнала оборотов
       Worksheets("ЖурналОборотов").Select
       Cells(6; 1) = CurDate
       Range(Cells(7; 1); Cells(100; 6)).Delete shift:=xlToLeft
       m = 7
       For k = 1 To BumNum
        If BumIndex(k) Then
         Cells(m; 1) = CStr(Bum(k)) + "MFTS"
         Cells(m; 2) = MagMas(k; 1)
         Cells(m; 3) = MagMas(k; 2)
         Cells(m; 4) = MagMas(k; 3)
         Cells(m; 5) = MagMas(k; 4)
         Cells(m; 6) = ComMas(k)
         Cells(m; 1).Font.Bold = True
         Cells(m; 2).NumberFormat = "0,00"
         Cells(m; 3).NumberFormat = "0,00"
         Cells(m; 4).NumberFormat = "0,00"
         Cells(m; 5).NumberFormat = "0,00"
         Cells(m; 6).NumberFormat = "0,00"
         m = m + 1
        End If
       Next k
       For i = 2 To 6
        sum = 0
        For m1 = 7 To m - 1
         sum = sum + Cells(m1; i)
        Next m1
        Cells(m; i) = sum
        Cells(m; i).NumberFormat = "0,00"
       Next i
       Mag(1) = Cells(m; 2)
       Mag(2) = Cells(m; 3)
       Mag(3) = Cells(m; 4)
       Mag(4) = Cells(m; 6)
       If Cells(m; 2) > 0 Then Cells(m + 1; 2) = "Дт" + S192
       If Cells(m; 2) < 0 Then Cells(m + 1; 2) = "Кт" + S192
       If Cells(m; 3) > 0 Then Cells(m + 1; 3) = "Дт" + S904
       If Cells(m; 3) < 0 Then Cells(m + 1; 3) = "Кт" + S904
       If Cells(m; 4) > 0 Then Cells(m + 1; 4) = "Кт" + S960
       If Cells(m; 4) < 0 Then Cells(m + 1; 4) = "Дт" + S970
       Cells(m + 1; 6) = "Дт" + S970
       Range(Cells(m  +  1;  2);  Cells(m  +  2;  6)).HorizontalAlignment  =
xlCenter
       Range(Cells(m + 1; 1); Cells(m + 1; 6)).Interior.ColorIndex = 15
       Cells(m + 2; 6) = "Кт" + S904
       Cells(m + 2; 6).Interior.ColorIndex = 15
       Range(Cells(7; 1); Cells(m - 1; 6)).Borders(xlRight).Weight = xlThin
       Range(Cells(m; 1); Cells(m; 6)).Borders(xlRight).LineStyle = xlDouble
       Range(Cells(m; 1); Cells(m; 6)).Borders(xlLeft).LineStyle = xlDouble
       Range(Cells(m; 1); Cells(m; 6)).Borders(xlTop).LineStyle = xlDouble
        Range(Cells(m;  1);   Cells(m;   6)).Borders(xlBottom).LineStyle   =
xlDouble
       Cells(m + 2; 4) = "Подпись ответственного"
       Cells(m + 3; 4) = "сотрудника"
       Range(Cells(m + 2; 4); Cells(m + 3; 4)).Font.Size = 8
       Range(Cells(m + 2; 4); Cells(m + 3; 4)).HorizontalAlignment = xlLeft
       Range(Cells(7; 1); Cells(m + 4; 6)).BorderAround Weight:=xlMedium
       Range(Cells(m + 2; 3); Cells(m  +  4;  3)).Borders(xlRight).Weight  =
xlThin
       Range(Cells(m + 1; 1); Cells(m +  1;  5)).Borders(xlBottom).Weight  =
xlThin
       Cells(m + 2; 6).Borders(xlLeft).Weight = xlThin
       Cells(m + 2; 6).Borders(xlBottom).Weight = xlThin
       If DialogPrint("ЖурналОборотов"; 1) Then Exit Sub

      ' печать мемориального ордера
       Dim StrS As String
       With DialogSheets("ДиалогОперация")
        .Show
        If .OptionButtons(1).Value = xlOn Then StrS = "Покупка"
        If .OptionButtons(2).Value = xlOn Then StrS = "Продажа"
        If .OptionButtons(3).Value = xlOn Then StrS = "Погашение"
        If .OptionButtons(4).Value = xlOn Then StrS = "Покупка / Продажа"
        If .OptionButtons(5).Value = xlOn Then StrS = "Покупка / Погашение"
       End With

       Worksheets("Ордер").Select
       i = CInt(InputBox("Введите номер 1-го ордера"))
       If Mag(1) > 0 Then
        If Mag(2) < 0 Then
         If MemoOrder(i; min(Mag(1); Mag(2)); S192; S904; 0; _
               StrS + " РКО за " + CStr(CurDate)) Then Exit Sub
         i = i + 1
        End If
        If Mag(3) > 0 Then
         If MemoOrder(i; min(Mag(1); Mag(3)); S192; S960; 0; _
               "Доход от продажи РКО за " + CStr(CurDate)) Then Exit Sub
         i = i + 1
        End If
       End If

       If Mag(2) > 0 Then
        If Mag(1) < 0 Then
         If MemoOrder(i; min(Mag(2); Mag(1)); S904; S192; 0; _
               StrS + " РКО за " + CStr(CurDate)) Then Exit Sub
         i = i + 1
        End If
        If Mag(3) > 0 Then
         If MemoOrder(i; min(Mag(2); Mag(3)); S904; S960; 0; _
               "Доход от продажи РКО за " + CStr(CurDate)) Then Exit Sub
         i = i + 1
        End If
       End If

       If Mag(3) < 0 Then
        If Mag(1) < 0 Then
         If MemoOrder(i; min(Mag(3); Mag(1)); SR970; S192; 0; _
               "Отрицательная разница от продажи РКО за "  +  CStr(CurDate))
Then Exit Sub
         i = i + 1
        End If
        If Mag(2) < 0 Then
         If MemoOrder(i; min(Mag(3); Mag(2)); SR970; S904; 0; _
               "Отрицательная разница от продажи РКО за "  +  CStr(CurDate))
Then Exit Sub
         i = i + 1
        End If
       End If

       If Format(Mag(4)) > 0 Then
        If MemoOrder(i; Mag(4); S970; S904; 0; _
         "Комиссия ВКБ в т.ч. НДС " + CStr(Format(Mag(4) / 6; "0,00"))) Then
Exit Sub
       End If

      End Sub
      '-------------------------------------------- Memo Order

      Function MemoOrder(Num; sum As Double; n1; n2; Pos As  Integer;  Order
As String)
       Dim i As Integer
       Dim Flag As Boolean
       Dim Str; Str1 As String
       Str1 = ""
       Str = CStr(sum)
       Str = Format(Str; "000000000000,00")
       Flag = False
       For i = 1 To Len(Str)
        If Mid(Str; i; 1) = "," Then
         If CInt(Right(Str; 2)) = 0 Then
          Str1 = Str1 + "="
          Exit For
         Else
          Str1 = Str1 + "-"
         End If
        Else
         If Mid(Str; i; 1) <> "0" Then Flag = True
         If Mid(Str; i; 1) <> "0" Or Flag Then Str1 = Str1 + Mid(Str; i; 1)
        End If
       Next i
       Cells(3; 6) = Str1
       If Pos > 0 Then
        If n1 > 6 Then
         Cells(5; 6) = Worksheets("Клиенты").Cells(2; n1)
        Else
         Cells(5; 6) = Worksheets("Клиенты").Cells(Pos; n1)
        End If
        If n2 > 6 Then
         Cells(10; 6) = Worksheets("Клиенты").Cells(2; n2)
        Else
         Cells(10; 6) = Worksheets("Клиенты").Cells(Pos; n2)
        End If
       Else
        Cells(5; 6) = n1
        Cells(10; 6) = n2
       End If
       Cells(16; 1) = Order
       Cells(1; 6) = Num
       Range("A1:H24").Copy
       Range("A32").Select
       ActiveSheet.Paste
       If DialogPrint("Ордер"; 2) Then
        MemoOrder = True
       Else
        MemoOrder = False
       End If
      End Function

      '-------------------------------- Печать биржевой информации -------
      Sub PrintBirgaInfo()
       Dim Sheet As Object
       Dim Flag As Boolean
       Dim i; n; k; Num As Long
       Dim mas(3) As Double
       Set Sheet = Worksheets("Биржа")
       CurDate = Worksheets("Врем").Cells(1; 4)
       Sheets("Биржевая Информация").Select
       Cells(3; 10) = CurDate
       For i = 1 To 3
        mas(i) = 0
       Next i
       i = 2
       n = 7
       Range(Cells(n; 1); Cells(n + 100; 17)).Delete shift:=xlToLeft
       Flag = True
       Do While Sheet.Cells(i; 1) <> Empty
        If Sheet.Cells(i; 1) = CurDate Then
         Flag = False
         Cells(n; 1) = Sheet.Cells(i; 2)
         Cells(n; 7) = Sheet.Cells(i; 3)
         Cells(n; 9) = Sheet.Cells(i; 4)
         Cells(n; 10) = Sheet.Cells(i; 5)
         Cells(n; 5).Font.Bold = True
         Cells(n; 11) = Sheet.Cells(i; 6)
         Cells(n; 11).Font.Bold = True
         Cells(n; 12) = Sheet.Cells(i; 7)
         Cells(n; 13) = Sheet.Cells(i; 8)
         k = 2
         While Worksheets("Бумаги").Cells(k; 1) <> Empty
          If Worksheets("Бумаги").Cells(k; 1) = Cells(n; 1) Then
           Cells(n; 2) = Worksheets("Бумаги").Cells(k; 2)
           Cells(n; 3) = Worksheets("Бумаги").Cells(k; 3)
           Cells(n; 6) = Worksheets("Бумаги").Cells(k; 4)
          End If
          k = k + 1
         Wend
         Cells(n; 2).NumberFormat = "ДД.ММ.ГГ"
         Cells(n; 3).NumberFormat = "ДД.ММ.ГГ"
         Cells(n; 6).NumberFormat = "# ##0"
         Cells(n; 9).NumberFormat = "# ##0"
         Range(Cells(n; 10); Cells(n; 17)).NumberFormat = "0,00"
         Cells(n; 4) = Cells(3; 10) - Cells(n; 2)
         Cells(n; 5) = Cells(n; 3) - Cells(3; 10)
         Cells(n; 8) = Cells(n; 9) / Cells(n; 6) * 100
         Cells(n; 8).NumberFormat = "0,00"
         If Cells(n; 7) <> 0 And Cells(n; 5) <> 0 Then
          Cells(n; 14) = (100 / Cells(n; 10) - 1) * 36500 /  Cells(n;  5)  *
0,85
          Cells(n; 15) = (100 / Cells(n; 10) - 1) * 36500 / Cells(n; 5)
          Cells(n; 16) = (100 / Cells(n; 11) - 1) * 36500 /  Cells(n;  5)  *
0,85
          Cells(n; 16).Font.Bold = True
          Cells(n; 17) = (100 / Cells(n; 11) - 1) * 36500 / Cells(n; 5)
          mas(1) = mas(1) + Cells(n; 5) * Cells(n; 9) * Cells(n; 14)
          mas(2) = mas(2) + Cells(n; 5) * Cells(n; 9) * Cells(n; 16)
          mas(3) = mas(3) + Cells(n; 5) * Cells(n; 9)
         End If
         n = n + 1
        End If
        i = i + 1
       Loop
       If Flag Then
        MsgBox "Биржевой информации нет"
        Exit Sub
       End If

       Num = n
       Range(Cells(7;  1);  Cells(Num  -  1;  17)).Borders(xlLeft).Weight  =
xlThin
       Range(Cells(7; 1);  Cells(Num  -  1;  17)).Borders(xlRight).Weight  =
xlThin
       Range(Cells(7; 1); Cells(Num - 1; 17)).Borders(xlTop).Weight = xlThin
       Range(Cells(7; 1); Cells(Num  -  1;  17)).Borders(xlBottom).Weight  =
xlThin
       Range(Cells(7; 1); Cells(Num - 1; 17)).BorderAround Weight:=xlMedium
       Cells(Num; 1) = "Итого"
       Cells(Num; 1).Font.Bold = True
       Cells(Num; 1).HorizontalAlignment = xlCenter
       Cells(Num; 14) = mas(1) / mas(3)
       Cells(Num; 15) = mas(1) / mas(3) / 0,85
       Cells(Num; 16) = mas(2) / mas(3)
       Cells(Num; 16).Font.Bold = True
       Cells(Num; 17) = mas(2) / mas(3) / 0,85
       Range(Cells(Num; 14); Cells(Num; 17)).NumberFormat = "0,00"
       For i = 1 To 3
        mas(i) = 0
       Next i
       For i = 7 To Num - 1
        mas(1) = mas(1) + Cells(i; 6)
        mas(2) = mas(2) + Cells(i; 7)
        mas(3) = mas(3) + Cells(i; 9)
       Next
       Cells(Num; 6) = mas(1)
       Cells(Num; 6).NumberFormat = "# ##0"
       Cells(Num; 7) = mas(2)
       Cells(Num; 9) = mas(3)
       Cells(Num; 9).NumberFormat = "# ##0"
       Cells(Num; 8) = mas(3) / mas(1) * 100
       Cells(Num; 8).NumberFormat = "0,00"
       Cells(Num; 7).Font.Bold = True
       Cells(Num; 9).Font.Bold = True
       Range(Cells(Num; 1); Cells(Num; 17)).BorderAround Weight:=xlMedium
       Range(Cells(Num; 1); Cells(Num; 17)).Interior.ColorIndex = 15
       If DialogPrint("Биржевая Информация"; 1) Then Exit Sub
      End Sub

      '-------------------------------- Дата -----------------------------
      Sub DateChange()
       With DialogSheets("ДиалогДата")
        .EditBoxes.Text = CurDate
        .EditBoxes.InputType = 1
        .Show
        CurDate = Worksheets("Врем").Cells(1; 4)
        If Button = False Then
         CurDate = Date
         Worksheets("Врем").Cells(1; 4) = CurDate
         MsgBox "Дата восстановлена"
        Else
         If IsDate(.EditBoxes.Text) Then
          CurDate = .EditBoxes.Text
          MsgBox "Дата изменена"
          Worksheets("Врем").Cells(1; 4) = CurDate
          Exit Sub
         End If
         MsgBox "Ошибка при вводе даты"
        End If
       End With
      End Sub

      '-------------------------------- Формирование текущей таблицы бумаг --
--
      Sub FormBum()
       Dim L As Object
       Dim i; k As Integer
       Set L = Worksheets("Бумаги")
       CurDate = Worksheets("Врем").Cells(1; 4)
       i = 2
       k = 1
       While L.Cells(i; 1) <> Empty
        If L.Cells(i; 2) <= CurDate And L.Cells(i; 3) >= CurDate Then
         Worksheets("Врем").Cells(k; 1) = L.Cells(i; 1)
         k = k + 1
        End If
        i = i + 1
       Wend
       Worksheets("Врем").Cells(1; 2) = k - 1
       Set L = Worksheets("Клиенты")
       i = 1
       While L.Cells(i; 1) <> Empty
        i = i + 1
       Wend
       Worksheets("Врем").Cells(1; 3) = i - 2
      End Sub

      ' ------------------------------- Остатки на бирже --------------------

      Sub EditOstBirga(CliNum As Long)
       Dim ComBirga; sum; OstBegin As Double
       Dim DoFlag As Boolean
       Dim Sheet; Sheet1 As Object
       Dim i; k; RowNum As Long
       Set Sheet = Worksheets("ОстаткиБиржа")
       Set Sheet1 = Worksheets("Сделки")
       CurDate = Worksheets("Врем").Cells(1; 4)
       ComBirga = Worksheets("Инфо").Cells(1; 2)
       Sheet.Range("B2").Sort Key1:=Sheet.Range("B2");  Order1:=xlAscending;
_
                                                    Key2:=Sheet.Range("A2");
Order2:=xlDescending; _
                               Header:=xlYes; OrderCustom:=1; _
                               MatchCase:=False; Orientation:=xlTopToBottom

       OstBegin = 0
       RowNum = 0
       k = 2
       DoFlag = True
       Do While Sheet.Cells(k; 1) <> Empty
        If Sheet.Cells(k; 2) = CliNum And DoFlag Then
         If Sheet.Cells(k; 1) < CurDate Then
          OstBegin = Sheet.Cells(k; 6)
         Else
          Do While Sheet.Cells(k; 1) <> Empty
           If Sheet.Cells(k; 2) <> CliNum Then Exit Do
           If Sheet.Cells(k; 1) = CurDate Then
            OstBegin = Sheet.Cells(k; 3)
            RowNum = k
            Exit Do
           End If
           k = k + 1
          Loop
         End If
         DoFlag = False
        End If
        k = k + 1
       Loop
       If RowNum = 0 Then RowNum = k
       k = RowNum
       sum = 0
       i = 2
       While Sheet1.Cells(i; 1) <> Empty
        If Sheet1.Cells(i; 1) = CurDate And Sheet1.Cells(i; 2) = CliNum Then
         If Sheet1.Cells(i; 4) <> Empty Then
          sum = sum - _
           Sheet1.Cells(i; 4) * Sheet1.Cells(i; 6) * 10000 - _
           Format(Sheet1.Cells(i; 4) * Sheet1.Cells(i; 6) * 100 * ComBirga +
0,0001; "0,00")
         Else
          If Sheet1.Cells(i; 5) = 100 Then ComBirga = 0
          sum = sum + _
           Sheet1.Cells(i; 5) * Sheet1.Cells(i; 6) * 10000 - _
           Format(Sheet1.Cells(i; 5) * Sheet1.Cells(i; 6) * 100 * ComBirga +
0,0001; "0,00")
         End If
        End If
        i = i + 1
       Wend
       Sheet.Cells(k; 3) = OstBegin
       Sheet.Cells(k; 6) = OstBegin + sum + Sheet.Cells(k; 4)
       Sheet.Cells(k; 1) = CurDate
       Sheet.Cells(k; 2) = CliNum
      End Sub

      Sub Ok()
       Button = True
      End Sub

      Sub Cancel()
       Button = False
      End Sub

      Sub ПросмотрОтчетов()
       Просмотр = True
      End Sub

      Sub Останов()
       ExitVar = True
      End Sub

      Sub EndOf()
       Dim i As Long
       i = 2
       While Cells(i; 1) <> Empty
        i = i + 1
       Wend
       Cells(i; 1).Select
      End Sub

      Function DialogPrint(Str As String; Count As Integer)
       With DialogSheets("ДиалогПечать")
      AgainView:
        Просмотр = False
        ExitVar = False
        Button = False
        .Show
        If Просмотр Then
         Worksheets(Str).PrintPreview
         GoTo AgainView
        End If
        If ExitVar Then
         DialogPrint = True
        Else
         DialogPrint = False
        End If
        If Button Then ActiveWindow.SelectedSheets.PrintOut copies:=Count
       End With
      End Function

      Function min(a; b)
       If Abs(a) > Abs(b) Then
        min = Abs(b)
       Else
        min = Abs(a)
       End If
      End Function


                     Приложение № 1.3. Журнал оборотов.


      [pic]
                  Приложение № 1.4. Журнал лицевого учета.


      [pic]
                    Приложение № 1.5. Мемориальный ордер.


      [pic]
          Приложение № 1.6. Отчет инвестору о совершенных сделках.


      [pic]
          Приложение № 1.7. Структура пртфеля в разрезе по бумагам.


      [pic]
              Приложение № 1.8. Структура портфеля обобщенная.


      [pic]
                   Приложение № 1.9. Биржевая информация.


      [pic]
            Приложение № 1.10. Еженедельный отчет в депозитарий.


      [pic]


             Приложение № 1.11. Ежемесячный отчет в депозитарий.

      [pic]


       Приложение № 2. Программа анализа эффективности вложений в РКО.



                      Приложение 2.1. Текст программы.


      Option Explicit
      Option Base 1

      '***************************   Сортировка  *************************
      ' Процедура сортировки страницы
      ' Параметры:
      ' Sheet - лист
      ' RangeSort - первая ячейка для сортировки
      ' StrKey1 - сортировка сначала производится по этому столбцу
      ' StrKey2 - а затем по этому
      ' StrKey3 - и по этому в последнюю очередь
      ' OrderType1 - Направление сортировки по столбцу StrKey1
      ' OrderType2 - Направление сортировки по столбцу StrKey2
      ' OrderType3 - Направление сортировки по столбцу StrKey3
      ' Пример использования :
      '  Call  Сортировка(Worksheets("Биржа");  "A2";  "A2";   "B2";   "C2";
xlAscending; xlDescending; xlAscending)
      '*****************************************************************

      Sub Сортировка(Sheet  As  Object;  RangeSort  As  String;  StrKey1  As
String; _
      StrKey2  As  String;  StrKey3  As  String;  TypeOrder1   As   Integer;
TypeOrder2 As Integer; TypeOrder3 As Integer)
               Sheet.Range(RangeSort).Sort       Key1:=Sheet.Range(StrKey1);
Order1:=TypeOrder1; Key2:= _
                      Sheet.Range(StrKey2);              Order2:=TypeOrder2;
Key3:=Sheet.Range(StrKey3); Order3:= _
              TypeOrder3; Header:=xlGuess; OrderCustom:=1;  MatchCase:=False
_
              ; Orientation:=xlTopToBottom
      End Sub

      '******************************* Поиск ***************************
      ' Функция  поиска  значения  в  определенном  столбце  с  определенной
позиции вперед/назад
      ' Параметры:
      ' Sheet - лист
      ' Column - колонка для поиска
      ' Row - начальная строка поиска
      ' Text - искомое значение
      ' Direction - направление поиска:
      '                          1 - вперед
      '                         -1 - назад
      ' Пример использования :
      ' MsgBox Поиск(Worksheets("Биржа"); 4; 8; 5; -1)
      '*******************************************************************
      Function Поиск(Sheet As Object; Column As  Integer;  Row  As  Integer;
Text; Direction As Integer)
       Dim i As Integer
       Dim Compare; Compare1
       If Direction <> 1 And Direction <> -1 Then
        MsgBox "Неверно задано направление поиска"
        End
       End If
       On Error GoTo ErrorFuncFind
       i = Row
       While Not IsEmpty(Sheet.Cells(i; Column))
        If IsDate(Text) Then
         Compare = CDate(Sheet.Cells(i; Column))
         Compare1 = CDate(Text)
        Else
         If IsNumeric(Text) Then
          Compare = CDbl(Sheet.Cells(i; Column))
          Compare1 = CDbl(Text)
         Else
          Compare = CStr(Sheet.Cells(i; Column))
          Compare1 = CStr(Text)
         End If
        End If
        If Compare = Compare1 Then
         Поиск = i
         Exit Function
        End If
        i = i + Direction
       Wend
       Поиск = 0
       Exit Function
      ErrorFuncFind:
       MsgBox "Несовпадение типов данных в  вызове"  +  Chr(13)  +  "функции
Поиск и в искомом столбце." _
               + Chr(13) + Chr(13) + "Данные разных типов в столбце базы"  +
Chr(13)
       End
      End Function



      Option Explicit
      Option Base 1

      ' ---------------------------- Общая часть ----------------------------
---------
      ' внешние параметры
      ' тип данных для записи информации о бумаге
      Type BumRecord
       Num As Long          ' номер бумаги
       DateStart As Date    ' дата выпуска
       DateEnd As Date      'дата погашения
       Volume As Long       'объем выпуска
       Present As Boolean
      End Type

      ' тип данных для записи информации о структуре портфеля
      Type PortfelRecord
       Dates() As Date       ' дата покупки
       Price() As Single     ' цена покупки
       Volume() As Long      ' количество
       StartPos() As Integer '  начальный  индекс  бумаги  в  массиве  бумаг
данной серии
       EndPos() As Integer   ' конечный индекс бумаги в массиве бумаг данной
серии
       VolumeAll() As Long   ' количество бумаг данной серии в портфеле
      End Type

      ' тип данных для записи информации об индксах портфеля и рынка
      Type IndexRecord
       Dates As Date
       Portfel As Single
       Birga As Single
      End Type

      Const MaxBum = 500    ' максимальное количество бумаг в портфеле одной
серии
      Const DilerConst = 1000900000 ' константа для выборки портфеля дилера
      Dim MaxPeriod As Long ' максимальное количество дней для анализа(можно
вычислить как последний день анализа-первый день анализа+1)

      Dim Portfel As PortfelRecord  ' данные о портфеле
      Dim BumInfo() As BumRecord    ' данные о бумагах
      Dim BumNum As Integer         ' количество различных серий бумаг
      Dim Index() As IndexRecord    ' индексы портфеля и рынка
      Dim Revenue() As IndexRecord  '  доходность  к  погашению  портфеля  и
рынка
      Dim BirgaInfo() As Single     ' текущая биржевая информация по  каждой
серии
      Dim CoefIndex As Long         ' индекс коэффициента
      Dim RevIndex As Long          ' индекс доходности
      Dim EvalDate As Date          ' дата для расчета
      Dim StartDate As Date         ' начальная дата для постоения индексов
      Dim PortfelPricePred; BirgaPricePred As Single
      Dim Analize1; Analize2 As Boolean
      '------------------------------- Процедура расчета  портфеля  (главный
модуль)-
      Sub АнализПортфель()
       Dim Sheet As Object
       Dim i; Ind  As Integer
       Dim SumCell As Long
       Dim CurDate As Date
       Set Sheet = Worksheets("Бумаги")
       BumNum = 0
       While Sheet.Cells(BumNum + 2; 1) <> Empty
        BumNum = BumNum + 1
       Wend
       With DialogSheets("ДиалогДата")
        .EditBoxes(1).Text = "05.02.97"
        .EditBoxes(2).Text = "30.05.97"
        .EditBoxes(1).InputType = xlDate
        .EditBoxes(2).InputType = xlDate
        .Show
        StartDate = CDate(.EditBoxes(1).Text)
        EvalDate = CDate(.EditBoxes(2).Text)
       End With
       With DialogSheets("ДиалогВыбор")
      again:
        .Show
        Analize1 = False
        Analize2 = False
        If .CheckBoxes(1).Value = 1 Then Analize1 = True
        If .CheckBoxes(2).Value = 1 Then Analize2 = True
        If Not Analize1 And Not Analize2 Then
         MsgBox "Выберите тип анализа"
         GoTo again
        End If
       End With
       MaxPeriod = EvalDate - StartDate + 1
       ReDim Index(MaxPeriod)
       ReDim Revenue(MaxPeriod)
       Index(1).Portfel = 1
       Index(1).Birga = 1
       Index(1).Dates = StartDate
       ReDim BumInfo(BumNum)
       ReDim BirgaInfo(BumNum)
       For i = 1 To BumNum
        With BumInfo(i)
        .Num = Sheet.Cells(i + 1; 1)
        .DateStart = Sheet.Cells(i + 1; 2)
        .DateEnd = Sheet.Cells(i + 1; 3)
        .Volume = Sheet.Cells(i + 1; 4)
       End With
       Next i

       ReDim Portfel.Dates(BumNum; MaxBum)
       ReDim Portfel.Price(BumNum; MaxBum)
       ReDim Portfel.Volume(BumNum; MaxBum)
       ReDim Portfel.StartPos(BumNum)
       ReDim Portfel.EndPos(BumNum)
       ReDim Portfel.VolumeAll(BumNum)

       For i = 1 To BumNum
        Portfel.StartPos(i) = 1
        Portfel.EndPos(i) = 0
       Next i

       Set Sheet = Worksheets("Сделки")
       Call Сортировка(Worksheets("Сделки"); "A2"; "A2"; "B2"; "D2"; _
                       xlAscending; xlAscending; xlAscending)
       i = 2
       CoefIndex = 1
       RevIndex = 1
       CurDate = StartDate
       While Sheet.Cells(i; 1) <> Empty And Sheet.Cells(i; 1) <= EvalDate
        If Sheet.Cells(i; 2) = DilerConst Then
         Ind = ReturnBum(Sheet.Cells(i; 3))
         If Not IsEmpty(Sheet.Cells(i; 4)) Then
          Portfel.EndPos(Ind) = Portfel.EndPos(Ind) + 1
          Portfel.Dates(Ind; Portfel.EndPos(Ind)) = Sheet.Cells(i; 1)
          Portfel.Price(Ind; Portfel.EndPos(Ind)) = Sheet.Cells(i; 4)
          Portfel.Volume(Ind; Portfel.EndPos(Ind)) = Sheet.Cells(i; 6)
          Portfel.VolumeAll(Ind) = Portfel.VolumeAll(Ind)  +  Sheet.Cells(i;
6)
         Else
          SumCell = Sheet.Cells(i; 6)
          Portfel.VolumeAll(Ind) = Portfel.VolumeAll(Ind)  -  Sheet.Cells(i;
6)
          While SumCell >=  Portfel.Volume(Ind;  Portfel.StartPos(Ind))  And
SumCell > 0
           SumCell = SumCell - Portfel.Volume(Ind; Portfel.StartPos(Ind))
           Portfel.StartPos(Ind) = Portfel.StartPos(Ind) + 1
          Wend
          If SumCell < Portfel.Volume(Ind; Portfel.StartPos(Ind)) Then
           Portfel.Volume(Ind; Portfel.StartPos(Ind)) =  Portfel.Volume(Ind;
Portfel.StartPos(Ind)) - SumCell
          End If
         End If
        End If
        ' в данном месте можео провести анализ на основе данных  о  портфеле
за текущую дату
        ' дата текущая - это Worksheets("Сделки").cells(i-1;1)
        ' т.е. анализ за эту текущую дату(доходность к  погашению  портфеля,
индекс,...)
        If StartDate <= Sheet.Cells(i; 1) And Sheet.Cells(i; 1)  <>  CurDate
Then
         Call Процедура_анализа(Sheet.Cells(i; 1))
         CoefIndex = CoefIndex + 1
         RevIndex = RevIndex + 1
         CurDate = Sheet.Cells(i; 1)
        End If
        i = i + 1
       Wend
       If Analize1 Then
        Worksheets("РезультатИндекс").Cells(1; 2) = "Портфель"
        Worksheets("РезультатИндекс").Cells(1; 3) = "Рынок"
        For i = 1 To CoefIndex - 1
         Worksheets("РезультатИндекс").Cells(i + 1; 1) = Index(i).Dates
         Worksheets("РезультатИндекс").Cells(i + 1; 2) = Index(i).Portfel
         Worksheets("РезультатИндекс").Cells(i + 1; 3) = Index(i).Birga
        Next i
                                       Charts("ДиаграммаИндекс").ChartWizard
Source:=Sheets("РезультатИндекс").Range( _
                 "A1:C"    +    CStr(i));    Gallery:=xlLine;     Format:=4;
PlotBy:=xlColumns; _
              CategoryLabels:=1; SeriesLabels:=1; HasLegend:=1; Title:= _
              "Сравнение индекса портфеля и  рынка";  CategoryTitle:="дата";
ValueTitle:= _
              "индекс"; ExtraTitle:=""
        Charts("ДиаграммаИндекс").Select
        MsgBox "Диаграмма Индекса"
       End If
       If Analize2 Then
        Worksheets("РезультатДоходность").Cells(1; 2) = "Портфель"
        Worksheets("РезультатДоходность").Cells(1; 3) = "Рынок"
        For i = 1 To RevIndex - 1
            Worksheets("РезультатДоходность").Cells(i    +    1;    1)     =
Revenue(i).Dates
            Worksheets("РезультатДоходность").Cells(i    +    1;    2)     =
Revenue(i).Portfel
            Worksheets("РезультатДоходность").Cells(i    +    1;    3)     =
Revenue(i).Birga
        Next i
                                   Charts("ДиаграммаДоходность").ChartWizard
Source:=Sheets("РезультатДоходность").Range( _
                 "A1:C"    +    CStr(i));    Gallery:=xlLine;     Format:=4;
PlotBy:=xlColumns; _
              CategoryLabels:=1; SeriesLabels:=1; HasLegend:=1; Title:= _
                  "Сравнение     доходности     портфеля      и      рынка";
CategoryTitle:="дата"; ValueTitle:= _
              "доходность"; ExtraTitle:=""
        Charts("ДиаграммаДоходность").Select
        MsgBox "Диаграмма Доходности"
       End If
      End Sub

      '--------------------- функция  возвращает  индекс  бумаги  в  массиве
BumInfo -------------
      Function ReturnBum(bum As Long)
       Dim i As Integer
       For i = 1 To BumNum
        If bum = BumInfo(i).Num Then
         ReturnBum = i
         Exit Function
        End If
       Next i
       MsgBox "Не найдена бумага в  списке  бумаг.  Занести  бумагу  в  лист
Бумаги"
       End
      End Function

      '-------------------- Процедура построения индексов портфеля и рынка --
---------------
      Sub Процедура_анализа(CurDate As Date)
       Dim i; k As Long
       Dim Sheet As Object
       Dim PortfelPrice; BirgaPrice As Single
       Dim BirgaCoef; PortfelCoef As Single
       Dim Doh; Volume As Single
       Dim Flag As Boolean
       Set Sheet = Worksheets("Биржа")

       ' поиск первой строки начала биржевой информации за текущий день
       i = Поиск(Worksheets("Биржа"); 1; 2; CurDate; 1)
       If i = 0 Then
        'MsgBox "Биржевая информация  за  "  +  CStr(CDate(CurDate))  +  "не
найдена"
        'End
        CoefIndex = CoefIndex - 1
        Exit Sub
       End If

       ' занесение биржевой информации за текущий день
       If i <> 0 Then
        While Sheet.Cells(i; 1) = CurDate
         If Sheet.Cells(i; 6) <> Empty Then
          BirgaInfo(ReturnBum(Sheet.Cells(i; 2))) = Sheet.Cells(i; 6)
         End If
         i = i + 1
        Wend
       End If

        ' определение по каждой бумаге обращения на бирже
       For i = 1 To BumNum
        If BumInfo(i).DateStart <= CurDate And CurDate <= BumInfo(i).DateEnd
Then
         BumInfo(i).Present = True
        Else
         BumInfo(i).Present = False
        End If
       Next i

       ' если выбран анализ эффективной доходности портфеля и рынка
       If Analize2 Then
        Doh = 0
        Volume = 0
        Flag = True
        For k = 1 To BumNum
         If BumInfo(k).Present Then
          For i = Portfel.StartPos(k) To Portfel.EndPos(k)
           Flag = False
           Doh  =  Doh  +  (100  /  Portfel.Price(k;  i)  -  1)  *  36500  *
Portfel.Volume(k; i)
           Volume = Volume + Portfel.Volume(k; i)  *  (BumInfo(k).DateEnd  -
Portfel.Dates(k; i))
          Next i
         End If
        Next k
        If Flag Then
         RevIndex = RevIndex - 1
         GoTo Anal1
        End If
        Revenue(RevIndex).Portfel = Doh / Volume
        Revenue(RevIndex).Dates = CurDate
        Flag = True
        Doh = 0
        Volume = 0
        For k = 1 To BumNum
         If BumInfo(k).Present Then
          Flag = False
          Doh = Doh + (100 / BirgaInfo(k) - 1) * 36500 * BumInfo(k).Volume
          Volume  =  Volume  +  BumInfo(k).Volume  *  (BumInfo(k).DateEnd  -
CurDate)
         End If
        Next k
        If Flag Then
         RevIndex = RevIndex - 1
         GoTo Anal1
        End If
        Revenue(RevIndex).Birga = Doh / Volume
       End If

      Anal1:
       ' если выбран анализ индекса портфеля и рынка
       If Analize1 Then
       ' определение стоимости портфеля и биржи по средневзвешенным ценам
       PortfelPrice = 0
       BirgaPrice = 0
       For i = 1 To BumNum
        PortfelPrice = PortfelPrice + Portfel.VolumeAll(i) * BirgaInfo(i)  *
10000
        BirgaPrice = BirgaPrice + BumInfo(i).Volume * BirgaInfo(i) * 10000
       Next i
       ' расчет индексов
       If CoefIndex <> 1 Then
        ' поиск остатков за текущий день
        k = Поиск(Worksheets("Остаток"); 1; 2; CurDate; 1)
        If k <> 0 Then
         PortfelPrice = PortfelPrice + Worksheets("Остаток").Cells(k; 2)
        End If

        ' вычисление коэффициента портфеля
        If k <> 0 Then
         PortfelCoef = (PortfelPrice - Worksheets("Остаток").Cells(k; 3) _
                           +    Worksheets("Остаток").Cells(k;     4))     /
PortfelPricePred
        Else
         PortfelCoef = PortfelPrice / PortfelPricePred
        End If
        PortfelPricePred = PortfelPrice

        ' определение индекса портфеля за текущий день
         Index(CoefIndex).Portfel   =   Index(CoefIndex   -   1).Portfel   *
PortfelCoef
        Index(CoefIndex).Dates = CurDate
        BirgaCoef = BirgaPrice
        k = Поиск(Worksheets("Бумаги"); 2; 2; CurDate; 1)
        If k <> 0 Then
         BirgaCoef = BirgaCoef - Worksheets("Бумаги").Cells(k; 4)
        End If
        k = Поиск(Worksheets("Бумаги"); 3; 2; CurDate; 1)
        If k <> 0 Then
         BirgaCoef = BirgaCoef + Worksheets("Бумаги").Cells(k; 4)
        End If
        BirgaCoef = BirgaCoef / BirgaPricePred
        BirgaPricePred = BirgaPrice
        ' определение индекса биржи за текущий день
        Index(CoefIndex).Birga = Index(CoefIndex - 1).Birga * BirgaCoef
       Else
        k = Поиск(Worksheets("Остаток"); 1; 2; CurDate; 1)
        If k <> 0 Then
         PortfelPrice = PortfelPrice + Worksheets("Остаток").Cells(k; 2)
        End If
        PortfelPricePred = PortfelPrice
        BirgaPricePred = BirgaPrice
       End If
       End If
      End Sub
      Sub Cancel()
       End
      End Sub


     Приложение № 2.2. Диаграмма сравнения доходности портфеля и рынка.


      [pic]
       Приложение № 2.3. Диаграмма сравнения индекса портфеля и рынка.


      [pic]


               Приложение № 3. Входные статистические данные.



                    Приложение 3.1. Информация о бумагах.


|№          |Дата выпуска |Дата         |Объем выпуска             |
|           |             |погашения    |                          |
|21019      |14.11.96     |13.02.97     |60 000 000                |
|21020      |09.01.97     |10.04.97     |65 000 000                |
|21021      |13.02.97     |15.05.97     |55 000 000                |
|21022      |10.04.97     |10.07.97     |55 000 000                |
|21023      |10.07.97     |09.10.97     |40 000 000                |
|21024      |18.12.97     |09.04.98     |45 000 000                |
|22002      |29.08.96     |27.02.97     |25 000 000                |
|22003      |26.09.96     |27.03.97     |30 000 000                |
|22004      |24.10.96     |24.04.97     |40 000 000                |
|22005      |28.11.96     |29.05.97     |45 000 000                |
|22006      |19.12.96     |19.06.97     |90 000 000                |
|22007      |30.01.97     |24.07.97     |30 000 000                |
|22008      |27.02.97     |28.08.97     |55 000 000                |
|22009      |27.03.97     |25.09.97     |55 000 000                |
|22010      |24.04.97     |23.10.97     |60 000 000                |
|22011      |15.05.97     |13.11.97     |60 000 000                |
|22012      |29.05.97     |27.11.97     |60 000 000                |
|24001      |20.03.97     |12.03.98     |30 000 000                |
|24002      |08.05.97     |07.05.98     |25 000 000                |


                    Приложение 3.2. Информация о сделках.


|Дата        |№ бумаги      |Цена приобр |Цена продажи|Кол-во      |
|02.12.96    |22004         |92,99       |            |62          |
|02.12.96    |22004         |93,00       |            |340         |
|04.12.96    |22005         |77,50       |            |6           |
|05.12.96    |22003         |85,14       |            |5           |
|19.12.96    |22006         |80,05       |            |300         |
|19.12.96    |22006         |80,21       |            |500         |
|19.12.96    |22006         |80,37       |            |259         |
|01.01.97    |22005         |92,06       |            |7           |
|01.01.97    |21021         |0,00        |            |1126        |
|01.01.97    |22005         |0,00        |            |95          |
|01.01.97    |22008         |0,00        |            |75          |
|01.01.97    |22009         |0,00        |            |457         |
|01.01.97    |22008         |0,00        |            |29          |
|01.01.97    |21020         |0,00        |            |642         |
|01.01.97    |22004         |0,00        |            |12          |
|01.01.97    |22006         |0,00        |            |20          |
|01.01.97    |22009         |0,00        |            |16          |
|01.01.97    |21020         |0,00        |            |90          |
|01.01.97    |22006         |0,00        |            |26          |
|01.01.97    |21020         |0,00        |            |20          |
|01.01.97    |22004         |0,00        |            |15          |
|01.01.97    |22006         |0,00        |            |5           |
|01.01.97    |21021         |0,00        |            |12          |
|01.01.97    |22006         |0,00        |            |27          |
|01.01.97    |21020         |0,00        |            |0           |
|01.01.97    |21021         |0,00        |            |63          |
|01.01.97    |22004         |0,00        |            |159         |
|01.01.97    |22005         |0,00        |            |146         |
|01.01.97    |22009         |0,00        |            |46          |
|01.01.97    |22007         |0,00        |            |32          |
|01.01.97    |22008         |0,00        |            |13          |
|01.01.97    |22006         |0,00        |            |73          |
|01.01.97    |22006         |0,00        |            |59          |
|01.01.97    |22006         |0,00        |            |56          |
|01.01.97    |21020         |0,00        |            |29          |
|01.01.97    |21021         |0,00        |            |8           |
|01.01.97    |22005         |0,00        |            |12          |
|01.01.97    |22006         |0,00        |            |27          |
|01.01.97    |21021         |0,00        |            |10          |
|01.01.97    |22008         |0,00        |            |28          |
|01.01.97    |22008         |0,00        |            |57          |
|01.01.97    |21021         |0,00        |            |42          |
|01.01.97    |24001         |0,00        |            |34          |
|01.01.97    |24001         |0,00        |            |69          |
|01.01.97    |21021         |0,00        |            |104         |
|09.01.97    |21020         |90,93       |            |300         |
|09.01.97    |21020         |91,03       |            |600         |
|09.01.97    |21020         |91,24       |            |900         |
|09.01.97    |21020         |91,35       |            |600         |
|09.01.97    |21020         |91,50       |            |500         |
|10.01.97    |22004         |91,54       |            |24          |
|13.01.97    |21020         |93,65       |            |50          |
|14.01.97    |21020         |93,22       |            |32          |
|15.01.97    |22005         |88,51       |            |10          |
|17.01.97    |21020         |92,50       |            |10          |
|28.01.97    |21020         |93,40       |            |7           |
|31.01.97    |22007         |84,19       |            |16          |
|31.01.97    |22007         |84,20       |            |184         |
|06.02.97    |22004         |92,80       |            |60          |
|10.02.97    |22006         |89,00       |            |500         |
|13.02.97    |21021         |91,20       |            |430         |
|13.02.97    |21021         |91,30       |            |430         |
|13.02.97    |21021         |91,33       |            |320         |
|17.02.97    |22005         |92,25       |            |78          |
|17.02.97    |22007         |            |88,42       |78          |
|19.02.97    |22005         |93,00       |            |122         |
|19.02.97    |22003         |97,55       |            |41          |
|19.02.97    |22007         |            |89,39       |122         |
|20.02.97    |22005         |92,60       |            |28          |
|25.02.97    |22005         |92,01       |            |100         |
|25.02.97    |22005         |92,03       |            |60          |
|25.02.97    |21020         |96,00       |            |101         |
|26.02.97    |22004         |95,10       |            |12          |
|26.02.97    |21021         |            |92,50       |12          |
|27.02.97    |22008         |84,04       |            |300         |
|27.02.97    |22008         |84,10       |            |432         |
|27.02.97    |22008         |84,22       |            |318         |
|27.02.97    |22008         |84,09       |            |311         |
|27.02.97    |22008         |84,22       |            |182         |
|27.02.97    |22008         |84,42       |            |100         |
|28.02.97    |21021         |93,23       |            |80          |
|03.03.97    |21020         |            |97,30       |200         |
|03.03.97    |21021         |            |94,00       |154         |
|03.03.97    |22006         |            |92,50       |200         |
|04.03.97    |22006         |92,40       |            |24          |
|04.03.97    |22006         |92,52       |            |200         |
|04.03.97    |22006         |92,53       |            |200         |
|06.03.97    |22006         |92,63       |            |25          |
|06.03.97    |22004         |96,45       |            |4           |
|06.03.97    |21020         |97,53       |            |108         |
|12.03.97    |21020         |            |97,70       |489         |
|13.03.97    |21020         |            |97,50       |822         |
|13.03.97    |21021         |            |94,00       |399         |
|17.03.97    |21021         |93,67       |            |100         |
|19.03.97    |22003         |99,19       |            |128         |
|19.03.97    |22003         |99,20       |            |229         |
|20.03.97    |24001         |72,00       |            |50          |
|20.03.97    |24001         |72,15       |            |290         |
|21.03.97    |22005         |94,20       |            |2           |
|21.03.97    |22005         |94,25       |            |100         |
|24.03.97    |22005         |94,25       |            |108         |
|24.03.97    |22005         |94,39       |            |27          |
|24.03.97    |22005         |94,40       |            |598         |
|24.03.97    |21020         |            |98,40       |200         |
|25.03.97    |22006         |92,10       |            |70          |
|25.03.97    |22005         |94,05       |            |320         |
|25.03.97    |22003         |            |99,78       |403         |
|26.03.97    |22006         |92,00       |            |314         |
|26.03.97    |21021         |94,45       |            |80          |
|26.03.97    |21020         |98,10       |            |50          |
|28.03.97    |22005         |94,15       |            |7           |
|28.03.97    |21021         |95,10       |            |135         |
|28.03.97    |21021         |95,19       |            |378         |
|28.03.97    |21021         |95,20       |            |90          |
|28.03.97    |21020         |            |99,07       |288         |
|28.03.97    |21020         |            |99,01       |300         |
|31.03.97    |22006         |92,92       |            |200         |
|31.03.97    |22006         |92,93       |            |400         |
|31.03.97    |22006         |92,94       |            |100         |
|31.03.97    |22005         |94,50       |            |10          |
|31.03.97    |21020         |            |99,10       |88          |
|31.03.97    |21020         |            |99,11       |12          |
|31.03.97    |21020         |            |99,12       |2           |
|31.03.97    |22006         |            |92,94       |100         |
|31.03.97    |22006         |            |92,93       |400         |
|31.03.97    |22006         |            |92,92       |200         |
|01.04.97    |22006         |92,70       |            |1           |
|01.04.97    |22006         |92,91       |            |89          |
|01.04.97    |22004         |97,72       |            |10          |
|03.04.97    |22004         |98,00       |            |100         |
|03.04.97    |21020         |99,28       |            |38          |
|03.04.97    |22006         |93,06       |            |29          |
|03.04.97    |22006         |93,23       |            |5           |
|03.04.97    |22006         |93,31       |            |145         |
|04.04.97    |21020         |99,30       |            |370         |
|04.04.97    |22006         |93,32       |            |50          |
|04.04.97    |22006         |93,37       |            |47          |
|04.04.97    |22006         |93,39       |            |45          |
|08.04.97    |22004         |98,35       |            |239         |
|08.04.97    |22008         |            |87,50       |167         |
|08.04.97    |24001         |            |73,15       |23          |
|08.04.97    |22004         |            |98,35       |53          |
|09.04.97    |21020         |99,80       |            |13          |
|09.04.97    |21020         |99,86       |            |27          |
|09.04.97    |21020         |99,87       |            |325         |
|09.04.97    |24001         |            |73,20       |117         |
|09.04.97    |24001         |            |73,25       |200         |
|09.04.97    |22009         |84,86       |            |61          |
|10.04.97    |21022         |91,50       |            |2101        |
|10.04.97    |21020         |            |100,00      |1630        |
|10.04.97    |21022         |91,50       |            |91          |
|10.04.97    |21022         |91,65       |            |609         |
|10.04.97    |21020         |            |100,00      |642         |
|10.04.97    |21022         |91,65       |            |98          |
|10.04.97    |21020         |            |100,00      |90          |
|10.04.97    |21022         |91,50       |            |10          |
|10.04.97    |21020         |            |100,00      |20          |
|10.04.97    |21022         |91,65       |            |42          |
|10.04.97    |21020         |            |100,00      |39          |
|10.04.97    |21022         |91,65       |            |31          |
|10.04.97    |21020         |            |100,00      |29          |
|10.04.97    |21022         |91,50       |            |5458        |
|11.04.97    |21022         |            |92,40       |1           |
|11.04.97    |24001         |73,50       |            |300         |
|14.04.97    |22009         |85,50       |            |340         |
|14.04.97    |21021         |            |97,25       |300         |
|14.04.97    |22006         |94,53       |            |157         |
|16.04.97    |22008         |88,40       |            |330         |
|16.04.97    |21021         |            |97,80       |600         |
|16.04.97    |22004         |            |99,60       |90          |
|16.04.97    |22009         |            |86,39       |340         |
|16.04.97    |22004         |            |99,60       |50          |
|17.04.97    |22009         |86,50       |            |60          |
|17.04.97    |22004         |            |99,64       |3           |
|17.04.97    |24001         |73,80       |            |1           |
|21.04.97    |21022         |92,45       |            |515         |
|21.04.97    |22006         |            |95,30       |500         |
|21.04.97    |21022         |92,38       |            |3           |
|21.04.97    |22006         |            |95,30       |321         |
|22.04.97    |22004         |            |99,90       |189         |
|22.04.97    |22008         |            |88,72       |112         |
|23.04.97    |22005         |            |97,20       |12          |
|24.04.97    |22004         |            |100,00      |572         |
|24.04.97    |22010         |84,35       |            |14          |
|24.04.97    |22004         |            |100,00      |12          |
|24.04.97    |22010         |84,32       |            |10          |
|24.04.97    |22004         |            |100,00      |15          |
|24.04.97    |22010         |84,32       |            |28          |
|24.04.97    |22010         |84,35       |            |34          |
|24.04.97    |22004         |            |100,00      |53          |
|24.04.97    |22010         |84,28       |            |586         |
|24.04.97    |22010         |84,32       |            |355         |
|25.04.97    |22008         |89,89       |            |18          |
|25.04.97    |21022         |93,55       |            |48          |
|25.04.97    |21022         |93,49       |            |2           |
|25.04.97    |21022         |93,50       |            |4           |
|28.04.97    |21022         |93,50       |            |790         |
|28.04.97    |22005         |            |97,68       |200         |
|28.04.97    |22005         |            |97,70       |500         |
|28.04.97    |21022         |93,50       |            |1008        |
|28.04.97    |21022         |            |93,65       |982         |
|28.04.97    |21022         |            |93,60       |80          |
|28.04.97    |21022         |            |93,55       |468         |
|28.04.97    |21022         |            |93,56       |67          |
|28.04.97    |21022         |            |93,50       |1916        |
|28.04.97    |21022         |            |93,61       |10          |
|28.04.97    |21022         |            |93,51       |46          |
|29.04.97    |21022         |94,01       |            |826         |
|29.04.97    |22006         |            |96,50       |800         |
|29.04.97    |21022         |            |94,00       |400         |
|29.04.97    |21022         |            |94,01       |836         |
|29.04.97    |21022         |            |94,05       |55          |
|29.04.97    |21022         |            |94,10       |300         |
|29.04.97    |21022         |            |94,15       |298         |
|06.05.97    |21021         |            |99,40       |78          |
|06.05.97    |21022         |            |94,70       |131         |
|06.05.97    |22006         |            |97,00       |1           |
|06.05.97    |22006         |            |96,90       |1           |
|06.05.97    |22006         |            |96,65       |31          |
|06.05.97    |22006         |            |96,61       |263         |
|06.05.97    |22008         |            |91,20       |42          |
|06.05.97    |22008         |            |90,80       |501         |
|12.05.97    |21022         |0,00        |            |32          |
|12.05.97    |22009         |0,00        |            |160         |
|14.05.97    |21022         |            |95,40       |300         |
|14.05.97    |21022         |            |95,45       |300         |
|14.05.97    |21022         |            |95,48       |500         |
|15.05.97    |22011         |86,30       |            |1190        |
|15.05.97    |21021         |            |100,00      |500         |
|15.05.97    |22011         |86,35       |            |477         |
|15.05.97    |22011         |86,41       |            |826         |
|15.05.97    |21021         |            |100,00      |1126        |
|15.05.97    |22011         |86,35       |            |13          |
|15.05.97    |21021         |            |100,00      |12          |
|15.05.97    |22011         |86,35       |            |63          |
|15.05.97    |21021         |            |100,00      |63          |
|15.05.97    |21021         |            |100,00      |8           |
|15.05.97    |21021         |            |100,00      |10          |
|15.05.97    |22011         |86,35       |            |48          |
|15.05.97    |21021         |            |100,00      |42          |
|15.05.97    |21021         |            |100,00      |104         |
|16.05.97    |24001         |79,30       |            |50          |
|16.05.97    |22011         |87,09       |            |60          |
|16.05.97    |22011         |87,10       |            |90          |
|16.05.97    |22011         |87,35       |            |353         |
|16.05.97    |21022         |            |95,75       |355         |
|16.05.97    |21022         |            |95,80       |145         |
|19.05.97    |21022         |96,54       |            |50          |
|20.05.97    |21022         |96,65       |            |13          |
|20.05.97    |21022         |96,73       |            |44          |
|21.05.97    |22005         |            |99,65       |1           |
|22.05.97    |22011         |88,40       |            |92          |
|22.05.97    |22011         |88,43       |            |17          |
|22.05.97    |22011         |88,44       |            |391         |
|22.05.97    |22011         |88,50       |            |1           |
|22.05.97    |22011         |88,70       |            |350         |
|22.05.97    |22005         |            |99,80       |500         |
|22.05.97    |22005         |            |99,82       |252         |
|23.05.97    |22011         |88,70       |            |224         |
|23.05.97    |22005         |            |99,82       |119         |
|26.05.97    |22011         |            |88,55       |129         |
|26.05.97    |22011         |            |88,54       |26          |
|26.05.97    |22011         |            |88,53       |410         |
|27.05.97    |22011         |            |0,00        |791         |
|28.05.97    |22011         |88,03       |            |2           |
|28.05.97    |21022         |96,40       |            |10          |
|28.05.97    |21022         |96,50       |            |12          |
|28.05.97    |21022         |96,69       |            |100         |
|28.05.97    |21022         |96,70       |            |45          |
|28.05.97    |21022         |            |96,88       |144         |
|28.05.97    |22008         |            |93,30       |25          |
|28.05.97    |22011         |            |88,21       |50          |
|28.05.97    |22011         |            |88,26       |20          |
|28.05.97    |22011         |            |88,25       |100         |
|28.05.97    |22011         |            |88,20       |48          |
|29.05.97    |22012         |87,30       |            |108         |
|29.05.97    |22005         |            |100,00      |95          |
|29.05.97    |22012         |87,30       |            |8           |
|29.05.97    |22005         |            |100,00      |7           |
|29.05.97    |22012         |87,30       |            |64          |
|29.05.97    |22005         |            |100,00      |57          |
|29.05.97    |22005         |            |100,00      |12          |
|29.05.97    |22012         |87,00       |            |573         |
|30.05.97    |22007         |95,79       |            |73          |
|30.05.97    |22006         |98,65       |            |82          |
|30.05.97    |22012         |87,85       |            |50          |
|30.05.97    |22012         |87,85       |            |13          |
          Приложение 3.3. Информация о движениях денежных средств.


|Дата         |Остаток на конец     |Ввод              |Вывод                |
|05.02.97     |61 746 712,20        |                  |                     |
|06.02.97     |481 785 980,60       |                  |                     |
|10.02.97     |36 340 980,60        |                  |                     |
|14.02.97     |297 257 974,60       |                  |                     |
|17.02.97     |294 129 652,00       |                  |                     |
|19.02.97     |249 467 440,70       |                  |                     |
|20.02.97     |223 513 512,70       |                  |                     |
|25.02.97     |20 918 675,30        |                  |                     |
|26.02.97     |21 253 187,30        |                  |                     |
|28.02.97     |8 953 377,10         |                  |                     |
|03.03.97     |532 789 017,10       |                  |                     |
|04.03.97     |140 120 741,10       |                  |                     |
|06.03.97     |7 640 493,20         |                  |                     |
|12.03.97     |484 915 740,20       |                  |                     |
|13.03.97     |660 249 230,20       |                  |1 000 000 000,00     |
|17.03.97     |566 485 560,20       |                  |                     |
|19.03.97     |912 000 229,00       |700 000 000,00    |                     |
|21.03.97     |570 289 860,00       |                  |                     |
|24.03.97     |74 813 572,70        |                  |                     |
|25.03.97     |8 058 802,70         |                  |                     |
|26.03.97     |6 123 432,20         |                  |                     |
|28.03.97     |6 838 506,90         |                  |                     |
|31.03.97     |97 060 573,30        |                  |                     |
|01.04.97     |3 578 284,40         |                  |                     |
|02.04.97     |503 578 284,40       |500 000 000,00    |                     |
|03.04.97     |368 270 852,10       |                  |                     |
|04.04.97     |493 442,10           |                  |                     |
|07.04.97     |500 493 442,10       |500 000 000,00    |                     |
|08.04.97     |427 988 436,10       |                  |                     |
|09.04.97     |295 022 078,40       |                  |                     |
|11.04.97     |684 663,40           |                  |                     |
|14.04.97     |1 152 213,40         |                  |                     |
|16.04.97     |678 336 327,40       |                  |                     |
|21.04.97     |3 004 364,27         |                  |675 000 000,00       |
|22.04.97     |290 965 631,22       |                  |                     |
|23.04.97     |302 620 883,22       |                  |                     |
|24.04.97     |2 620 883,22         |                  |300 000 000,00       |
|25.04.97     |574 620 883,22       |                  |                     |
|28.04.97     |5 756 283,52         |                  |                     |
|29.04.97     |72 291,57            |                  |                     |
|06.05.97     |122 502,22           |                  |980 000 000,00       |
|14.05.97     |533 285 039,72       |                  |516 000 000,00       |
|16.05.97     |5 009 715,72         |                  |                     |
|22.05.97     |931 583,51           |                  |                     |
|23.05.97     |1 584 837,51         |                  |                     |
|26.05.97     |1 432 570,33         |                  |500 000 000,00       |
|28.05.97     |650 729 151,73       |500 000 000,00    |                     |
|29.05.97     |151 229 151,73       |                  |499 500 000,00       |
|30.05.97     |296 336,95           |                  |                     |


                    Приложение 3.4. Биржевая информация.


|Дата         |№ бумаги      |Цена            |
|             |              |средневзвешенная|
|06.01.97     |21018         |99,643          |
|06.01.97     |21019         |94,126          |
|06.01.97     |22001         |98,422          |
|06.01.97     |22002         |94,880          |
|06.01.97     |22003         |93,288          |
|06.01.97     |22004         |90,318          |
|06.01.97     |22005         |87,458          |
|06.01.97     |22006         |96,187          |
|08.01.97     |21018         |99,886          |
|08.01.97     |21019         |96,830          |
|08.01.97     |22001         |98,422          |
|08.01.97     |22002         |95,664          |
|08.01.97     |22003         |93,032          |
|08.01.97     |22004         |91,372          |
|08.01.97     |22005         |88,078          |
|08.01.97     |22006         |86,150          |
|09.01.97     |21018         |100,000         |
|09.01.97     |21020         |90,832          |
|10.01.97     |21019         |97,123          |
|10.01.97     |21020         |92,340          |
|10.01.97     |22001         |99,009          |
|10.01.97     |22002         |95,907          |
|10.01.97     |22003         |92,999          |
|10.01.97     |22004         |90,773          |
|10.01.97     |22005         |88,050          |
|10.01.97     |22006         |86,316          |
|13.01.97     |21019         |97,245          |
|13.01.97     |21020         |93,147          |
|13.01.97     |22001         |99,176          |
|13.01.97     |22002         |96,648          |
|13.01.97     |22003         |94,013          |
|13.01.97     |22004         |93,042          |
|13.01.97     |22005         |89,735          |
|13.01.97     |22006         |90,704          |
|14.01.97     |21019         |97,670          |
|14.01.97     |21020         |93,335          |
|14.01.97     |22001         |99,343          |
|14.01.97     |22002         |96,617          |
|14.01.97     |22003         |94,127          |
|14.01.97     |22004         |92,800          |
|14.01.97     |22005         |90,000          |
|14.01.97     |22006         |86,999          |
|15.01.97     |21019         |97,693          |
|15.01.97     |21020         |93,354          |
|15.01.97     |22001         |99,621          |
|15.01.97     |22002         |96,500          |
|15.01.97     |22003         |94,369          |
|15.01.97     |22004         |91,988          |
|15.01.97     |22005         |89,289          |
|15.01.97     |22006         |88,008          |
|16.01.97     |21019         |97,685          |
|16.01.97     |21020         |92,831          |
|16.01.97     |22001         |99,634          |
|16.01.97     |22002         |96,500          |
|16.01.97     |22003         |94,325          |
|16.01.97     |22004         |91,525          |
|16.01.97     |22005         |89,500          |
|16.01.97     |22006         |87,936          |
|17.01.97     |21019         |97,413          |
|17.01.97     |21020         |92,541          |
|17.01.97     |22001         |99,680          |
|17.01.97     |22002         |96,544          |
|17.01.97     |22003         |92,338          |
|17.01.97     |22004         |91,715          |
|17.01.97     |22005         |89,000          |
|17.01.97     |22006         |87,373          |
|20.01.97     |21019         |97,650          |
|20.01.97     |21020         |92,538          |
|20.01.97     |22001         |99,826          |
|20.01.97     |22002         |95,996          |
|20.01.97     |22003         |93,943          |
|20.01.97     |22004         |91,855          |
|20.01.97     |22005         |87,862          |
|20.01.97     |22006         |87,631          |
|21.01.97     |21019         |97,557          |
|21.01.97     |21020         |92,463          |
|21.01.97     |22001         |99,801          |
|21.01.97     |22002         |96,402          |
|21.01.97     |22003         |94,097          |
|21.01.97     |22004         |91,114          |
|21.01.97     |22005         |88,438          |
|21.01.97     |22006         |86,820          |
|22.01.97     |21019         |97,691          |
|22.01.97     |21020         |92,509          |
|22.01.97     |22001         |99,861          |
|22.01.97     |22002         |96,990          |
|22.01.97     |22003         |94,097          |
|22.01.97     |22004         |91,349          |
|22.01.97     |22005         |88,389          |
|22.01.97     |22006         |86,710          |
|23.01.97     |22001         |100,000         |
|23.01.97     |22006         |86,597          |
|24.01.97     |21019         |98,164          |
|24.01.97     |21020         |92,854          |
|24.01.97     |22002         |96,740          |
|24.01.97     |22003         |94,233          |
|24.01.97     |22004         |91,920          |
|24.01.97     |22005         |89,055          |
|24.01.97     |22006         |87,196          |
|27.01.97     |21019         |98,620          |
|27.01.97     |21020         |93,200          |
|27.01.97     |22002         |97,327          |
|27.01.97     |22003         |94,658          |
|27.01.97     |22004         |92,081          |
|27.01.97     |22005         |89,153          |
|27.01.97     |22006         |87,163          |
|28.01.97     |21019         |98,681          |
|28.01.97     |21020         |93,369          |
|28.01.97     |22002         |97,412          |
|28.01.97     |22003         |94,732          |
|28.01.97     |22004         |92,486          |
|28.01.97     |22005         |89,617          |
|28.01.97     |22006         |87,152          |
|29.01.97     |21019         |98,242          |
|29.01.97     |21020         |93,041          |
|29.01.97     |22002         |97,485          |
|29.01.97     |22003         |94,821          |
|29.01.97     |22004         |91,200          |
|29.01.97     |22005         |89,617          |
|29.01.97     |22006         |87,353          |
|30.01.97     |22007         |83,554          |
|31.01.97     |21019         |98,864          |
|31.01.97     |21020         |93,385          |
|31.01.97     |22002         |97,485          |
|31.01.97     |22003         |94,652          |
|31.01.97     |22004         |91,787          |
|31.01.97     |22005         |85,900          |
|31.01.97     |22006         |87,419          |
|31.01.97     |22007         |84,043          |
|03.02.97     |21019         |99,326          |
|03.02.97     |21020         |93,500          |
|03.02.97     |22002         |97,880          |
|03.02.97     |22003         |94,829          |
|03.02.97     |22004         |92,601          |
|03.02.97     |22005         |89,415          |
|03.02.97     |22006         |88,276          |
|03.02.97     |22007         |84,480          |
|04.02.97     |21019         |99,155          |
|04.02.97     |21020         |93,831          |
|04.02.97     |22002         |97,954          |
|04.02.97     |22003         |95,089          |
|04.02.97     |22004         |92,484          |
|04.02.97     |22005         |90,000          |
|04.02.97     |22006         |88,181          |
|04.02.97     |22007         |84,612          |
|05.02.97     |21019         |99,245          |
|05.02.97     |21020         |94,120          |
|05.02.97     |22002         |97,954          |
|05.02.97     |22003         |95,330          |
|05.02.97     |22004         |92,705          |
|05.02.97     |22005         |90,182          |
|05.02.97     |22006         |88,575          |
|05.02.97     |22007         |84,749          |
|06.02.97     |21019         |99,502          |
|06.02.97     |21020         |94,255          |
|06.02.97     |22002         |98,440          |
|06.02.97     |22003         |95,631          |
|06.02.97     |22004         |93,010          |
|06.02.97     |22005         |90,650          |
|06.02.97     |22006         |89,112          |
|06.02.97     |22007         |86,097          |
|07.02.97     |21019         |99,646          |
|07.02.97     |21020         |94,650          |
|07.02.97     |22002         |97,238          |
|07.02.97     |22003         |95,946          |
|07.02.97     |22004         |93,249          |
|07.02.97     |22005         |91,013          |
|07.02.97     |22006         |89,136          |
|07.02.97     |22007         |86,035          |
|10.02.97     |21019         |99,771          |
|10.02.97     |21020         |94,990          |
|10.02.97     |22002         |98,667          |
|10.02.97     |22003         |95,760          |
|10.02.97     |22004         |93,520          |
|10.02.97     |22005         |90,591          |
|10.02.97     |22006         |88,109          |
|10.02.97     |22007         |86,113          |
|11.02.97     |21019         |99,842          |
|11.02.97     |21020         |94,759          |
|11.02.97     |22002         |98,667          |
|11.02.97     |22003         |96,000          |
|11.02.97     |22004         |93,565          |
|11.02.97     |22005         |90,800          |
|11.02.97     |22006         |89,259          |
|11.02.97     |22007         |86,157          |
|12.02.97     |21019         |99,875          |
|12.02.97     |21020         |94,844          |
|12.02.97     |22002         |98,571          |
|12.02.97     |22003         |96,000          |
|12.02.97     |22004         |93,678          |
|12.02.97     |22005         |90,520          |
|12.02.97     |22006         |89,239          |
|12.02.97     |22007         |86,558          |
|13.02.97     |21019         |100,000         |
|13.02.97     |21021         |91,357          |
|14.02.97     |21020         |95,057          |
|14.02.97     |21021         |92,133          |
|14.02.97     |22002         |99,233          |
|14.02.97     |22003         |96,400          |
|14.02.97     |22004         |94,100          |
|14.02.97     |22005         |91,400          |
|14.02.97     |22006         |90,053          |
|14.02.97     |22007         |87,650          |
|17.02.97     |21020         |95,604          |
|17.02.97     |21021         |92,377          |
|17.02.97     |22002         |99,535          |
|17.02.97     |22003         |96,852          |
|17.02.97     |22004         |94,484          |
|17.02.97     |22005         |92,159          |
|17.02.97     |22006         |90,548          |
|17.02.97     |22007         |88,149          |
|18.02.97     |21020         |96,133          |
|18.02.97     |21021         |92,625          |
|18.02.97     |22002         |99,700          |
|18.02.97     |22003         |97,191          |
|18.02.97     |22004         |94,987          |
|18.02.97     |22005         |92,690          |
|18.02.97     |22006         |90,988          |
|18.02.97     |22007         |88,547          |
|19.02.97     |21020         |96,364          |
|19.02.97     |21021         |92,841          |
|19.02.97     |22002         |99,702          |
|19.02.97     |22003         |97,195          |
|19.02.97     |22004         |95,049          |
|19.02.97     |22005         |92,979          |
|19.02.97     |22006         |91,236          |
|19.02.97     |22007         |89,245          |
|20.02.97     |21020         |96,263          |
|20.02.97     |21021         |93,056          |
|20.02.97     |22002         |99,800          |
|20.02.97     |22003         |97,400          |
|20.02.97     |22004         |95,370          |
|20.02.97     |22005         |92,948          |
|20.02.97     |22006         |90,918          |
|20.02.97     |22007         |89,336          |
|21.02.97     |21020         |96,490          |
|21.02.97     |21021         |93,234          |
|21.02.97     |22002         |99,800          |
|21.02.97     |22003         |97,496          |
|21.02.97     |22004         |95,310          |
|21.02.97     |22005         |92,643          |
|21.02.97     |22006         |91,359          |
|21.02.97     |22007         |88,513          |
|24.02.97     |21020         |96,071          |
|24.02.97     |21021         |92,965          |
|24.02.97     |22002         |99,800          |
|24.02.97     |22003         |97,500          |
|24.02.97     |22004         |95,200          |
|24.02.97     |22005         |92,007          |
|24.02.97     |22006         |90,456          |
|24.02.97     |22007         |88,500          |
|25.02.97     |21020         |96,000          |
|25.02.97     |21021         |90,057          |
|25.02.97     |22002         |99,852          |
|25.02.97     |22003         |97,427          |
|25.02.97     |22004         |95,454          |
|25.02.97     |22005         |92,054          |
|25.02.97     |22006         |90,930          |
|25.02.97     |22007         |88,199          |
|26.02.97     |21020         |96,119          |
|26.02.97     |21021         |92,786          |
|26.02.97     |22002         |99,883          |
|26.02.97     |22003         |97,734          |
|26.02.97     |22004         |95,019          |
|26.02.97     |22005         |92,299          |
|26.02.97     |22006         |90,874          |
|26.02.97     |22007         |88,730          |
|27.02.97     |22002         |100,000         |
|27.02.97     |22008         |84,092          |
|28.02.97     |21020         |96,809          |
|28.02.97     |21021         |93,293          |
|28.02.97     |22003         |98,120          |
|28.02.97     |22004         |95,190          |
|28.02.97     |22005         |93,100          |
|28.02.97     |22006         |91,725          |
|28.02.97     |22007         |88,782          |
|28.02.97     |22008         |84,956          |
|03.03.97     |21020         |97,293          |
|03.03.97     |21021         |94,125          |
|03.03.97     |22003         |98,350          |
|03.03.97     |22004         |96,362          |
|03.03.97     |22005         |93,100          |
|03.03.97     |22006         |92,266          |
|03.03.97     |22007         |90,333          |
|03.03.97     |22008         |86,453          |
|04.03.97     |21020         |97,348          |
|04.03.97     |21021         |94,392          |
|04.03.97     |22003         |98,436          |
|04.03.97     |22004         |96,124          |
|04.03.97     |22005         |93,939          |
|04.03.97     |22006         |92,416          |
|04.03.97     |22007         |89,930          |
|04.03.97     |22008         |87,157          |
|05.03.97     |21020         |97,600          |
|05.03.97     |21021         |94,421          |
|05.03.97     |22003         |98,811          |
|05.03.97     |22004         |96,685          |
|05.03.97     |22005         |94,343          |
|05.03.97     |22006         |92,647          |
|05.03.97     |22007         |89,930          |
|05.03.97     |22008         |87,016          |
|06.03.97     |21020         |97,654          |
|06.03.97     |21021         |94,503          |
|06.03.97     |22003         |98,962          |
|06.03.97     |22004         |96,782          |
|06.03.97     |22005         |94,450          |
|06.03.97     |22006         |92,646          |
|06.03.97     |22007         |90,257          |
|06.03.97     |22008         |86,887          |
|07.03.97     |21020         |97,636          |
|07.03.97     |21021         |94,630          |
|07.03.97     |22003         |99,125          |
|07.03.97     |22004         |96,903          |
|07.03.97     |22005         |94,450          |
|07.03.97     |22006         |92,953          |
|07.03.97     |22007         |90,257          |
|07.03.97     |22008         |87,081          |
|11.03.97     |21020         |96,775          |
|11.03.97     |21021         |94,860          |
|11.03.97     |22003         |99,209          |
|11.03.97     |22004         |96,650          |
|11.03.97     |22005         |94,500          |
|11.03.97     |22006         |93,162          |
|11.03.97     |22007         |90,993          |
|11.03.97     |22008         |87,317          |
|12.03.97     |21020         |97,700          |
|12.03.97     |21021         |94,132          |
|12.03.97     |22003         |97,682          |
|12.03.97     |22004         |95,787          |
|12.03.97     |22005         |94,000          |
|12.03.97     |22006         |92,513          |
|12.03.97     |22007         |90,000          |
|12.03.97     |22008         |87,138          |
|13.03.97     |21020         |97,490          |
|13.03.97     |21021         |94,000          |
|13.03.97     |22003         |99,000          |
|13.03.97     |22004         |96,064          |
|13.03.97     |22005         |93,625          |
|13.03.97     |22006         |92,141          |
|13.03.97     |22007         |90,000          |
|13.03.97     |22008         |86,400          |
|14.03.97     |21020         |97,485          |
|14.03.97     |21021         |94,946          |
|14.03.97     |22003         |99,090          |
|14.03.97     |22004         |96,501          |
|14.03.97     |22005         |93,602          |
|14.03.97     |22006         |92,133          |
|14.03.97     |22007         |89,000          |
|14.03.97     |22008         |86,731          |
|17.03.97     |21020         |97,955          |
|17.03.97     |21021         |92,545          |
|17.03.97     |22003         |99,010          |
|17.03.97     |22004         |96,800          |
|17.03.97     |22005         |93,890          |
|17.03.97     |22006         |92,423          |
|17.03.97     |22007         |89,064          |
|17.03.97     |22008         |87,328          |
|18.03.97     |21020         |98,024          |
|18.03.97     |21021         |94,576          |
|18.03.97     |22003         |99,112          |
|18.03.97     |22004         |96,576          |
|18.03.97     |22005         |94,031          |
|18.03.97     |22006         |92,455          |
|18.03.97     |22007         |89,064          |
|18.03.97     |22008         |86,166          |
|19.03.97     |21020         |98,007          |
|19.03.97     |21021         |94,668          |
|19.03.97     |22003         |99,195          |
|19.03.97     |22004         |96,819          |
|19.03.97     |22005         |93,877          |
|19.03.97     |22006         |91,269          |
|19.03.97     |22007         |88,900          |
|19.03.97     |22008         |86,649          |
|20.03.97     |24001         |72,152          |
|21.03.97     |21020         |98,278          |
|21.03.97     |21021         |94,772          |
|21.03.97     |22003         |99,600          |
|21.03.97     |22004         |97,004          |
|21.03.97     |22005         |94,285          |
|21.03.97     |22006         |92,474          |
|21.03.97     |22007         |88,900          |
|21.03.97     |22008         |86,200          |
|21.03.97     |24001         |72,503          |
|24.03.97     |21020         |98,542          |
|24.03.97     |21021         |94,855          |
|24.03.97     |22003         |99,782          |
|24.03.97     |22004         |97,333          |
|24.03.97     |22005         |94,290          |
|24.03.97     |22006         |92,693          |
|24.03.97     |22007         |89,014          |
|24.03.97     |22008         |86,303          |
|24.03.97     |24001         |73,415          |
|25.03.97     |21020         |98,273          |
|25.03.97     |21021         |94,770          |
|25.03.97     |22003         |99,784          |
|25.03.97     |22004         |97,212          |
|25.03.97     |22005         |94,182          |
|25.03.97     |22006         |90,967          |
|25.03.97     |22007         |88,855          |
|25.03.97     |22008         |86,255          |
|25.03.97     |24001         |72,600          |
|26.03.97     |21020         |98,248          |
|26.03.97     |21021         |94,563          |
|26.03.97     |22003         |99,845          |
|26.03.97     |22004         |97,248          |
|26.03.97     |22005         |94,264          |
|26.03.97     |22006         |92,016          |
|26.03.97     |22007         |88,934          |
|26.03.97     |22008         |86,300          |
|26.03.97     |24001         |72,495          |
|27.03.97     |22003         |100,000         |
|27.03.97     |22009         |83,778          |
|28.03.97     |21020         |99,032          |
|28.03.97     |21021         |95,190          |
|28.03.97     |22004         |97,329          |
|28.03.97     |22005         |94,188          |
|28.03.97     |22006         |92,888          |
|28.03.97     |22007         |89,682          |
|28.03.97     |22008         |88,090          |
|28.03.97     |22009         |84,019          |
|28.03.97     |24001         |72,997          |
|31.03.97     |21020         |99,106          |
|31.03.97     |21021         |95,565          |
|31.03.97     |22004         |97,543          |
|31.03.97     |22005         |94,517          |
|31.03.97     |22006         |92,818          |
|31.03.97     |22007         |89,682          |
|31.03.97     |22008         |87,300          |
|31.03.97     |22009         |84,050          |
|31.03.97     |24001         |72,900          |
|01.04.97     |21020         |99,249          |
|01.04.97     |21021         |95,723          |
|01.04.97     |22004         |97,727          |
|01.04.97     |22005         |94,517          |
|01.04.97     |22006         |92,953          |
|01.04.97     |22007         |90,000          |
|01.04.97     |22008         |86,996          |
|01.04.97     |22009         |84,330          |
|01.04.97     |24001         |73,000          |
|02.04.97     |21020         |99,250          |
|02.04.97     |21021         |95,693          |
|02.04.97     |22004         |97,963          |
|02.04.97     |22005         |94,736          |
|02.04.97     |22006         |93,156          |
|02.04.97     |22007         |90,990          |
|02.04.97     |22008         |86,940          |
|02.04.97     |22009         |84,022          |
|02.04.97     |24001         |73,000          |
|03.04.97     |21020         |99,268          |
|03.04.97     |21021         |95,807          |
|03.04.97     |22004         |98,022          |
|03.04.97     |22005         |94,922          |
|03.04.97     |22006         |93,274          |
|03.04.97     |22007         |90,558          |
|03.04.97     |22008         |86,610          |
|03.04.97     |22009         |83,988          |
|03.04.97     |24001         |72,952          |
|04.04.97     |21020         |99,308          |
|04.04.97     |21021         |95,800          |
|04.04.97     |22004         |98,072          |
|04.04.97     |22005         |95,226          |
|04.04.97     |22006         |93,486          |
|04.04.97     |22007         |90,893          |
|04.04.97     |22008         |86,444          |
|04.04.97     |22009         |84,133          |
|04.04.97     |24001         |72,857          |
|07.04.97     |21020         |99,642          |
|07.04.97     |21021         |95,765          |
|07.04.97     |22004         |98,337          |
|07.04.97     |22005         |95,438          |
|07.04.97     |22006         |93,650          |
|07.04.97     |22007         |91,200          |
|07.04.97     |22008         |88,400          |
|07.04.97     |22009         |84,131          |
|07.04.97     |24001         |73,053          |
|08.04.97     |21020         |99,790          |
|08.04.97     |21021         |96,330          |
|08.04.97     |22004         |98,380          |
|08.04.97     |22005         |95,533          |
|08.04.97     |22006         |93,841          |
|08.04.97     |22007         |91,200          |
|08.04.97     |22008         |87,490          |
|08.04.97     |22009         |84,432          |
|08.04.97     |24001         |73,006          |
|09.04.97     |21020         |99,862          |
|09.04.97     |21021         |96,427          |
|09.04.97     |22004         |98,455          |
|09.04.97     |22005         |95,674          |
|09.04.97     |22006         |93,827          |
|09.04.97     |22007         |91,038          |
|09.04.97     |22008         |87,525          |
|09.04.97     |22009         |85,103          |
|09.04.97     |24001         |73,208          |
|10.04.97     |21020         |100,00          |
|10.04.97     |21022         |91,650          |
|11.04.97     |21021         |96,963          |
|11.04.97     |21022         |92,066          |
|11.04.97     |22004         |98,780          |
|11.04.97     |22005         |95,861          |
|11.04.97     |22006         |94,384          |
|11.04.97     |22007         |91,498          |
|11.04.97     |22008         |87,907          |
|11.04.97     |22009         |84,907          |
|11.04.97     |24001         |73,500          |
|14.04.97     |21021         |97,091          |
|14.04.97     |21022         |92,221          |
|14.04.97     |22004         |99,137          |
|14.04.97     |22005         |96,461          |
|14.04.97     |22006         |94,535          |
|14.04.97     |22007         |91,570          |
|14.04.97     |22008         |88,076          |
|14.04.97     |22009         |85,445          |
|14.04.97     |24001         |73,561          |
|15.04.97     |21021         |97,503          |
|15.04.97     |21022         |92,419          |
|15.04.97     |22004         |99,180          |
|15.04.97     |22005         |96,521          |
|15.04.97     |22006         |94,953          |
|15.04.97     |22007         |91,891          |
|15.04.97     |22008         |88,044          |
|15.04.97     |22009         |85,768          |
|15.04.97     |24001         |73,568          |
|16.04.97     |21021         |97,762          |
|16.04.97     |21022         |92,643          |
|16.04.97     |22004         |99,514          |
|16.04.97     |22005         |96,747          |
|16.04.97     |22006         |95,016          |
|16.04.97     |22007         |92,800          |
|16.04.97     |22008         |88,395          |
|16.04.97     |22009         |86,464          |
|16.04.97     |24001         |73,614          |
|17.04.97     |21021         |97,699          |
|17.04.97     |21022         |92,528          |
|17.04.97     |22004         |99,647          |
|17.04.97     |22005         |96,600          |
|17.04.97     |22006         |95,063          |
|17.04.97     |22007         |92,009          |
|17.04.97     |22008         |88,789          |
|17.04.97     |22009         |86,860          |
|17.04.97     |24001         |73,647          |
|21.04.97     |21021         |97,836          |
|21.04.97     |21022         |92,444          |
|21.04.97     |22004         |99,809          |
|21.04.97     |22005         |96,810          |
|21.04.97     |22006         |95,262          |
|21.04.97     |22007         |92,009          |
|21.04.97     |22008         |86,911          |
|21.04.97     |22009         |86,487          |
|21.04.97     |24001         |73,671          |
|22.04.97     |21021         |97,894          |
|22.04.97     |21022         |92,642          |
|22.04.97     |22004         |99,862          |
|22.04.97     |22005         |96,854          |
|22.04.97     |22006         |95,350          |
|22.04.97     |22007         |92,487          |
|22.04.97     |22008         |88,720          |
|22.04.97     |22009         |86,314          |
|22.04.97     |24001         |73,938          |
|23.04.97     |21021         |98,091          |
|23.04.97     |21022         |92,955          |
|23.04.97     |22004         |99,893          |
|23.04.97     |22005         |97,196          |
|23.04.97     |22006         |95,347          |
|23.04.97     |22007         |92,693          |
|23.04.97     |22008         |88,859          |
|23.04.97     |22009         |86,535          |
|23.04.97     |24001         |74,051          |
|24.04.97     |22004         |100,000         |
|24.04.97     |22010         |84,320          |
|25.04.97     |21021         |98,472          |
|25.04.97     |21022         |93,593          |
|25.04.97     |22005         |97,478          |
|25.04.97     |22006         |95,920          |
|25.04.97     |22007         |92,693          |
|25.04.97     |22008         |89,248          |
|25.04.97     |22009         |87,185          |
|25.04.97     |22010         |84,823          |
|25.04.97     |24001         |75,000          |
|28.04.97     |21021         |98,686          |
|28.04.97     |21022         |93,569          |
|28.04.97     |22005         |97,687          |
|28.04.97     |22006         |96,382          |
|28.04.97     |22007         |93,300          |
|28.04.97     |22008         |89,248          |
|28.04.97     |22009         |88,132          |
|28.04.97     |22010         |86,361          |
|28.04.97     |24001         |76,105          |
|29.04.97     |21021         |98,913          |
|29.04.97     |21022         |94,045          |
|29.04.97     |22005         |97,880          |
|29.04.97     |22006         |96,498          |
|29.04.97     |22007         |93,800          |
|29.04.97     |22008         |89,248          |
|29.04.97     |22009         |88,106          |
|29.04.97     |22010         |86,366          |
|29.04.97     |24001         |76,318          |
|30.04.97     |21021         |99,023          |
|30.04.97     |21022         |94,968          |
|30.04.97     |22005         |98,284          |
|30.04.97     |22006         |96,779          |
|30.04.97     |22007         |93,800          |
|30.04.97     |22008         |90,700          |
|30.04.97     |22009         |89,266          |
|30.04.97     |22010         |86,498          |
|30.04.97     |24001         |76,811          |
|04.05.97     |21021         |99,205          |
|04.05.97     |21022         |94,962          |
|04.05.97     |22005         |98,202          |
|04.05.97     |22006         |96,818          |
|04.05.97     |22007         |94,351          |
|04.05.97     |22008         |90,750          |
|04.05.97     |22009         |88,884          |
|04.05.97     |22010         |86,817          |
|04.05.97     |24001         |76,987          |
|05.05.97     |21021         |99,378          |
|05.05.97     |21022         |94,962          |
|05.05.97     |22005         |98,500          |
|05.05.97     |22006         |96,600          |
|05.05.97     |22007         |94,290          |
|05.05.97     |22008         |91,176          |
|05.05.97     |22009         |88,810          |
|05.05.97     |22010         |86,953          |
|05.05.97     |24001         |76,983          |
|06.05.97     |21021         |99,433          |
|06.05.97     |21022         |94,700          |
|06.05.97     |22005         |98,331          |
|06.05.97     |22006         |96,649          |
|06.05.97     |22007         |94,290          |
|06.05.97     |22008         |90,865          |
|06.05.97     |22009         |89,017          |
|06.05.97     |22010         |86,915          |
|06.05.97     |24001         |76,880          |
|07.05.97     |21021         |97,211          |
|07.05.97     |21022         |94,820          |
|07.05.97     |22005         |98,369          |
|07.05.97     |22006         |96,859          |
|07.05.97     |22007         |94,377          |
|07.05.97     |22008         |91,100          |
|07.05.97     |22009         |89,046          |
|07.05.97     |22010         |86,797          |
|07.05.97     |24001         |76,980          |
|08.05.97     |24002         |73,909          |
|12.05.97     |21021         |99,765          |
|12.05.97     |21022         |94,939          |
|12.05.97     |22005         |98,501          |
|12.05.97     |22006         |95,704          |
|12.05.97     |22007         |94,377          |
|12.05.97     |22008         |91,260          |
|12.05.97     |22009         |89,035          |
|12.05.97     |22010         |88,008          |
|12.05.97     |24001         |77,406          |
|12.05.97     |24002         |73,923          |
|13.05.97     |21021         |99,850          |
|13.05.97     |21022         |95,315          |
|13.05.97     |22005         |98,694          |
|13.05.97     |22006         |97,399          |
|13.05.97     |22007         |94,698          |
|13.05.97     |22008         |90,403          |
|13.05.97     |22009         |89,313          |
|13.05.97     |22010         |87,685          |
|13.05.97     |24001         |77,422          |
|13.05.97     |24002         |74,508          |
|14.05.97     |21021         |99,892          |
|14.05.97     |21022         |95,445          |
|14.05.97     |22005         |98,872          |
|14.05.97     |22006         |97,414          |
|14.05.97     |22007         |95,000          |
|14.05.97     |22008         |91,750          |
|14.05.97     |22009         |89,683          |
|14.05.97     |22010         |87,630          |
|14.05.97     |24001         |77,601          |
|14.05.97     |24002         |74,762          |
|15.05.97     |21021         |100,000         |
|15.05.97     |22011         |86,347          |
|16.05.97     |21022         |96,203          |
|16.05.97     |22005         |99,396          |
|16.05.97     |22006         |98,034          |
|16.05.97     |22007         |95,000          |
|16.05.97     |22008         |92,360          |
|16.05.97     |22009         |90,972          |
|16.05.97     |22010         |88,562          |
|16.05.97     |22011         |87,236          |
|16.05.97     |24001         |79,057          |
|16.05.97     |24002         |75,700          |
|19.05.97     |21022         |96,549          |
|19.05.97     |22005         |99,577          |
|19.05.97     |22006         |98,254          |
|19.05.97     |22007         |95,650          |
|19.05.97     |22008         |92,754          |
|19.05.97     |22009         |91,107          |
|19.05.97     |22010         |88,993          |
|19.05.97     |22011         |87,497          |
|19.05.97     |24001         |79,448          |
|19.05.97     |24002         |77,016          |
|20.05.97     |21022         |96,686          |
|20.05.97     |22005         |99,765          |
|20.05.97     |22006         |98,239          |
|20.05.97     |22007         |95,852          |
|20.05.97     |22008         |93,027          |
|20.05.97     |22009         |91,487          |
|20.05.97     |22010         |89,323          |
|20.05.97     |22011         |87,627          |
|20.05.97     |24001         |79,926          |
|20.05.97     |24002         |77,002          |
|21.05.97     |21022         |96,819          |
|21.05.97     |22005         |99,650          |
|21.05.97     |22006         |98,492          |
|21.05.97     |22007         |95,850          |
|21.05.97     |22008         |93,298          |
|21.05.97     |22009         |91,846          |
|21.05.97     |22010         |89,554          |
|21.05.97     |22011         |87,971          |
|21.05.97     |24001         |80,371          |
|21.05.97     |24002         |77,202          |
|22.05.97     |21022         |98,222          |
|22.05.97     |22005         |99,804          |
|22.05.97     |22006         |98,492          |
|22.05.97     |22007         |96,143          |
|22.05.97     |22008         |93,672          |
|22.05.97     |22009         |92,145          |
|22.05.97     |22010         |89,949          |
|22.05.97     |22011         |88,536          |
|22.05.97     |24001         |81,219          |
|22.05.97     |24002         |78,777          |
|23.05.97     |21022         |97,250          |
|23.05.97     |22005         |99,811          |
|23.05.97     |22006         |98,629          |
|23.05.97     |22007         |96,232          |
|23.05.97     |22008         |92,804          |
|23.05.97     |22009         |92,625          |
|23.05.97     |22010         |90,014          |
|23.05.97     |22011         |88,937          |
|23.05.97     |24001         |81,434          |
|23.05.97     |24002         |79,200          |
|26.05.97     |21022         |96,616          |
|26.05.97     |22005         |99,803          |
|26.05.97     |22006         |98,649          |
|26.05.97     |22007         |96,232          |
|26.05.97     |22008         |93,498          |
|26.05.97     |22009         |92,338          |
|26.05.97     |22010         |89,902          |
|26.05.97     |22011         |88,581          |
|26.05.97     |24001         |79,606          |
|26.05.97     |24002         |79,001          |
|27.05.97     |21022         |96,645          |
|27.05.97     |22005         |99,890          |
|27.05.97     |22006         |98,094          |
|27.05.97     |22007         |                |
|27.05.97     |22008         |93,545          |
|27.05.97     |22009         |91,260          |
|27.05.97     |22010         |89,563          |
|27.05.97     |22011         |88,897          |
|27.05.97     |24001         |81,543          |
|27.05.97     |24002         |78,102          |
|28.05.97     |21022         |96,287          |
|28.05.97     |22005         |99,869          |
|28.05.97     |22006         |98,338          |
|28.05.97     |22007         |                |
|28.05.97     |22008         |93,475          |
|28.05.97     |22009         |91,221          |
|28.05.97     |22010         |89,391          |
|28.05.97     |22011         |88,233          |
|28.05.97     |24001         |81,067          |
|28.05.97     |24002         |78,200          |
|29.05.97     |22005         |100,000         |
|29.05.97     |22012         |87,303          |
|30.05.97     |21022         |96,982          |
|30.05.97     |22006         |98,667          |
|30.05.97     |22007         |95,814          |
|30.05.97     |22008         |93,096          |
|30.05.97     |22009         |90,537          |
|30.05.97     |22010         |89,430          |
|30.05.97     |22011         |88,050          |
|30.05.97     |22012         |87,858          |
|30.05.97     |24001         |80,994          |
|30.05.97     |24002         |77,325          |