Мегаобучалка Главная | О нас | Обратная связь


Достоинства и недостатки. Рекомендации по использованию



2019-10-11 150 Обсуждений (0)
Достоинства и недостатки. Рекомендации по использованию 0.00 из 5.00 0 оценок




*  Гипотеза о том, что все промежуточные выплаты будут реинвестированы под один и тот же процент, пока еще для российского рынка является слишком сильной. Данное допущение уместно для очень стабильной долгосрочной конъюнктуры процентных ставок.

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

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

*  У точечных показателей доходности по сравнению с кривой распределения процентных ставок есть достоинства — их динамику более удобно изображать графически на плоскости, тогда как для изображения динамики всей кривой доходности нужны уже объемные графики.

*  Описанный выше индикатор - инструмент макропрогнозирования в средне- и долгосрочной перспективе.


Приложение 3. Оценка между точным решением и приближенным значением.

 

#include <iostream.h>

#include <stdio.h>

#include <math.h>

#include <conio.h>

const N=5;          // кол-в инстументов

int n;               // кол-во бумаг

float Q[N],           // объемы бумаг

P[N],           // цены приобретения

T[N],           // интервал обращения

Ppr;             // цена продажи

 

// метод вычисления доходности портфеля численным методом секущих Ньютона

// усовершенствованный

float method3() {

 int i;

 float Ik; // Ik - значение %

 float F=0,

  F0;

 for (Ik=-50;Ik<300;Ik+=0.01) {

F0=F;

F=0;

for (i=0;i<N;i++)

F+=Q[i]*P[i]*pow(1+Ik/1200,(float)T[i]/30)-Ppr*Q[i];

if (F0<=0 && F>=0) break;

 }

return Ik;

}

 

// метод вычисления доходности портфеля через взвешивание по времени и объему

float method2() {

 int i;

 float Ik,S,S1;

 float D[N],D1[N];

 for (i=0;i<N;i++) {

D[i]=(((float)Ppr-(float)P[i])/(float)P[i]*36500/(float)T[i]);

D1[i]=(pow(1+D[i]*(float)T[i]/36500,30/(float)T[i])-1)*1200;

 }

 S=0;S1=0;

 for (i=0;i<N;i++) {

S+=D1[i]*Q[i]*P[i]*T[i];

S1+=Q[i]*P[i]*T[i];

 }

 Ik=S/S1;

 return Ik;

}

 

void main(void) {

 float I;

 clrscr();

 Q[0]=223;Q[1]=200;Q[2]=400;Q[3]=500;Q[4]=300;Q[5]=271;Q[6]=32;Q[7]=10;

 P[0]=80.16;P[1]=80.53,P[2]=80.37;P[3]=80.21;P[4]=80.05;P[5]=75.00;P[6]=93.22;P[7]=92.5;

 T[0]=40;T[1]=40;T[2]=40;T[3]=40;T[4]=40;T[5]=148;T[6]=14;T[7]=11;

 Ppr=87.15;

 I=method3();

 cout<<endl<<"Ставка по численному методу "<<I;

 I=method2();

 cout<<endl<<"Ставка по методу взвешивания "<<I;

}

 

Результат:

Ставка по численному методу: 76.555565

Ставка по методу взвешивания: 76.550621


Приложение 4. Проверка метода на случайной выборке.

Программа 1.

 

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

#include <conio.h>

const N=8;

