Skip to content

Commit 9c7f968

Browse files
committed
Merge branch 'master' into bugfix/tradebuilderoverwrite
2 parents b6a3b16 + e389e68 commit 9c7f968

234 files changed

Lines changed: 1114800 additions & 18074 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/build_windows.yaml

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ name: C/C++ CI Windows
33
on:
44
push:
55
branches: [master]
6+
tags:
7+
- 'v*'
68
release:
79
types: [published]
810
pull_request:
@@ -35,10 +37,20 @@ jobs:
3537
platform: x64
3638
boost-lib: 64
3739
steps:
38-
- uses: actions/checkout@v3
40+
- uses: actions/checkout@v4
3941
- name: get QuantLib
4042
run: |
4143
git submodule update --init
44+
- name: Set up zlib
45+
run: |
46+
$Url = "https://www.zlib.net/zlib131.zip"
47+
(New-Object System.Net.WebClient).DownloadFile($Url, "$env:TEMP\zlib.zip")
48+
Expand-Archive -Path "$env:TEMP\zlib.zip" -DestinationPath C:\local
49+
cd C:\local\zlib-1.3.1
50+
mkdir build
51+
cd build
52+
cmake ..
53+
cmake --build . --config Release
4254
- name: Set up Boost
4355
run: |
4456
$Url = "https://boostorg.jfrog.io/artifactory/main/release/1.72.0/binaries/boost_1_72_0-msvc-14.2-${{ matrix.boost-lib }}.exe"
@@ -52,12 +64,13 @@ jobs:
5264
run: |
5365
mkdir build
5466
cd build
67+
SET ZLIB_ROOT=C:\local\zlib-1.3.1
5568
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Vc\Auxiliary\Build\vcvarsall.bat" ${{ matrix.arch }} -vcvars_ver=14.3 || exit 1
56-
cmake .. -GNinja -DCMAKE_BUILD_TYPE=Release -DQL_BUILD_EXAMPLES=false -DQL_BUILD_TEST_SUITE=false -DQL_BUILD_BENCHMARK=false -DQL_ENABLE_SESSIONS=true -DORE_BUILD_DOC=false -DBOOST_INCLUDEDIR=C:\local\boost -DBOOST_LIBRARYDIR=C:\local\boost\lib64-msvc-14.3 -L
69+
cmake .. -GNinja -DCMAKE_BUILD_TYPE=Release -DQL_BUILD_EXAMPLES=false -DQL_BUILD_TEST_SUITE=false -DQL_BUILD_BENCHMARK=false -DQL_ENABLE_SESSIONS=true -DORE_USE_ZLIB=ON -DORE_BUILD_DOC=false -DBOOST_INCLUDEDIR=C:\local\boost -DZLIB_LIBRARY=C:\local\zlib-1.3.1\build\Release\zlib.lib -DBOOST_LIBRARYDIR=C:\local\boost\lib64-msvc-14.3 -L
5770
cmake --build . -j 2 --verbose
5871
- name: Save executables as artifacts
59-
#if: startsWith(github.ref, 'refs/tags/v')
60-
uses: actions/upload-artifact@v3
72+
if: startsWith(github.ref, 'refs/tags/v')
73+
uses: actions/upload-artifact@v4
6174
with:
6275
name: ore-windows-${{ matrix.arch }}
6376
path: D:\a\Engine\Engine\build\App\ore.exe

.github/workflows/linux_build.yaml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ name: C/C++ CI Ubuntu
33
on:
44
push:
55
branches: [master]
6+
tags:
7+
- 'v*'
68
release:
79
types: [published]
810
pull_request:
@@ -26,7 +28,7 @@ jobs:
2628
name: building
2729
runs-on: ubuntu-22.04
2830
steps:
29-
- uses: actions/checkout@v3
31+
- uses: actions/checkout@v4
3032
- name: get QuantLib
3133
run: |
3234
git submodule update --init
@@ -40,7 +42,7 @@ jobs:
4042
run: cd build/; pwd; cmake --build . -j $(nproc)
4143
- name: Save executables as artifacts
4244
if: startsWith(github.ref, 'refs/tags/v')
43-
uses: actions/upload-artifact@v3
45+
uses: actions/upload-artifact@v4
4446
with:
4547
name: ore-exe-linux
4648
path: /home/runner/work/Engine/Engine/build/App/ore

.github/workflows/macos_ARM64_build.yaml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ name: C/C++ MacOS
33
on:
44
push:
55
branches: [master]
6+
tags:
7+
- 'v*'
68
release:
79
types: [published]
810
pull_request:
@@ -25,7 +27,7 @@ jobs:
2527
build:
2628
runs-on: macos-11
2729
steps:
28-
- uses: actions/checkout@v3
30+
- uses: actions/checkout@v4
2931
- name: get QuantLib
3032
run: |
3133
git submodule update --init
@@ -45,7 +47,7 @@ jobs:
4547
cmake --install .
4648
- name: Save executables as artifacts
4749
if: startsWith(github.ref, 'refs/tags/v')
48-
uses: actions/upload-artifact@v3
50+
uses: actions/upload-artifact@v4
4951
with:
5052
name: ore-macos-arm64
5153
path: /Users/runner/work/Engine/Engine/build/App/ore

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -321,3 +321,4 @@ Examples/**/pricingstats.csv
321321
*fdb_latexmk
322322
*.fls
323323

