Самофинансирующаяся преграда
[PortSens,PortValue,PortHolds] =
hedgeslf(Sensitivities,Price,CurrentHolds,FixedInd,ConSet)
| Количество инструментов ( |
|
|
|
|
| (Необязательно) Пустой или количество фиксированных инструментов ( |
| (Необязательно) Количество ограничений ( |
[PortSens,PortValue,PortHolds] =
hedgeslf(Sensitivities,Price,CurrentHolds,FixedInd,ConSet)
выделяет самофинансирующуюся преграду среди набора инструментов. hedgeslf
находит перераспределение в портфеле финансовых инструментов, который страхует портфель против перемещений рынка, и это является самым близким к тому, чтобы быть самофинансирующимся (поддержание постоянной стоимости портфеля). По умолчанию первый вводимый инструмент застрахован с другими инструментами.
PortSens
является 1
-by-NSENS
вектор долларовой чувствительности портфеля. Когда совершенная преграда существует, PortSens
является нулями. В противном случае самая лучшая преграда выбрана.
PortValue
является общей стоимостью портфеля (скаляр). Когда совершенно самофинансирующаяся преграда существует, PortValue
равен dot(Price, CurrentWts)
начального портфеля.
PortHolds
является NINST
-by-1
вектор контрактов, выделенных каждому инструменту. Это - перераспределенный портфель.
Ограничения PortHolds(FixedInd) = CurrentHolds(FixedInd)
добавлен к любым ограничениям, передали в ConSet
. Передайте FixedInd = []
, чтобы задать все ограничения через ConSet
.
Ограничения по умолчанию, сгенерированные portcons
, являются несоответствующими, поскольку они требуют, чтобы сумма всех активов была положительна и равна одному.
hedgeself
сначала пытается найти выделения портфеля, которые делают его самым близким к тому, чтобы быть самофинансирующимся при сокращении чувствительности к 0. Если никакое решение не найдено, это находит выделения, которые минимизируют чувствительность. Если получившийся портфель является самофинансирующимся, PortValue
равен значению исходного портфеля.
Пример 1. Совершенная чувствительность не может быть достигнута.
Sens = [0.44 0.32; 1.0 0.0]; Price = [1.2; 1.0]; W0 = [1; 1]; [PortSens, PortValue, PortHolds]= hedgeslf(Sens, Price, W0)
PortSens = 0.0000 0.3200 PortValue = 0.7600 PortHolds = 1.0000 -0.4400
Пример 2. Ограничения находятся в конфликте.
Sens = [0.44 0.32; 1.0 0.0]; Price = [1.2; 1.0]; W0 = [1; 1]; ConSet = pcalims([2 2]) % O.K. if nothing fixed. [PortSens, PortValue, PortHolds]= hedgeslf(Sens, Price, W0,... [], ConSet)
PortSens = 2.8800 0.6400 PortValue = 4.4000 PortHolds = 2 2
% W0(1) is not greater than 2. [PortSens, PortValue, PortHolds] = hedgeslf(Sens, Price, W0,... 1, ConSet)
??? Error using ==> hedgeslf Overly restrictive allocation constraints implied by ConSet and by fixing the weight of instruments(s): 1
Пример 3. Ограничениям невозможно соответствовать.
Sens = [0.44 0.32; 1.0 0.0]; Price = [1.2; 1.0]; W0 = [1; 1]; ConSet = pcalims([2 2],[1 1]); [PortSens, PortValue, PortHolds] = hedgeslf(Sens, Price, W0,... [],ConSet)
??? Error using ==> hedgeslf Overly restrictive allocation constraints specified in ConSet