void main(void) {

 float Q[N], // кол-во

  P[N], // цена

  T[N], // дней до погашения

  D[N], // дох-ть эффективная

  Q1[N], // нач. портфель

  P1[N], // нач. цены

  Cush,S; // деньги

 float S1,S2;

 int k,maxk,i;

 T[0]=58;

 T[1]=37;

 T[2]=72;

 T[3]=107;

 T[4]=135;

 T[5]=163;

 T[6]=303;

 T[7]=359;

 randomize();

 Cush=200000; // 2 миллиарда

 maxk=0;

 clrscr();

 for (k=0;k<N;k++) {

D[k]=28+float(random(400))/100;

P[k]=100/pow((D[k]/1200+1),T[k]/30);

P1[k]=P[k];

Q[k]=Q1[k]=0;

if (D[maxk]<D[k]) maxk=k;

printf("\n%f %f",D[k],P[k]);

 }

 Q1[maxk]=Q[maxk]=int(Cush/(P[maxk]*1.001));

 Cush=Cush-Q[maxk]*P[maxk]*1.001;

 printf("\n%d %f %f",maxk,Q1[maxk],Cush);

 S=0;

 for (k=0;k<N;k++) S+=Q[k]*P[k];

 

 for (i=1;i<=21;i++) {

maxk=0;

for (k=0;k<N;k++) {

D[k]=28+float(random(200))/100;

P[k]=100/pow((D[k]/1200+1),(T[k]-i)/30);

if (D[maxk]<D[k]) maxk=k;

}

for (k=0;k<N;k++) {

if (Q[k]>0)

if (D[k]+1<D[maxk]) {

Cush+=P[k]*Q[k]*0.999;

Q[maxk]+=int(Cush/(P[maxk]*1.001));

Cush=Cush-Q[maxk]*P[maxk]*1.001;

Q[k]=0;

}

}

printf("\nденьги %f",Cush);

for (k=0;k<N;k++) {

printf("\n Q[%d]= %f",k,Q[k]);

}

asm {

mov ax,0

int 16h

}

 }

 S1=S2=0;

 for (k=0;k<N;k++) {

S1+=Q1[k]*P[k];

S2+=Q[k]*P[k];

 }

 printf("\nнач.ст-ть :%fбыло бы :%f есть:%f",S,S1,S2);

}

 

Программа 2.

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

#include <conio.h>

const N=8;

void main(void) {

 float Q[N], // кол-во

  P[N], // цена

  T[N], // дней до погашения

  D[N], // дох-ть эффективная

  Q1[N], // нач. портфель

  P1[N], // нач. цены

  Cush,QQ,S; // деньги

 float S1,S2;

 int k,maxk,i;

 T[0]=58;

 T[1]=37;

 T[2]=72;

 T[3]=107;

 T[4]=135;

 T[5]=163;

 T[6]=303;

 T[7]=359;

 randomize();

 Cush=0;

 maxk=0;

 clrscr();

 

 for (k=0;k<N;k++) {

Q1[k]=Q[k]=100;

D[k]=28+float(random(400))/100;

P[k]=100/pow((D[k]/1200+1),T[k]/30);

 }

 S=0;

 for (k=0;k<N;k++) S+=Q[k]*P[k];

 for (i=1;i<=21;i++) {

maxk=0;

for (k=0;k<N;k++) {

D[k]=28+float(random(400))/100;

P[k]=100/pow((D[k]/1200+1),(T[k]-i)/30);

if (D[maxk]<D[k]) maxk=k;

}

for (k=0;k<N;k++) {

if (Q[k]>0)

if (D[k]+1<=D[maxk]) {

Cush+=P[k]*Q[k]*0.999;

QQ=int(Cush/(P[maxk]*1.001));

Q[maxk]+=QQ;

Cush=Cush-QQ*P[maxk]*1.001;

Q[k]=0;

}

}

printf("\nденьги %f",Cush);

for (k=0;k<N;k++) {

printf("\n Q[%d]= %f",k,Q[k]);

}

asm {

mov ax,0

int 16h

}

 }

 S1=S2=0;

 for (k=0;k<N;k++) {

S1+=Q1[k]*P[k];

S2+=Q[k]*P[k];

 }

 printf("\nнач.ст-ть :%fбыло бы :%f есть:%f",S,S1,S2);

}

Программа 3.

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

#include <conio.h>

const N=8;

