˲ ˲:
 
 

 

 

 

 

 

     
 
     

 

-
.

: , , .. , . ? ? , , , , , . .

.

, , . , - , , .
, , . - . , , (,-)/ . - .
i - , i- . ̳ , . di - i- .
dp. , 1 + dp, - i- xi + di * xi, , xi + + xi * di = 1 + xi * di. , dp = = xi * di.
, , .
, , . mi,, i - () , mi = M [di] - ri == Vii, Vii - i- . mi, ri i- . Vij i- j- ( Kij).
, . M [dp] = x1 * M [d1] + ... + xn * M [dn] == xi * mi mp. D [dp] =]] xi * xj * Vij. , , mp , p == D [dp] - rp. Vp.
, .

.

. . . . (H. Markovitz) 1952 , .
n , . xi,
Vp === xi * xj * Vij

, mp, xi * mi = mp.
xi - , :: xi = 1.
, :

min mm xi * xj * Vij
ixi = 1
mi * xi = mp
xi? 0, ..., xn? 0

. , .



г.

:

L (x1, ..., xn ,,,,)=)) Vij * xi * xj - * (* mi -1) - * (* mi * xi - mp),

L/Lxs = 2 *= Vis * xi - - - * ms = 0, s = 1, ..., n. (*)

, , (n +2) x1, ..., xn,,, (n +2) .
, :

1 x1 m1
e =. x =. m =. x = (x1, ..., xn), mm = (m1, ..., mn)
. . .
1 xn mn