324+
.gitmodules

Docker/.env

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ DEBIAN_TAG=11.7
33
# it's recommended to include CMAKE_BUILD_TYPE and BOOST_VARIANT in QL_TAG, ORE_TAG, BOOST_TAG
44
# to distinguish a release build from a debug build
55

6-
QL_TAG=1.31.1_d2327d5a7135
6+
QL_TAG=1.31.1_0fd143ce3
77
ORE_TAG=latest
88

99
# debug or release

Docs/ScriptedTrade/docs/language.tex

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -466,7 +466,8 @@
466466
\item here $P_{ccy}$ is the discount factor in currency ccy, $FX$ is the FX spot from ccy to base and $N$ is the model
467467
numeraire
468468
\item $d\leq p$ must hold
469-
\item if $p$ lies on or before the evaluation date, the result is zero; $X$ is not evaluated in this case
469+
\item if $p$ lies on or before the evaluation date, the result is zero; $X$ is not evaluated in this case.
470+
Note that $X$ is evaluated in the LOGPAY function if past cashflows are included, see \ref{function_logpay}.
470471
\item avoids reading non-relevant past fixings from the index history
471472
\item if $d$ lies before (but $p$ after) the evaluation date, it is set to the evaluation date, i.e. the result is
472473
computed as of the evaluation date
@@ -514,6 +515,9 @@
514515
under leg number $2$ and flow Type ``Interest''. The same holds for Payoff3, but if any amounts were booked using the
515516
slot parameter $3$ previously they will be overwritten with the current amount.
516517

518+
Note: If IncludePastCashflows in the pricing engine config is set to true then even if $p$ lies on or before the
519+
evaluation date, a cashflow entry will be generated.
520+
517521
% ====================================================
518522
\stsubsection{Function {\tt NPV, NPVMEM}}\label{function_npv}
519523
% ====================================================

Docs/ScriptedTrade/docs/models.tex

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ \subsection{Pricing Engine Configuration}\label{pricingengine_config}
4949
<Parameter name="TimeStepsPerYear">24</Parameter>
5050
<Parameter name="Interactive">false</Parameter>
5151
<Parameter name="BootstrapTolerance">0.1</Parameter>
52+
<Parameter name="IncludePastCashflows">true</Parameter>
5253
<!-- product specific parameters -->
5354
<Parameter name="RegressionOrder_SingleAssetOption(EQ)">6</Parameter>
5455
<Parameter name="RegressionOrder_SingleAssetOption(FX)">6</Parameter>
@@ -136,6 +137,8 @@ \subsection{Pricing Engine Configuration}\label{pricingengine_config}
136137
only. The moneyness is defined as a ``standardised moneyness'' $\ln(K/F) / \sigma\sqrt{t}$ with $K$ strike, $F$ ATMF
137138
forward, $\sigma$ ATMF market vol, $t$ option time to expiry
138139
\item BootstrapTolerance: tolerance for calibration bootstrap, only applies to model = GaussianCam
140+
\item IncludePastCashflows: if true, LOGPAY() will generate cashflow information for pay dates on or before the
141+
reference date. Optional, defaults to false.
139142
\item Interactive: If true an interactive session is started on script execution for debugging purposes; should be false
140143
except for debugging purposes
141144
\item UseAD: If true and RunType in the global pricing engine parameters is SensitivityDelta, a first order pnl

Docs/UserGuide/curve_configurations/yieldcurves.tex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -457,7 +457,7 @@ \subsubsection*{Fitted Bond Segment}
457457
</Quotes>
458458
<!-- mapping of Ibor curves used in the bonds from which the curve is built -->
459459
<IborIndexCurves>
460-
<IborIndexCurve iborIndex="EUR-EURIBOR-6M">EUR-EURIBOR-6M</IborIndexCurve>
460+
<IborIndexCurve iborIndex="EUR-EURIBOR-6M">EUR6M</IborIndexCurve>
461461
</IborIndexCurves>
462462
<!-- flat extrapolation before first and after last bond maturity -->
463463
<ExtrapolateFlat>true</ExtrapolateFlat>

Docs/UserGuide/marketdata.tex

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1443,6 +1443,31 @@ \subsection{Bond Yield Spreads}
14431443
\item BOND/YIELD\_SPREAD/SECURITY\_1
14441444
\end{itemize}
14451445

1446+
%- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1447+
\subsection{Bond Prices}
1448+
%- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1449+
1450+
\begin{table}[H]
1451+
\centering
1452+
\begin{tabular}{|p{3cm}|p{3.5cm}|p{7cm}|}
1453+
\hline
1454+
{\bf Property} & {\bf Allowable values} & {\bf Description} \\ \hline
1455+
Instrument Type & \emph{BOND} & \\ \hline
1456+
Quote Type & \emph{PRICE} & \\ \hline
1457+
Name & String & Identifying name of the bond \\ \hline
1458+
\end{tabular}
1459+
\caption{Bond Prices}
1460+
\label{tab:bondprice_quote}
1461+
\end{table}
1462+
1463+
This quote provides the clean price for a specified bond in units.
1464+
1465+
\medskip
1466+
Examples:
1467+
\begin{itemize}
1468+
\item BOND/PRICE/SECURITY\_1
1469+
\end{itemize}
1470+
14461471
%- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
14471472
\subsection{Base Correlations}
14481473
%- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

0 commit comments

Comments
 (0)