Принципы построения расчетной программы
Составление локальной и сетевой программы вычисления стоимости акций, особенности файловой системы и построения алгоритма решения задач. Характеристика языков программирования JavaScript и Borland Delphi. Расчеты с помощью табличного оператора Excel.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 21.01.2015 |
Размер файла | 367,4 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://allbest.ru
Оглавление
1. Теоретические основы вычисления стоимости акции
2. Составление локальной программы вычисления стоимости акции
2.1 Переменные
2.2 Алгоритм решения программы
2.3 Псевдокод программы
2.4 Блок-схема программы
2.5 Выбор IDE для написания программы
2.6 Руководство пользователю
3. Составление сетевой программы вычисления стоимости акции
3.1 Выбор IDE для написания программы
3.2 Руководство пользователю
1. Теоретические основы вычисления стоимости акции
Текущая внутренняя стоимость (V) акции в общем виде в рамках фундаментального анализа может быть рассчитана по формуле:
, (1)
где Dt - дивиденд на акцию в момент времени t; Ps - цена продажи акции; r - норма доходности; t - горизонт прогнозирования.
То есть дисконтированием денежного потока, генерируемого анализируемой ценной бумагой.
Как видно из формулы (1), оценка теоретической стоимости акции зависит от трех параметров: ожидаемые денежные поступления, которые состоят из ожидаемых дивидендов (Dt) и предполагаемой цены продажи (Ps), горизонта прогнозирования (t) и норма доходности (r). Последний параметр оценивается достаточно просто, и для его оценки существуют множество подходов. Второй параметр непосредственно зависит от предполагаемого срока инвестирования. Первый вероятно наиболее существенен, поскольку он непосредственно связан с активом и от точности его определения зачастую зависит эффективность инвестиций на рынке акций.
Собственно практически все существующие на сегодняшний момент модели оценки стоимости акций являются следствием из формулы (1), которая видоизменяется в зависимости от целей инвестирования. Выделяют две основные цели - получение доходов в виде дивидендов и получение дохода от прироста курсовой стоимости ценной бумаги. Рассмотрение всех методов не представляется целесообразным, поскольку их очень много и тема данной работы не предусматривает полное их рассмотрение. Приведем лишь некоторые, наиболее употребляемые из них.
Допустим, что инвестор собирается купить акции некоторой компании и владеть ими всегда. В этом случае для инвестора естественно определить цену акции как текущее значение последовательности дивидендов, которые он надеется получить. Таким образом, цена акции с точки зрения инвестора должна быть равна:
, (2)
где Dt - дивиденд на акцию в момент времени t; r - норма доходности; t - горизонт прогнозирования.
Размер дивидендов может изменяться произвольно, но чаще это изменение происходит систематически. То есть дивиденды либо возрастают, либо убывают, либо остаются постоянными. Ниже будут рассмотрены методы оценки акций нулевого и постоянного роста.
Допустим, что дивиденды по обыкновенным акциям некоторой компании по прогнозам останутся постоянными, т.е. D1 = D2 = …= D, тогда после подстановки D вместо Dt в уравнение (2) оно преобразуется к виду:
, (3)
где D - дивиденд на акцию в момент времени t; r - норма доходности.
То есть цена акции нулевого роста равна текущему значению бессрочной ренты (перпетуитету) с выплатами D. Следовательно, уравнение (3) сводится к уравнению (4):
, (4)
Наиболее частой практикой в западных компаниях является политика стабильно растущих дивидендов, поскольку, таким образом, повышается привлекательность акций, во-первых, с точки зрения защищенности будущих дивидендов от инфляционного воздействия, а, во-вторых, стабильно растущие дивиденды на протяжении длительного периода являются символом постоянного развития компании. В данном случае стоимость обыкновенной акции, чаще всего, оценивается при помощи "формулы Гордона"
, (5)
где D0 - дивиденд на акцию в момент времени t; g - предполагаемый темп роста дивидендов; r - норма доходности.
Если предприятие не выплачивает дивиденды, внутреннюю стоимость акции можно оценить с использованием факторной модели.
Факторная модель представляет собой попытку учесть основные экономические силы, систематически воздействующие на курсовую стоимость ценной бумаги. Внутренняя стоимость акции с использованием факторной модели может быть рассчитана путем решения уравнения:
, (6)
где a0 - свободный член; ei - случайная ошибка; Fi - предсказанное значение i-го фактора; bi - чувствительность цены к i-му фактору.
При использовании факторных моделей возникает ряд проблем:
1. Факторные модели строятся на анализе прошлой информации, однако, не всегда те факторы, которые оказывали влияние на цену акции в прошлом, будут аналогичным образом действовать и в будущем.
2. Очень трудно выделить именно те факторы, которые оказывали максимальное влияние на цену акции.
3. Поскольку значение случайной ошибки выбирается случайным образом, она может достигать достаточно больших величин.
Систематизировано модели оценки внутренней стоимости акций с использованием суммы будущих дивидендов, представлены в следующей таблице
Таблица 1. Методы оценки акций с использованием суммы будущих дивидендов
Гипотеза роста дивидендов |
Метод расчета |
Применимость к Российскому рынку |
|
Гипотеза нулевого роста дивидендов |
Слабая, поскольку Российские акционерные общества если и платят дивиденды, то в силу их небольшой величины и, как правило, высокой стоимости самих акций, постепенно увеличивают платежи, с целью повышения дивидендной привлекательности акций для иностранных инвесторов. |
||
Гипотеза стабильного роста дивидендов |
Слабая, поскольку все Российские предприятия имеют весьма короткую дивидендную историю, по которой можно выделить какую-либо тенденцию, а без точного определения ожидаемого темпа роста дивидендов (g) данный метод неприменим. |
||
Выплата дивидендов не подчиняется четкой тенденции |
Наиболее встречаемый случай. При точном определении будущих дивидендов решение данного уравнения дает наиболее правильное решение, однако, прогнозирование дивидендов в условиях отсутствия четкой тенденции - «гадание на кофейной гуще». Применим, при наличии четкого стратегического плана развития предприятия как минимум на 5 лет. |
||
Дивиденды не выплачиваются |
Применима, однако, имеет ряд больших недостатков, таких как, сложность расчета, сложность выделения результирующих факторов, иногда большое значение случайной ошибки. |
Следует отметить, что все модели, использующие в своей основе сумму будущих дивидендов едва ли применимы в российской практике, поскольку, во-первых, российские предприятия имеют весьма короткую дивидендную историю, относительно которой можно было строить какие-либо прогнозы, во-вторых, практически все предприятия или не выплачивают дивиденды вовсе или выплачивают заведомо заниженные.
Таким образом, дивидендная доходность российских предприятий близка к нулю, а требуемая инвесторами премия за риск, как составляющая требуемой доходности, очень велика и, как следствие, все расчетные стоимости акций российских предприятий не отражают истинного положения вещей, и, соответственно, данные модели недостаточны для целей прогнозирования и оценки. Хотя, сделанные правительством шаги по повышению прозрачности российских предприятий: плавный переход на международные стандарты отчетности, уменьшения налогового бремени, и пр., а также плавное повышение дивидендной доходности российскими предприятиями, вселяют надежду о возможно скорой востребованности моделей оценки акций путем оценки ожидаемых дивидендов.
Например, стоимость акции «Ш» на конец текущего года составила 22,00. Ожидается, что в течение следующих 5 лет будут осуществлены следующие дивидендные выплаты:
Таблица 2.
Год |
1 |
2 |
3 |
4 |
5 |
|
Сумма D |
1,00 |
1,20 |
1,10 |
1,30 |
1,25 |
Определите цену, по которой акция может быть продана в конце 5-го года, если норма доходности равна: а) 10%; б) 15%.
Используя формулу для расчета стоимости акции, выразим цену акции:
,
где V - стоимость акции; r - норма доходности; t - горизонт прогнозирования; Dt - дивиденд на акцию в момент времени t.
Определим цену, по которой акция может быть продана в конце 5-го года, если норма доходности равна 10%:
Определим цену, по которой акция может быть продана в конце 5-го года, если норма доходности равна 15%:
Ответ. Цена, по которой акция может быть продана в конце 5-го года, если норма доходности 10% равна 28,36. Цена, по которой акция может быть продана в конце 5-го года, если норма доходности 15% равна 36,48.
Расчеты можно провести с помощью MS Excel (рис. 1). Для этого необходимо открыть файл Задача 9.xls, который находится на диске в качестве приложения к данной курсовой работе. Заполнить поля стоимость акции, дивиденды и норма доходности. Расчет будет производиться автоматически после ввода данных.
Рисунок 1. Пример вычисления задачи в MS Excel
2. Составление локальной программы вычисления стоимости акции
2.1 Переменные
Прежде чем приступить к написанию программы необходимо определить, какие переменные будут фигурировать в программе, а так же их количество.
В нашей программе 9 переменных и один массив: V, P, D, r, Summa, n, i, k, h и Edits. Переменная V - стоимость акции, является положительным вещественным числом. P - цена продажи акции, является положительным вещественным числом. D - дивиденд на акцию, является положительным вещественным числом. Summa - промежуточное вычисление цены акции, является положительным вещественным числом. r - норма доходности, является положительным вещественным числом. n - количество лет, положительное целое число. i - параметр цикла, положительное целое число. k, h - логические переменные, используемые для проверки условий «заполнены ли все ячейки» и «дивидендная выплата должна быть меньше стоимости акции» соответственно. Edits - массив объектов, Edit элементы которого содержат дивиденды за соответствующий год.
2.2 Алгоритм решения
Вводятся данные в ячейки. После нажатия кнопки «Рассчитать» выполнится процедура расчета цены акции.
Сначала программа проверит, заполнены ли все поля, если нет, то выйдет ошибка. После заполнения всех полей программа проверит целесообразность введенных данных, например «Дивидендная выплата должна быть меньше стоимости акции». В случае ввода верных данных программа вычислит цену акции по формуле:
.
Затем выйдет сообщение с ответом. Если нажать кнопку «Очистить», выполнится процедура очистки всех полей. Для выхода из программы необходимо нажать в правом верхнем углу диалогового окна на крестик.
2.3 Псевдокод
Summa = 0;
k = ложь;
h = ложь;
для i = 1 до n пока
если Edits[1].Text='' то k = истина;
если Edit_StoimostAkcii.Text='' или Edit_NormaDohod.Text='' или n=0 или k то вывод ('Заполнены не все поля')
V = присвоение числа (Edit_StoimostAkcii.Text);
r = присвоение числа (Edit_NormaDohod.Text)/100;
для i = 1 до n пока
если StrToFloat(Edits[i].Text)>=V то h = истина;
если h то вывод ('Дивидендная выплата должна быть меньше стоимости акции')
для i = 1 до n пока
D = StrToFloat(Edits[i].Text);
Summa = Summa+ D/exp((i)*ln(1+r));
P = V*exp(n*ln(1+r))-exp(n*ln(1+r))*Summa;
вывод ('В конце '+IntToStr(n)+'го года акция может быть продана по цене 'FloatToStrF(P,ffFixed,10,2))
2.4 Блок-схема
2.5 Выбор IDE
Для написания программы я выбрала Borland Delphi 7.0 (Build 4.453) поскольку немного умею работать в ней, так как его язык является Object Pascal - полностью объектно-ориентированный диалект языка Pascal.
Delphi -- язык программирования, который используется в одноименной среде разработки. Название используется, начиная с 7 версии среды разработки, ранее это был Object Pascal, разработанный фирмой Borland и изначально реализованный в ее пакете Borland Delphi, от которого и получил в 2003 году свое нынешнее название. Object Pascal по сути является наследником языка Pascal с объектно-ориентированными расширениями.
2.6 Руководство пользователю
Программа для расчета цены акции написана в Borland Delphi 7.0 (Build 4.453), которую можно запустить с диска прилагаемого к данной курсовой работе. В папке «Локальная» находятся следующие файлы:
1. Задача9.exe - запускной файл программы. В отличии от всех остальных файлов его можно запускать без Delphi.
2. Project1.cfg - файл, содержащий конфигурацию проекта.
3. Project1.dof - файл, содержащий опции проекта.
4. Project1.dpr - это сам проект. В этом файле находится описание используемых в проекте модулей и описание инициализации программы.
5. Project1.res - файл, содержащий ресурсы проекта, такие как иконки, курсоры т.д.
6. Unit1.dcu - откомпилированный модуль. Когда компилируется программа, все модули проекта собираются в один и получается запускной файл. Этот файл появляется после компиляции программы.
7. Unit1.ddp - вспомогательный файл модуля.
8. Unit1.dfm - файл, содержащий визуальную информацию о форме.
9. Unit1.pas - файл, содержащий исходный код модулей.
Для того чтобы начать использовать эту программу необходимо запустить файл Задача9.exe. В появившееся диалоговое окно необходимо ввести данные, причем только числовые, текст и символы (кроме запятой) не вводятся (рис. 2).
Рисунок 2. Графическое представление программы
Затем необходимо выбрать, на какое количество лет необходимо рассчитать цену акции (от 1 года до 5 лет). Затем ввести дивиденды, которые будут выплачиваться в каждый год. Затем ввести стоимость акции и норму доходности. Сначала программа проверит, заполнены ли все поля, если нет, то выйдет ошибка (рис. 3).
Рисунок 3. Пример ошибочного ввода пустых данных
После заполнения всех полей программа проверит целесообразность введенных данных, например «Дивидендная выплата должна быть меньше стоимости акции» (рис. 4).
Рисунок 4. Пример ошибочного ввода данных
В случае ввода верных данных программа вычислит цену акции. Затем выйдет сообщение с ответом (рис. 5).
Рисунок 5. Пример вычисления цены акции
Если нажать кнопку «Очистить», выполнится процедура очистки всех полей. Для выхода из программы необходимо нажать в правом верхнем углу диалогового окна на крестик.
программа файловый delphi javascript
3. Составление сетевой программы вычисления стоимости акции
Для написания сетевой программы я выбрала JavaScript, поскольку немного умею работать в ней. JavaScript - язык программирования, разработанный для записи «сценариев», последовательностей операций, чаще всего использующийся при создании сценариев поведения браузера встраиваемых в Web-страницы.
Руководство пользователю
Программа для расчета цены акции написанная в JavaScript можно запустить с диска прилагаемого к данной курсовой работе. В папке «Сетевая» находятся следующий файл Задача9.html - запускной файл программы.
Для того чтобы начать использовать эту программу необходимо запустить файл Задача 9.html. Откроется страница (рис. 6).
Рисунок 6. Графическое представление программы
Необходимо выбрать, на какое количество лет необходимо рассчитать цену акции (от 1 года до 5 лет). Затем ввести дивиденды, которые будут выплачиваться в каждый год. Затем ввести стоимость акции и норму доходности. Если введены строковые данные или отрицательные, выйдет сообщение об ошибке (рис. 7).
Рисунок 7. Пример ошибочного ввода данных
После заполнения всех полей программа проверит целесообразность введенных данных, например «Дивидендная выплата должна быть меньше стоимости акции» (рис. 8).
Рисунок 8. Пример ошибочного ввода данных
В случае ввода верных данных программа вычислит цену акции. Затем выйдет сообщение с ответом (рис. 9).
Рисунок 9. Пример вычисления цены акции
Если нажать кнопку «Очистить», выполнится процедура очистки всех полей. Для выхода из программы необходимо нажать в правом верхнем углу диалогового окна на крестик.
Размещено на Allbest.ru
Подобные документы
Составление алгоритма и разработка в среде программирования Delphi 7 программы, вычисляющей макроэкономические индексы цен. Реализация программы в виде 4 форм и 1 диалогового окна. Описание алгоритма решения задачи. Текст программы, руководство оператора.
курсовая работа [1,4 M], добавлен 04.06.2013Проектирование программного модуля в среде программирования Borland Delphi 7.0. Схемы алгоритмов решения задач по темам "Символьные переменные и строки", "Массивы", "Работа с файлами", "Создание анимации". Реализация программного модуля, код программы.
отчет по практике [961,6 K], добавлен 21.04.2012Система программирования Delphi, ее характеристика. Основные требования к обучающей программе. Составление блок-схемы алгоритма программы "Математика. 1 класс". Виды задач для решения в обучающей программе. Описание работы системы, инструкция к ней.
курсовая работа [2,0 M], добавлен 17.06.2015Особенности разработки приложений для операционной системы с помощью императивного, структурированного, объектно-ориентированного языка программирования Delphi. Формальное начало программы. Выделение конца программного блока. Листинг и описание программы.
курсовая работа [1,2 M], добавлен 04.08.2014Характеристика системы программирования. Главные составные части Delphi. Интерфейс программного приложения. Результаты работы программы. Руководство системного программиста и оператора. Язык программирования Delphi, среда компилятора Borland 7.0.
курсовая работа [1,6 M], добавлен 29.05.2013Описание алгоритма решения транспортной задачи по планированию перевозки зерна. Ход решения задачи вручную, в программе TORA методом наименьшего элемента, с помощью MS Excel. Разработка программы для решения задачи в общем виде средствами Delphi.
курсовая работа [2,5 M], добавлен 22.11.2012Рассмотрение системы трехмерного твердотельного моделирования. Анализ средств программирования, информационное обеспечение и описание объектной модели Компас-3d. Описание алгоритма программы в среде Borland Delphi 7 и составление инструкции пользователя.
дипломная работа [1,7 M], добавлен 03.07.2012Среда Borland Delphi и ее графические средства для построения фрактальных множеств. Разработка программы для построения изображения листа папоротника при помощи вероятностных распределений с использованием средств для отображения графической информации.
курсовая работа [1,3 M], добавлен 29.07.2013Особенности среды визуального проектирования Borland Delphi 7.0. Этапы разработки программы и составления блок-схемы алгоритмов. Способы вычисления кусочно-заданной функции одной переменной. Рассмотрение компонентов среды Delphi, ее предназначение.
контрольная работа [703,8 K], добавлен 24.09.2012Разработка программы в среде программирования Borland Pascal, которая является электронным тестирующим пособием в области химии для 8-10 классов. Написание алгоритма решения задачи, определение необходимых функций, процедур, модулей, файловых переменных.
контрольная работа [389,3 K], добавлен 19.09.2010