Нахождение оптимального плана вложения денежных средств в депозиты

Автор: Пользователь скрыл имя, 14 Февраля 2013 в 15:59, курсовая работа

Описание работы

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

Содержание

ВВЕДЕНИЕ 3
ЦЕЛИ И ЗАДАЧИ 5
ГЛАВА 1.ФИНАНСОВЫЕ РАСЧЁТЫ 6
1.1. ОСНОВНЫЕ ПОНЯТИЯ КОЛИЧЕСТВЕННОГО АНАЛИЗА 6
1.2. НАЧИСЛЕНИЕ ПРОСТЫХ ПРОЦЕНТОВ 9
1.3. НАЧИСЛЕНИЕ ПРОЦЕНТОВ В УСЛОВИЯХ ДИСКРЕТНО ИЗМЕНЯЮЩИХСЯ ПРОЦЕНТНЫХ СТАВОК. РЕИНВЕСТИРОВАНИЕ 11
1.4. НАЧИСЛЕНИЕ СЛОЖНЫХ ПРОЦЕНТОВ 13
1.5. ПРОЦЕНТЫ И ИНФЛЯЦИЯ 16
ГЛАВА 2. ПОСТАНОВКА ЗАДАЧИ 18
2.1. ПОСТАНОВКА ЗАДАЧИ 18
2.2. ОПИСАНИЕ ИСХОДНЫХ ДАННЫХ 18
2.3. АЛГОРИТМ РЕШЕНИЯ ПОСТАВЛЕННОЙ ЗАДАЧИ 19
ЗАКЛЮЧЕНИЕ 22
СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ 23
ПРИЛОЖЕНИЕ 1. ФРАГМЕНТЫ ТАБЛИЦЫ ВКЛАДОВ 24
ПРИЛОЖЕНИЕ 2. ЛИСТИНГ ПРОГРАММЫ ДЛЯ ОПТИМАЛЬНОГО ВАРИАНТА ВЛОЖЕНИЯ ДЕНЕЖНЫХ СРЕДСТВ 26

Работа содержит 1 файл

КУрсовая 2011.docx

— 315.80 Кб (Скачать)

ПРИЛОЖЕНИ 2. ЛИСТИНГ ПРОГРАММЫ ДЛЯ НАХОЖДЕНИЕ ОПТИМАЛЬНОГО ВАРИАНТА ВЛОЖЕНИЯ ДЕНЕЖНЫХ СРЕДСТВ

 

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Xml.Serialization;

using System.Xml;

using System.IO;

using System.Runtime.Serialization.Formatters.Binary;

 

namespace Coursework_4

{

    public partial class Form1 : Form

    {

        private ListViewColumnSorter lvwColumnSorter;

 

        public Form1()

        {

            InitializeComponent();

            lvwColumnSorter = new ListViewColumnSorter();

            this.listView1.ListViewItemSorter = lvwColumnSorter;

        }

 

        public double Fv; // конечная сумма

        public double Pv; // начальная сумма

        public double Z = 0.02;  // инфляция

        public double N;    // срок в годах

        public string currency;

 

        string[] ConvertToStringArray(System.Array values)

        {

            string[] theArray = new string[values.Length];

 

            for (int i = 1; i <= values.Length; i++)

            {

                if (values.GetValue(1, i) == null)

                    theArray[i - 1] = "";

                else

                    theArray[i - 1] = (string)values.GetValue(1, i).ToString();

            }

            return theArray;

        }

 

        private void button1_Click(object sender, EventArgs e)

        {

            List<int> indexes = new List<int>();

            string currency = String.Empty;

 

            if (summTextBox.Text != String.Empty)

            {

                Pv = Double.Parse(summTextBox.Text);

                N = Double.Parse(timeTextBox.Text);

 

                if (EUR.Checked)

                    currency = "евро";

                if (RUR.Checked)

                    currency = "российские рубли";

                if (BLR.Checked)

                    currency = "белорусские рубли";

                if (USD.Checked)

                    currency = "доллары США";

 

 

                for (int i = 0; i < dataGridView1.Rows.Count - 1; i++)

                {

                    string currencyValue = dataGridView1.Rows[i].Cells[3].Value.ToString();

 

                    int minCurrency = int.Parse(dataGridView1.Rows[i].Cells[4].Value.ToString());

 

                    if (currencyValue.Contains(currency))

                    {

                        if (minCurrency <=   Int64.Parse(summTextBox.Text))

                            if (int.Parse(dataGridView1.Rows[i].Cells[6].Value.ToString()) >= timeTextBox.Value)

                                indexes.Add(i);

                    }

                }

 

                listView1.Items.Clear();

                foreach (int n in indexes)

                {

                    Fv = Pv * Math.Pow(1 + Convert.ToDouble(dataGridView1.Rows[n].Cells[2].Value), N / 12) - Pv * Math.Pow(1 + Z, N / 12);

                    ListViewItem item = new ListViewItem(dataGridView1.Rows[n].Cells[0].Value.ToString());

                    item.SubItems.Add(dataGridView1.Rows[n].Cells[1].Value.ToString());

                    item.SubItems.Add(Fv.ToString("f2") + " " + currency);

                    listView1.Items.Add(item);

                }

            }

            else

            {

                MessageBox.Show("Необходимо ввести сумму!");

            }

        }

 

        private void Form1_Load(object sender, EventArgs e)

        {

            Microsoft.Office.Interop.Excel.Application ExcelAppR = new Microsoft.Office.Interop.Excel.Application();

            Microsoft.Office.Interop.Excel.Workbook ExcelWorkBookR = ExcelAppR.Workbooks.Open(

             AppDomain.CurrentDomain.BaseDirectory + "table_coursework.xlsx", 0, false, 5, "", "", true,

              Microsoft.Office.Interop.Excel.XlPlatform.xlWindows,

              "\t", false, false, 0, true, true, false);

            Microsoft.Office.Interop.Excel.Worksheet ExcelWorksheetR;

            ExcelWorksheetR = (Microsoft.Office.Interop.Excel.Worksheet)ExcelWorkBookR.Worksheets.get_Item(1);

            for (int i = 1; i <= 329; i++)

            {

                Microsoft.Office.Interop.Excel.Range range = ExcelWorksheetR.get_Range("A" + i.ToString(), "J" + i.ToString());

                System.Array myvalues = (System.Array)range.Cells.Value2;

                string[] strArray = ConvertToStringArray(myvalues);

                dataGridView1.Rows.Add(strArray);

                progressBar1.Value = i;

            }

        }

 

        private void listView1_ColumnClick(object sender, ColumnClickEventArgs e)

        {

            if (e.Column == lvwColumnSorter.SortColumn)

            {

                if (lvwColumnSorter.Order == SortOrder.Ascending)

                {

                    lvwColumnSorter.Order = SortOrder.Descending;

                }

                else

                {

                    lvwColumnSorter.Order = SortOrder.Ascending;

                }

            }

            else

            {

                lvwColumnSorter.SortColumn = e.Column;

                lvwColumnSorter.Order = SortOrder.Ascending;

            }

            this.listView1.Sort();

        }

    }

}

 




Информация о работе Нахождение оптимального плана вложения денежных средств в депозиты