.
B- , B-1 - . (*) :
B * x = ((/ 2) * e + ((/ 2) * m,
ee * x = 1,
mm * x = mp.

, m1, ..., mn ', B (| B | 0), , -1. :
= (/2) * -1 * + (/2) * -1 * m, (**)< br />
, /2 // 2:

( * -1 * ) **/2 + ( * -1 * m) **/2 = 1
(m (* B-1 * e) **/2 + (m (* -1 * m) **/2 = mp.

,
/ 2 = ((m (* -1 * m)-mp * ( * -1 * m ))/(( * -1 * ) * (mm * -1 * m) - ( mm * B-1 * e) 2)
/ 2 = (mp * ( * -1 * ) - (mm * B-1 * e ))/(( * -1 * ) * (mm * -1 * m) - (mm * B-1 * e) 2)

ϳ (**) :

[(mm * -1 * m)-mp * ( * -1 * m)] * -1 * + [mp * ( * -1 * ) - (mm * B-1 * e)] * -1 * m
x * =
( * -1 * ) * (mm * -1 * m) - (mm * B-1 * e) 2

, * *= 1 mm * *= mp.
, , :

[m2p * ( * -1 * ) - 2 * mp * (mm * B-1 * e) + (mm * -1 * m)]
D * p =
[( * -1 * ) * (mm * -1 * m) - (mm * B-1 * e) 2]

* p == D * p, .
x * i? 0, x * i i- . x * i
? , , ' i- ( , ). . ֳ . ( i- ) , .
, .

.

: m1 = 11, 1 = 4, m2 = 10, 2 = 3, m3 = 9, 3 = 1, . mp = 10.
³: x1 = 0,3396; x2 = 0,3208; x3 = 0,3396. ̳ p = 1,699. . , 2- , , 2- (1,699 <3).>

.

, .

program riski;
uses crt;
type mas = array [1 .. 10] of real;
mas2 = array [1 .. 10,1 .. 10] of real;
var a: real;
m, be, bm: mas;
B, E, b1, e1: mas2;
i, k, c, v, l, j, n: integer;
mp, ebe, mbm, ebm, x, mbe: real;

procedure base;
begin
for i: = 1 to n do ( B)
begin
for c: = 1 to n do ( )
begin
for v: = 1 to n do
begin
B1 [c, v]: = B [c, v];
e1 [c, v]: = e [c, v];
end;
end;
for k: = 1 to n do
begin
B [i, k]: = B1 [i, k]/b1 [i, i]; ( )
E [i, k]: = E1 [i, k]/b1 [i, i]; for l: = 1 to n do
begin ( )
if li then
begin
B [l, k]: = (B1 [l, k] - (B1 [l, i] * B1 [i, k]/B1 [i, i ]));< br /> E [l, k]: = (E1 [l, k] - (B1 [l, i] * E1 [i, k]/B1 [i, i ]));< br /> end;
end;
end;
end;

for i: = 1 to n do ( , - Be)
begin
for j: = 1 to n do
begin
be [i]: = be [i] + e [i, j];
end;
end;

for i: = 1 to n do ( - Bm)
begin
for j: = 1 to n do
begin
Bm [i]: = Bm [i] + m [j] * e [i, j];
end;
end;

for i: = 1 to n do
begin ( )
ebe: = ebe + be [i]; ( )
ebm: = ebm + bm [i];
mbm: = mbm + m [i] * bm [i];
mbe: = mbe + m [i] * be [i];
end;
end;
procedure vvod;
label out1, out2, out3, out4, out5;
var z: real; mi, ma: real;
begin
writeln;
writeln ( ' ');
writeln;
writeln;
writeln ( ' ˲ Ͳ Բ-̲ ˲');
writeln;
writeln ( ': ò, Բ II-3 .');< br /> writeln;
writeln ( ': ֲ̲ .');< br /> writeln;
writeln;
writeln;
out1:
writeln;
writeln ( ' , ');
write ( ' ( 10):');
readln (n);
if (nint (n)) or (n> 10) then
begin
writeln ( ' ! 10!');
goto out1;
end;
writeln;

writeln ( ' () :');< br /> for i: = 1 to n do
begin
E [i, i]: = 1;
out2:
write ( '', i, '- :');
readln (m [i]);
if (m [i]
begin
writeln ( ' ! !');
goto out2;
end;
end;
writeln;
writeln ('!!! ');
writeln ( ' , ');
writeln ( '' . ');
writeln ( ' !!!');< br /> writeln;
writeln ( ' ( ()) :');
for i: = 1 to n do
begin
out3:
write ( '', i, '- :');
readln (z);
if (z
begin
writeln ( ' ! !');
goto out3;
end;
b [i, i]: = z * z;
end;

writeln;
writeln ( ' ( ) .');< br /> writeln ( ' .');< br /> for i: = 1 to n do
begin
for j: = i +1 to n do ( )
begin
out4:
write ( '', i, '- ', j, '- :');
readln (z);
if abs (z)> = sqrt (b [i, i]) * sqrt (b [j, j]) then
begin
writeln ( ' ! !');
goto out4;
end;
b [i, j]: = z;
b [j, i]: = z;
if ij then begin E [i, j]: = 0; end;
end;
end;
writeln;
ma: = 0;
for i: = 1 to n do
begin
if m [i]> ma then ma: = m [i];
end;
mi: = 100000000;
for i: = 1 to n do
begin
if m [i]
end;
writeln ( ' .');
write ( ' :');
out5:
readln (mp);
if (mpma) then
begin
writeln ( ' !');< br /> write ( ' !:');
goto out5;
end;
end;


procedure vivod;
begin
writeln;
writeln ( ' . .');< br /> for i: = 1 to n do
begin
x: = ((mbm-mp * ebm) * be [i] + (mp * ebe-mbe) * bm [i])/(ebe * mbm-mbe * mbe);
writeln ( '', i, '- :', x: 6:5);
if x
begin
writeln ( ' ', i, '- , ');
writeln ( ' "short sale", ');
writeln ( ' .');< br /> end;
end;
writeln;
writeln ( '̳ :', sqrt ((mp * mp * ebe-2 * mp * mbe + mbm)/(ebe * mbm-mbe * mbe)): 6:5);
end;

begin
clrscr;
textcolor (yellow);
textbackground (blue);
vvod;
base;
vivod;
readln;
end.


:

1. .. . .: 1998.
2. .. Գ . .: 2000.

     
 
     
 
 
refs.co.ua - , , , , . - . , .
8 of 10 on the basis of 2884 Review.
 

 

 

 

 

 

 

 
 
 
  | | .