|
12 | 12 | }, |
13 | 13 | { |
14 | 14 | "cell_type": "code", |
15 | | - "execution_count": 8, |
| 15 | + "execution_count": 1, |
16 | 16 | "id": "imports", |
17 | 17 | "metadata": {}, |
18 | 18 | "outputs": [], |
|
35 | 35 | "import pandas as pd\n", |
36 | 36 | "\n", |
37 | 37 | "from fuggers_py.core import Currency, Date, Frequency, YearMonth\n", |
38 | | - "from fuggers_py.market import InflationFixing, InMemoryInflationFixingSource\n", |
39 | | - "import fuggers_py.market.market_data as market_data\n", |
| 38 | + "from fuggers_py.market.snapshot import InflationFixing\n", |
| 39 | + "from fuggers_py.market.sources import InMemoryInflationFixingSource\n", |
| 40 | + "import fuggers_py.market.quotes as market_quotes\n", |
40 | 41 | "import fuggers_py.market.curves.fitted_bonds.fair_value as fitted_fair_value\n", |
| 42 | + "import fuggers_py.market.curves.fitted_bonds.inputs as fitted_inputs\n", |
41 | 43 | "import fuggers_py.market.curves.fitted_bonds.model as fitted_model\n", |
42 | 44 | "import fuggers_py.market.curves.fitted_bonds.optimization as fitted_optimization\n", |
43 | 45 | "import fuggers_py.market.curves.fitted_bonds.par_curve as fitted_par_curve\n", |
44 | 46 | "import fuggers_py.market.curves.fitted_bonds.pricing_adapters as fitted_pricing_adapters\n", |
45 | 47 | "import fuggers_py.market.curves.inflation.breakeven as inflation_breakeven\n", |
46 | 48 | "\n", |
47 | 49 | "for module in (\n", |
48 | | - " market_data,\n", |
| 50 | + " market_quotes,\n", |
49 | 51 | " fitted_fair_value,\n", |
| 52 | + " fitted_inputs,\n", |
50 | 53 | " fitted_model,\n", |
51 | 54 | " fitted_pricing_adapters,\n", |
52 | 55 | " fitted_optimization,\n", |
|
55 | 58 | "):\n", |
56 | 59 | " importlib.reload(module)\n", |
57 | 60 | "\n", |
58 | | - "BondQuote = market_data.BondQuote\n", |
| 61 | + "BondQuote = market_quotes.BondQuote\n", |
59 | 62 | "BreakevenParCurve = inflation_breakeven.BreakevenParCurve\n", |
60 | 63 | "BreakevenZeroCurve = inflation_breakeven.BreakevenZeroCurve\n", |
61 | 64 | "CubicSplineZeroRateCurveModel = fitted_model.CubicSplineZeroRateCurveModel\n", |
62 | 65 | "FittedBondCurveFitter = fitted_optimization.FittedBondCurveFitter\n", |
| 66 | + "FittedBondObservation = fitted_inputs.FittedBondObservation\n", |
63 | 67 | "FittedParYieldCurve = fitted_par_curve.FittedParYieldCurve\n", |
64 | 68 | "NominalGovernmentBondPricingAdapter = fitted_pricing_adapters.NominalGovernmentBondPricingAdapter\n", |
65 | 69 | "ParCurveSpec = fitted_par_curve.ParCurveSpec\n", |
|
82 | 86 | }, |
83 | 87 | { |
84 | 88 | "cell_type": "code", |
85 | | - "execution_count": 9, |
| 89 | + "execution_count": 2, |
86 | 90 | "id": "setup-code", |
87 | 91 | "metadata": {}, |
88 | 92 | "outputs": [], |
|
169 | 173 | }, |
170 | 174 | { |
171 | 175 | "cell_type": "code", |
172 | | - "execution_count": 10, |
| 176 | + "execution_count": 3, |
173 | 177 | "id": "nominal-obs", |
174 | 178 | "metadata": {}, |
175 | 179 | "outputs": [ |
|
203 | 207 | "type": "float" |
204 | 208 | } |
205 | 209 | ], |
206 | | - "ref": "295dcafc-27a4-4978-a908-ee330e78b54b", |
| 210 | + "ref": "cfe0ed84-eaf1-40ec-a270-62e6960ee18d", |
207 | 211 | "rows": [ |
208 | 212 | [ |
209 | 213 | "0", |
|
335 | 339 | "5 UST10Y 10 3.50 101.127" |
336 | 340 | ] |
337 | 341 | }, |
338 | | - "execution_count": 10, |
| 342 | + "execution_count": 3, |
339 | 343 | "metadata": {}, |
340 | 344 | "output_type": "execute_result" |
341 | 345 | } |
|
356 | 360 | " bond = build_nominal_bond(maturity_years, coupon_rate)\n", |
357 | 361 | " clean_price = dirty_price_from_curve(bond, TRUE_NOMINAL_CURVE, REFERENCE_DATE) - bond.accrued_interest(REFERENCE_DATE)\n", |
358 | 362 | " nominal_observations.append(\n", |
359 | | - " BondQuote(\n", |
360 | | - " instrument_id=instrument_id,\n", |
| 363 | + " FittedBondObservation.from_parts(\n", |
361 | 364 | " bond=bond,\n", |
362 | | - " clean_price=clean_price,\n", |
363 | | - " as_of=REFERENCE_DATE,\n", |
| 365 | + " quote=BondQuote(\n", |
| 366 | + " instrument_id=instrument_id,\n", |
| 367 | + " clean_price=clean_price,\n", |
| 368 | + " as_of=REFERENCE_DATE,\n", |
| 369 | + " currency=Currency.USD,\n", |
| 370 | + " ),\n", |
364 | 371 | " settlement_date=REFERENCE_DATE,\n", |
365 | 372 | " )\n", |
366 | 373 | " )\n", |
|
379 | 386 | }, |
380 | 387 | { |
381 | 388 | "cell_type": "code", |
382 | | - "execution_count": 11, |
| 389 | + "execution_count": 4, |
383 | 390 | "id": "tips-obs", |
384 | 391 | "metadata": {}, |
385 | 392 | "outputs": [ |
|
413 | 420 | "type": "float" |
414 | 421 | } |
415 | 422 | ], |
416 | | - "ref": "7361fb4f-ab6c-45ec-b675-91b66f83f0a9", |
| 423 | + "ref": "e0dabd22-46f1-4be8-9a29-d5a2b5979b25", |
417 | 424 | "rows": [ |
418 | 425 | [ |
419 | 426 | "0", |
|
530 | 537 | "4 TIPS10Y 10 1.10 134.343" |
531 | 538 | ] |
532 | 539 | }, |
533 | | - "execution_count": 11, |
| 540 | + "execution_count": 4, |
534 | 541 | "metadata": {}, |
535 | 542 | "output_type": "execute_result" |
536 | 543 | } |
|
550 | 557 | " bond = build_tips_bond(maturity_years, coupon_rate)\n", |
551 | 558 | " clean_price = tips_dirty_price_from_curve(bond) - bond.accrued_interest(REFERENCE_DATE, fixing_source=FIXING_SOURCE)\n", |
552 | 559 | " tips_observations.append(\n", |
553 | | - " BondQuote(\n", |
554 | | - " instrument_id=instrument_id,\n", |
| 560 | + " FittedBondObservation.from_parts(\n", |
555 | 561 | " bond=bond,\n", |
556 | | - " clean_price=clean_price,\n", |
557 | | - " as_of=REFERENCE_DATE,\n", |
| 562 | + " quote=BondQuote(\n", |
| 563 | + " instrument_id=instrument_id,\n", |
| 564 | + " clean_price=clean_price,\n", |
| 565 | + " as_of=REFERENCE_DATE,\n", |
| 566 | + " currency=Currency.USD,\n", |
| 567 | + " ),\n", |
558 | 568 | " settlement_date=REFERENCE_DATE,\n", |
559 | 569 | " )\n", |
560 | 570 | " )\n", |
|
583 | 593 | }, |
584 | 594 | { |
585 | 595 | "cell_type": "code", |
586 | | - "execution_count": 12, |
| 596 | + "execution_count": 5, |
587 | 597 | "id": "fit-code", |
588 | 598 | "metadata": {}, |
589 | 599 | "outputs": [ |
|
617 | 627 | "type": "float" |
618 | 628 | } |
619 | 629 | ], |
620 | | - "ref": "786d7629-278b-486c-9741-2167531cf161", |
| 630 | + "ref": "7c900d8f-6904-4a12-922d-6d20583d6243", |
621 | 631 | "rows": [ |
622 | 632 | [ |
623 | 633 | "0", |
|
689 | 699 | "1 real True 0.0 0.0" |
690 | 700 | ] |
691 | 701 | }, |
692 | | - "execution_count": 12, |
| 702 | + "execution_count": 5, |
693 | 703 | "metadata": {}, |
694 | 704 | "output_type": "execute_result" |
695 | 705 | } |
|
736 | 746 | }, |
737 | 747 | { |
738 | 748 | "cell_type": "code", |
739 | | - "execution_count": 13, |
| 749 | + "execution_count": 6, |
740 | 750 | "id": "derived-code", |
741 | 751 | "metadata": {}, |
742 | 752 | "outputs": [ |
|
785 | 795 | "type": "float" |
786 | 796 | } |
787 | 797 | ], |
788 | | - "ref": "1c31ff7c-1b91-42d7-9cb3-43cf73552a91", |
| 798 | + "ref": "442e9a51-21fa-42df-823a-07885a4fce6e", |
789 | 799 | "rows": [ |
790 | 800 | [ |
791 | 801 | "0", |
|
942 | 952 | "4 3.367 0.784 2.582 " |
943 | 953 | ] |
944 | 954 | }, |
945 | | - "execution_count": 13, |
| 955 | + "execution_count": 6, |
946 | 956 | "metadata": {}, |
947 | 957 | "output_type": "execute_result" |
948 | 958 | } |
|
971 | 981 | }, |
972 | 982 | { |
973 | 983 | "cell_type": "code", |
974 | | - "execution_count": 14, |
| 984 | + "execution_count": 7, |
975 | 985 | "id": "plots", |
976 | 986 | "metadata": {}, |
977 | 987 | "outputs": [ |
|
0 commit comments