void main(void) {

 float Q[N], // кол-во

  P[N], // цена

  T[N], // дней до погашения

  D[N], // дох-ть эффективная

  Q1[N], // нач. портфель

  P1[N], // нач. цены

  Cush,S; // деньги

 float S1,S2;

 int k,maxk,i;

 T[0]=58;

 T[1]=37;

 T[2]=72;

 T[3]=107;

 T[4]=135;

 T[5]=163;

 T[6]=303;

 T[7]=359;

 randomize();

 Cush=200000; // 2 миллиарда

 maxk=0;

 clrscr();

 for (k=0;k<N;k++) {

D[k]=28+float(random(400))/100;

P[k]=100/pow((D[k]/1200+1),T[k]/30);

P1[k]=P[k];

Q[k]=Q1[k]=0;

if (D[maxk]<D[k]) maxk=k;

printf("\n%f %f",D[k],P[k]);

 }

 Q1[maxk]=Q[maxk]=int(Cush/(P[maxk]*1.001));

 Cush=Cush-Q[maxk]*P[maxk]*1.001;

 printf("\n%d %f %f",maxk,Q1[maxk],Cush);

 S=0;

 for (k=0;k<N;k++) S+=Q[k]*P[k];

 

 for (i=1;i<=21;i++) {

maxk=0;

for (k=0;k<N;k++) {

D[k]=28-i/10+float(random(200))/100;

P[k]=100/pow((D[k]/1200+1),(T[k]-i)/30);

if (D[maxk]<D[k]) maxk=k;

}

for (k=0;k<N;k++) {

if (Q[k]>0)

if (D[k]+1<D[maxk]) {

Cush+=P[k]*Q[k]*0.999;

Q[maxk]+=int(Cush/(P[maxk]*1.001));

Cush=Cush-Q[maxk]*P[maxk]*1.001;

Q[k]=0;

}

}

printf("\nденьги %f",Cush);

for (k=0;k<N;k++) {

printf("\n Q[%d]= %f",k,Q[k]);

}

asm {

mov ax,0

int 16h

}

 }

 S1=S2=0;

 for (k=0;k<N;k++) {

S1+=Q1[k]*P[k];

S2+=Q[k]*P[k];

 }

 printf("\nнач.ст-ть :%fбыло бы :%f есть:%f",S,S1,S2);

}

 

Программа 4.

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

#include <conio.h>

const N=8;

void main(void) {

 float Q[N], // кол-во

  P[N], // цена

  T[N], // дней до погашения

  D[N], // дох-ть эффективная

  Q1[N], // нач. портфель

  P1[N], // нач. цены

  Cush,QQ,S; // деньги

 float S1,S2;

 int k,maxk,i;

 T[0]=58;

 T[1]=37;

 T[2]=72;

 T[3]=107;

 T[4]=135;

 T[5]=163;

 T[6]=303;

 T[7]=359;

 randomize();

 Cush=0;

 maxk=0;

 clrscr();

 

 for (k=0;k<N;k++) {

Q1[k]=Q[k]=100;

D[k]=28+float(random(400))/100;

P[k]=100/pow((D[k]/1200+1),T[k]/30);

 }

 S=0;

 for (k=0;k<N;k++) S+=Q[k]*P[k];

 for (i=1;i<=21;i++) {

maxk=0;

for (k=0;k<N;k++) {

D[k]=28-i+float(random(400))/100;

P[k]=100/pow((D[k]/1200+1),(T[k]-i)/30);

if (D[maxk]<D[k]) maxk=k;

}

for (k=0;k<N;k++) {

if (Q[k]>0)

if (D[k]+1<=D[maxk]) {

Cush+=P[k]*Q[k]*0.999;

QQ=int(Cush/(P[maxk]*1.001));

Q[maxk]+=QQ;

Cush=Cush-QQ*P[maxk]*1.001;

Q[k]=0;

}

}

printf("\nденьги %f",Cush);

for (k=0;k<N;k++) {

printf("\n Q[%d]= %f",k,Q[k]);

}

asm {

mov ax,0

int 16h

}

 }

 S1=S2=0;

 for (k=0;k<N;k++) {

S1+=Q1[k]*P[k];

S2+=Q[k]*P[k];

 }

 printf("\nнач.ст-ть :%fбыло бы :%f есть:%f",S,S1,S2);

}

 

Программа 5.

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

#include <conio.h>

const N=8;

