Управление риском процентной ставки с фьючерсами связи

Этот пример показывает, как застраховать риск процентной ставки портфеля с помощью фьючерсов связи.

Изменение длительности портфеля с фьючерсами связи

В управлении портфель связи можно использовать эталонный портфель, чтобы оценить производительность. Иногда менеджер ограничивается сохранить длительность портфеля в конкретной полосе длительности сравнительного теста. Один способ изменить длительность портфеля состоит в том, чтобы купить и продать связи, однако, могут быть причины, почему инвестиционный менеджер хочет поддержать существующий состав портфеля (например, текущие активы отражают, что основное исследование/представления о будущем возвращается). Поэтому другая опция для изменения длительности должна купить и продать фьючерсы связи.

Фьючерсы связи являются фьючерсными контрактами, где товар, который будет поставлен, является государственной облигацией, которая соответствует стандарту, обрисованному в общих чертах во фьючерсном контракте (например, связь имеет заданное остающееся время к зрелости).

Поскольку часто много связей доступны, и каждая связь может иметь различный купон, можно использовать коэффициент преобразования, чтобы нормировать оплату длинным к короткому.

Там существуйте хорошо развитые рынки для фьючерсов государственной облигации. А именно, Чикагская товарная биржа предлагает фьючерсы на следующем:

  • 2-летняя ценная бумага

  • 3-летняя ценная бумага

  • 5-летняя ценная бумага

  • 10-летняя ценная бумага

  • 30-летняя связь

https://www.cmegroup.com/trading/interest-rates/

Eurex предлагает фьючерсы на следующем:

  • Фьючерсы Юро-Шатца 1.75 к 2,25

  • Фьючерсы Euro-Bobl 4.5 к 5,5

  • Еврозащитите насыпью фьючерсы 8.5 к 10,5

  • Фьючерсы Euro-Buxl 24.0 к 35

https://www.eurexchange.com/exchange-en/

Фьючерсы связи могут использоваться, чтобы изменить длительность портфеля. Поскольку фьючерсы связи получают свое значение на базовый инструмент, срок действия фьючерсного контракта связи связан с длительностью базовой связи.

Существует две проблемы в вычислении этой длительности:

  • С тех пор существует много доступных связей для доставки, короткое в контракте имеет выбор в который связь поставить.

  • Некоторые контракты позволяют короткую гибкость в выборе даты поставки.

Как правило, связь, используемая для анализа, является связью, которая является самой дешевой для короткого, чтобы поставить (CTD).

Один подход должен вычислить меры по длительности с помощью длительности CTD и коэффициента преобразования.

Например, Приведенная стоимость Пункта (PVBP) может быть вычислена из следующего:

PVBPFutures=PVBPCTDConversionFactorCTD

PVBPCTD=DurationCTD*PriceCTD100

Обратите внимание на то, что эти определения длительности для фьючерсного контракта являются аппроксимированными, и не составляют значение вариантов доставки для короткого.

Если цель состоит в том, чтобы изменить длительность портфеля, используйте следующее:

NumContracts=(DurTarget-DurInitial)*ValuePortfolioDurCTD*PriceCTD*ContractSize*ConvFactorCTD

Обратите внимание на то, что размер контракта обычно для 100 000 номинальных стоимостей связи - таким образом, размер контракта обычно 1000, как номинальная стоимость связи равняется 100.

Следующий пример принимает начальную длительность, стоимость портфеля и целевую длительность для портфеля с воздействием Европейской процентной ставки. Июньский Фьючерсный контракт Евронасыпи используется, чтобы изменить длительность портфеля.

Обратите внимание на то, что обычно фьючерсные контракты предлагаются на март, июнь, сентябрь и декабрь.

% Assume the following for the portfolio and target
PortfolioDuration = 6.4;
PortfolioValue = 100000000;
BenchmarkDuration = 4.8;

% Deliverable Bunds -- note that these conversion factors may also be
% computed with the MATLAB(R) function convfactor
BondPrice = [106.46;108.67;104.30];
BondMaturity = datenum({'04-Jan-2018','04-Jul-2018','04-Jan-2019'});
BondCoupon = [.04;.0425;.0375];
ConversionFactor = [.868688;.880218;.839275];

% Futures data -- found from http://www.eurexchange.com
FuturesPrice = 122.17;
FuturesSettle = '23-Apr-2009';
FuturesDelivery = '10-Jun-2009';

% To find the CTD bond we can compute the implied repo rate
ImpliedRepo = bndfutimprepo(BondPrice,FuturesPrice,FuturesSettle,...
    FuturesDelivery,ConversionFactor,BondCoupon,BondMaturity);

