Telegram Group & Telegram Channel
ХОЛОДНЫЙ РАСЧЕТ ∅
🦅 Обязательная продажа валюты не впечатлила денежный рынок Ожидания по траектории ключевой ключевой ставке до мая 2024 снизились на в пределах 0.1-0.2пп: пик все еще ~15.5% в апреле, снижение с 2кв24 🧙 Оценка ожидания по ставки из ROISfix @c0ldness
🐍 Вермишельный график ожиданий из свопов ROISfix: Рецепт приготовления

from nelson_siegel_svensson import NelsonSiegelCurve
from nelson_siegel_svensson.calibrate import calibrate_ns_ols
import numpy as np
from datetime import datetime as dt
from datetime import timedelta

df_roisfix = # IMPORT ROISFIX DATA

# FIXED EXCESS RETURN FOR FIXED LEG (ANNUALIZED)
term_prem = 0.028*12

maturities = [1/52,2/52,1/12,2/12,3/12,6/12,1,2]
li_term_prem = [x*term_prem for x in maturities]

df_roisfix_ex_exret = df_roisfix.sub(li_term_prem,axis=1).copy(deep=True)

col_mat = np.linspace(1,180,30)
col_date = df_roisfix_ex_exret_resample.index.to_list()

ix_date = pd.date_range(start=dt(2011,1,1), end=dt(2023,9,13) + timedelta(days=300),freq='D')
df_rates = pd.DataFrame(columns=col_date,index=ix_date)

for ix, row in df_roisfix_ex_exret_resample.iterrows():
try:
vals = row.dropna().values
curve_fit, status = calibrate_ns_ols(np.array( maturities[:len(vals)]),vals)
NSS_Fwd = NelsonSiegelCurve.forward(curve_fit,np.array([x/360 for x in col_mat]))
df_rates.loc[pd.date_range(start=ix+ timedelta(days=6), end=ix + timedelta(days=180),freq='6D'),ix] = NSS_Fwd
# print(ix)
except:
pass

df_rates.tail()
🫡 Спасибо за посещение нашего научного макротелеграм-семинара

@c0ldness



group-telegram.com/c0ldness/2107
Create:
Last Update:

🐍 Вермишельный график ожиданий из свопов ROISfix: Рецепт приготовления

from nelson_siegel_svensson import NelsonSiegelCurve
from nelson_siegel_svensson.calibrate import calibrate_ns_ols
import numpy as np
from datetime import datetime as dt
from datetime import timedelta

df_roisfix = # IMPORT ROISFIX DATA

# FIXED EXCESS RETURN FOR FIXED LEG (ANNUALIZED)
term_prem = 0.028*12

maturities = [1/52,2/52,1/12,2/12,3/12,6/12,1,2]
li_term_prem = [x*term_prem for x in maturities]

df_roisfix_ex_exret = df_roisfix.sub(li_term_prem,axis=1).copy(deep=True)

col_mat = np.linspace(1,180,30)
col_date = df_roisfix_ex_exret_resample.index.to_list()

ix_date = pd.date_range(start=dt(2011,1,1), end=dt(2023,9,13) + timedelta(days=300),freq='D')
df_rates = pd.DataFrame(columns=col_date,index=ix_date)

for ix, row in df_roisfix_ex_exret_resample.iterrows():
try:
vals = row.dropna().values
curve_fit, status = calibrate_ns_ols(np.array( maturities[:len(vals)]),vals)
NSS_Fwd = NelsonSiegelCurve.forward(curve_fit,np.array([x/360 for x in col_mat]))
df_rates.loc[pd.date_range(start=ix+ timedelta(days=6), end=ix + timedelta(days=180),freq='6D'),ix] = NSS_Fwd
# print(ix)
except:
pass

df_rates.tail()
🫡 Спасибо за посещение нашего научного макротелеграм-семинара

@c0ldness

BY ХОЛОДНЫЙ РАСЧЕТ ∅




Share with your friend now:
group-telegram.com/c0ldness/2107

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

Additionally, investors are often instructed to deposit monies into personal bank accounts of individuals who claim to represent a legitimate entity, and/or into an unrelated corporate account. To lend credence and to lure unsuspecting victims, perpetrators usually claim that their entity and/or the investment schemes are approved by financial authorities. READ MORE However, the perpetrators of such frauds are now adopting new methods and technologies to defraud the investors. There was another possible development: Reuters also reported that Ukraine said that Belarus could soon join the invasion of Ukraine. However, the AFP, citing a Pentagon official, said the U.S. hasn’t yet seen evidence that Belarusian troops are in Ukraine. It is unclear who runs the account, although Russia's official Ministry of Foreign Affairs Twitter account promoted the Telegram channel on Saturday and claimed it was operated by "a group of experts & journalists."
from fr


Telegram ХОЛОДНЫЙ РАСЧЕТ ∅
FROM American