void main(void) {

 float Q[N], // кол-во

  P[N], // цена

  T[N], // дней до погашения

  D[N], // дох-ть эффективная

  Q1[N], // нач. портфель

  P1[N], // нач. цены

  Cush,S; // деньги

 float S1,S2;

 int k,maxk,i;

 T[0]=58;

 T[1]=37;

 T[2]=72;

 T[3]=107;

 T[4]=135;

 T[5]=163;

 T[6]=303;

 T[7]=359;

 randomize();

 Cush=200000; // 2 миллиарда

 maxk=0;

 clrscr();

 for (k=0;k<N;k++) {

D[k]=28+float(random(400))/100;

P[k]=100/pow((D[k]/1200+1),T[k]/30);

P1[k]=P[k];

Q[k]=Q1[k]=0;

if (D[maxk]<D[k]) maxk=k;

printf("\n%f %f",D[k],P[k]);

 }

 Q1[maxk]=Q[maxk]=int(Cush/(P[maxk]*1.001));

 Cush=Cush-Q[maxk]*P[maxk]*1.001;

 printf("\n%d %f %f",maxk,Q1[maxk],Cush);

 S=0;

 for (k=0;k<N;k++) S+=Q[k]*P[k];

 

 for (i=1;i<=21;i++) {

maxk=0;

for (k=0;k<N;k++) {

D[k]=28+i+float(random(400))/100;

P[k]=100/pow((D[k]/1200+1),(T[k]-i)/30);

if (D[maxk]<D[k]) maxk=k;

}

for (k=0;k<N;k++) {

if (Q[k]>0)

if (D[k]+1<D[maxk]) {

Cush+=P[k]*Q[k]*0.999;

Q[maxk]+=int(Cush/(P[maxk]*1.001));

Cush=Cush-Q[maxk]*P[maxk]*1.001;

Q[k]=0;

}

}

printf("\nденьги %f",Cush);

for (k=0;k<N;k++) {

printf("\n Q[%d]= %f",k,Q[k]);

}

asm {

mov ax,0

int 16h

}

 }

 S1=S2=0;

 for (k=0;k<N;k++) {

S1+=Q1[k]*P[k];

S2+=Q[k]*P[k];

 }

 printf("\nнач.ст-ть :%fбыло бы :%f есть:%f",S,S1,S2);

}

Программа 6.

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

#include <conio.h>

const N=8;

void main(void) {

 float Q[N], // кол-во

  P[N], // цена

  T[N], // дней до погашения

  D[N], // дох-ть эффективная

  Q1[N], // нач. портфель

  P1[N], // нач. цены

  Cush,QQ,S; // деньги

 float S1,S2;

 int k,maxk,i;

 T[0]=58;

 T[1]=37;

 T[2]=72;

 T[3]=107;

 T[4]=135;

 T[5]=163;

 T[6]=303;

 T[7]=359;

 randomize();

 Cush=0;

 maxk=0;

 clrscr();

 

 for (k=0;k<N;k++) {

Q1[k]=Q[k]=100;

D[k]=28+float(random(400))/100;

P[k]=100/pow((D[k]/1200+1),T[k]/30);

 }

 S=0;

 for (k=0;k<N;k++) S+=Q[k]*P[k];

 

 for (i=1;i<=21;i++) {

maxk=0;

for (k=0;k<N;k++) {

D[k]=28+i+float(random(400))/100;

P[k]=100/pow((D[k]/1200+1),(T[k]-i)/30);

if (D[maxk]<D[k]) maxk=k;

}

for (k=0;k<N;k++) {

if (Q[k]>0)

if (D[k]+1<=D[maxk]) {

Cush+=P[k]*Q[k]*0.999;

QQ=int(Cush/(P[maxk]*1.001));

Q[maxk]+=QQ;

Cush=Cush-QQ*P[maxk]*1.001;

Q[k]=0;

}

}

printf("\nденьги %f",Cush);

for (k=0;k<N;k++) {

printf("\n Q[%d]= %f",k,Q[k]);

}

asm {

mov ax,0

int 16h

}

 }

 S1=S2=0;

 for (k=0;k<N;k++) {

S1+=Q1[k]*P[k];

S2+=Q[k]*P[k];

 }

 printf("\nнач.ст-ть :%fбыло бы :%f есть:%f",S,S1,S2);

}




2019-10-11 150 Обсуждений (0)
Достоинства и недостатки. Рекомендации по использованию 0.00 из 5.00 0 оценок









Обсуждение в статье: Достоинства и недостатки. Рекомендации по использованию

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

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



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (150)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.006 сек.)