% Note that the bond with the highest implied repo rate is the CTD
[CTDImpRepo,CTDIndex] = max(ImpliedRepo);

% Compute the CTD's Duration -- note the period and basis for German Bunds
Duration = bnddurp(BondPrice,BondCoupon,FuturesSettle,BondMaturity,1,8);

ContractSize = 1000;

% Use the formula above to compute the number of contracts to sell
NumContracts = (BenchmarkDuration - PortfolioDuration)*PortfolioValue./...
    (BondPrice(CTDIndex)*ContractSize*Duration(CTDIndex))*ConversionFactor(CTDIndex);

disp(['To achieve the target duration, ' num2str(abs(round(NumContracts))) ...
    ' Euro-Bund Futures must be sold.'])
To achieve the target duration, 180 Euro-Bund Futures must be sold.

Изменение длительности ключевой процентной ставки портфеля с фьючерсами связи

Один из недостатков использования длительности как мера по риску - то, что это принимает, что параллель переключает кривую доходности на нижний регистр. В то время как много исследований показали, что это объясняет, что примерно 85% перемещения в кривой доходности, изменения в наклоне или форме кривой доходности не получены длительностью, и поэтому, стратегии хеджирования не успешны при обращении к этим движущим силам.

Один подход должен использовать длительность ключевой процентной ставки - это особенно релевантно при использовании фьючерсов связи с несколькими сроками платежа, как Казначейские фьючерсы.

Следующий пример использует 2, 5, 10 и 30-летние фьючерсы Казначейской облигации, чтобы застраховать длительность ключевой процентной ставки портфеля.

Вычислительная длительность ключевой процентной ставки требует кривой нулевой ширины. Этот пример использует кривую нулевой ширины, опубликованную Казначейством и найденную в следующем местоположении:

https://www.ustreas.gov/offices/domestic-finance/debt-management/interest-rate/yield.shtml

Обратите внимание на то, что эта кривая нулевой ширины могла также быть выведена с помощью функциональности Кривой Процентной ставки, найденной в IRDataCurve и IRFunctionCurve.

% Assume the following for the portfolio and target, where the duration
% vectors are key rate durations at 2, 5, 10, and 30 years.
PortfolioDuration = [.5 1 2 6];
PortfolioValue = 100000000;
BenchmarkDuration = [.4 .8 1.6 5];

% The following are the CTD Bonds for the 30, 10, 5 and 2 year futures
% contracts -- these were determined using the procedure outlined in the
% previous section.
CTDCoupon = [4.75 3.125 5.125 7.5]'/100;
CTDMaturity = datenum({'3/31/2011','08/31/2013','05/15/2016','11/15/2024'});
CTDConversion = [0.9794 0.8953 0.9519 1.1484]';
CTDPrice = [107.34 105.91 117.00 144.18]';

ZeroRates = [0.07 0.10 0.31 0.50 0.99 1.38 1.96 2.56 3.03 3.99 3.89]'/100;
ZeroDates = daysadd(FuturesSettle,[30 360 360*2 360*3 360*5 ...
    360*7 360*10 360*15 360*20 360*25 360*30],1);

% Compute the key rate durations for each of the CTD bonds.
CTDKRD = bndkrdur([ZeroDates ZeroRates], CTDCoupon,FuturesSettle,...
    CTDMaturity,'KeyRates',[2 5 10 30]);

% Note that the contract size for the 2 Year Note Future is $200,000
ContractSize = [2000;1000;1000;1000];

NumContracts = (bsxfun(@times,CTDPrice.*ContractSize./CTDConversion,CTDKRD))\...
    (BenchmarkDuration - PortfolioDuration)'*PortfolioValue;

sprintf(['To achieve the target duration, \n' ...
    num2str(-round(NumContracts(1))) ' 2 Year Treasury Note Futures must be sold, \n' ...
    num2str(-round(NumContracts(2))) ' 5 Year Treasury Note Futures must be sold, \n' ...
    num2str(-round(NumContracts(3))) ' 10 Year Treasury Note Futures must be sold, \n' ...
    num2str(-round(NumContracts(4))) ' Treasury Bond Futures must be sold, \n'])
ans = 
    'To achieve the target duration, 
     24 2 Year Treasury Note Futures must be sold, 
     47 5 Year Treasury Note Futures must be sold, 
     68 10 Year Treasury Note Futures must be sold, 
     120 Treasury Bond Futures must be sold, 
     '

Улучшание производительности преграды с регрессией

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

Поэтому, если положение застраховано с будущим, где связь CTD имеет зрелость, которая отличается, чем портфель, это могло привести к ситуации, где преграда под - или перекомпенсировала для фактического риска процентной ставки портфеля.

Один подход должен выполнить регрессию на исторических урожаях в различных сроках платежа, чтобы определить Бету Урожая, которая является значением, которое представляет, сколько еще урожай изменяется для различных сроков платежа.

Этот пример показывает, как использовать этот подход с Великобританией Долгие Позолоченные фьючерсы и исторические данные на Позолоченных Урожаях.

Данные о рынке по Позолоченным фьючерсам найдены в следующем:

https://www.euronext.com

Исторические данные на гарантированных ценных бумагах найдены в следующем;

https://www.dmo.gov.uk

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

Также обратите внимание, что дополнительное улучшение учитывает корреляцию между различными сроками платежа. В то время как этот подход выходит за рамки этого примера, можно использовать это, чтобы реализовать минимальную преграду отклонения.

% Assume the following for the portfolio and target
PortfolioDuration = 6.4;
PortfolioValue = 100000000;
BenchmarkDuration = 4.8;

% This is the CTD Bond for the Long Gilt Futures contract
CTDBondPrice = 113.40;
CTDBondMaturity = datenum('7-Mar-2018');
CTDBondCoupon = .05;
CTDConversionFactor = 0.9325024;

% Market data for the Long Gilt Futures contract
FuturesPrice = 120.80;
FuturesSettle = '23-Apr-2009';
FuturesDelivery = '10-Jun-2009';

CTDDuration = bnddurp(CTDBondPrice,CTDBondCoupon,FuturesSettle,CTDBondMaturity);

ContractSize = 1000;

NumContracts = (BenchmarkDuration - PortfolioDuration)*PortfolioValue./...
    (CTDBondPrice*ContractSize*CTDDuration)*CTDConversionFactor;

disp(['To achieve the target duration with a conventional hedge ' ...
    num2str(-round(NumContracts)) ...
    ' Long Gilt Futures must be sold.'])
To achieve the target duration with a conventional hedge 182 Long Gilt Futures must be sold.

Чтобы улучшить точность этой преграды, исторические данные используются, чтобы определить отношение между стандартным отклонением урожаев. А именно, стандартное отклонение урожаев построено и регрессировало по сравнению с длительностью связи. Это отношение затем используется, чтобы вычислить Бету Урожая для преграды.

% Load data from XLS spreadsheet
load ukbonddata_20072008

Duration = bnddury(Yield(1,:)',Coupon,Dates(1,:),Maturity);

scatter(Duration,100*std(Yield))
title('Standard Deviation of Yields for UK Gilts 2007-2008')
ylabel('Standard Deviation of Yields (%)')
xlabel('Duration')
annotation(gcf,'textbox',[0.4067 0.685 0.4801 0.0989],...
    'String',{'Note that the Standard Deviation',...
    'of Yields is greater at shorter maturities.'},...
    'FitBoxToText','off',...
    'EdgeColor','none');

stats = regstats(std(Yield),Duration);
YieldBeta = (stats.beta'*[1 PortfolioDuration]')./(stats.beta'*[1 CTDDuration]');

Теперь Бета Урожая используется, чтобы вычислить новое значение для количества контрактов, которые будут проданы. Обратите внимание на то, что, поскольку длительность портфеля была меньше, чем длительность Позолоты CTD, количество фьючерсов, чтобы продать на самом деле больше, чем в первом случае.

NumContracts = (BenchmarkDuration - PortfolioDuration)*PortfolioValue./...
    (CTDBondPrice*ContractSize*CTDDuration)*CTDConversionFactor*YieldBeta;

disp(['To achieve the target duration using a Yield Beta-modified hedge, ' ...
    num2str(abs(round(NumContracts))) ...
    ' Long Gilt Futures must be sold.'])
To achieve the target duration using a Yield Beta-modified hedge, 193 Long Gilt Futures must be sold.

Библиография

Этот пример основан на следующих книгах и бумагах:

[1] Burghardt, G. T. Белтон, М. Лейн и J. Папа. Основание казначейской облигации. Нью-Йорк, Нью-Йорк: McGraw-Hill, 2005.

[2] Krgin, D. Руководство глобальных вычислений фиксированного дохода. Нью-Йорк, Нью-Йорк: John Wiley & Sons, 2002.

[3] Программа программы CFA, уровень III, объем 4, читая 31. Институт CFA, 2009.

Для просмотра документации необходимо авторизоваться на сайте