B.2 Data Processing
B.2.6 Cleaning Transaction Prices
The last stage of data processing assesses whether index CDS contract terms are sufficiently standardized and whether the transaction data and, in particular, the contained pricing information, are accurate. Because we only use transaction prices of trades in five-year on- the-run and immediate off-the-run index CDSs, this stage is only applied to trades in the latter contracts.
To this end, we remove all trade reports with zero transaction prices, all trade reports with 00:00:00 DST (New York daylight saving time) timestamps, and all trade reports with non-
standard maturity dates.30We also remove all trade reports of outright transactions and delta
exchanges with fixed-spread transaction prices because of likely reporting errors (index CDS
spreads tend to be different from fixed spreads).31
Conventionally, the prices of index CDSs referencing CDX.IG indices are expressed in terms of index CDS spreads (in basis points), while those of index CDSs referencing CDX.HY indices are expressed in terms of prices (in percent). SDR trade reports indicate whether transaction prices
are expressed in terms of a price or in terms of an index CDS spread,32but the indications
are frequently erroneous or systematically wrong. For instance, almost all DDR trade reports of transactions in CDX.HY index CDSs that were executed on Bloomberg SEF indicate that transaction prices are expressed in terms of spreads (the reported price notation type is “Basis points”) although the reported transaction prices are expressed in terms of prices. In order to account for erroneous indications, we overwrite indications with SEF-specific price types based on our experience with the trade report history. In our experience, all trade trade reports of CDX.IG transactions other than those executed on MarketAxess SEF prior to March 6, 2014
contain transaction prices that are expressed in terms of spreads.33Similarly, all trade reports
of CDX.HY transactions other than those executed on ICE Swap Trade between February 21, 2014 and August 1, 2014 contain transaction prices that are expressed in terms of prices. Transaction prices contained in the MarketAxess SEF trade reports seem to be expressed in terms of prices, while transaction prices contained in the ICE Swap Trade trade reports seem to be expressed in terms of index CDS spreads.
Moreover, we divide transaction prices contained in all trade reports of transactions executed on MarketAxess SEF prior to March 6, 2014 by 100. This is because they seem to be expressed in basis points rather than in percent of the notional amount. For the same reason, we divide transaction prices contained in trade reports of transactions executed on MarketAxess SEF on or after March 6, 2014 by 100 if they indicate “Percentage” price notation type.
In order to ensure that overwriting indications does not introduce further errors, we compare
30Standardized index CDSs that were launched in March (September) mature on the 20th of June (December) of the year that follows the index launch by the number of years specified through the contract tenor.
31We exclude index rolls and curve trades because they are priced in relative terms.
32The corresponding field names of BSDR, DDR, and ICETV trade reports are “price notation type”,
“PRICE_NOTATION_TYPE”, and “PriceType”, respectively. 33Here and in what follows, dates refer to DST calendar dates.
Appendix B. Appendix to Chapter 2
transaction prices with Markit’s end-of-day composites. To this end, we remove all trade reports of transactions without available Markit end-of-day composite prices and spreads on the date of trade execution (this, amongst others, removes transactions that were executed on weekends) and process the remaining trade reports through the following filter:
1. In case that a transaction price which is expressed in terms of a spread deviates by more than 5% from Markit’s end-of-day composite spread, we first check whether there is a scaling factor such that the scaled transaction price does not deviate by more than 5%
from the end-of-day composite.34If this is the case, we replace the transaction price by
the scaled transaction price with minimum percentage deviation from the end-of-day composite spread.
2. In case that a transaction price which is expressed in terms of a price deviates by more than 1% from Markit’s end-of-day composite price, we first check whether there is a scaling factor such that the scaled transaction price does not deviate by more than 1% from the end-of-day composite. If this is the case, we replace the transaction price by the scaled transaction price with minimum percentage deviation from the end-of-day composite price.
3. In case that a transaction price which is expressed in terms of a spread continues to deviate by more than 5% from Markit’s end-of-day composite spread, we next check whether there is a scaling factor such that the scaled transaction price does not deviate
by more than 1% from Markit’s end-of-day composite price.35 If this is the case, we
overwrite the indication such that it indicates a transaction price which is expressed in terms of a price and replace the transaction price by the eventually scaled transaction price with minimum percentage deviation from the end-of-day composite price. 4. In case that a transaction price which is expressed in terms of a price continues to
deviate by more than 1% from Markit’s end-of-day composite price, we next check whether there is a scaling factor such that the scaled transaction price does not deviate by more than 5% from Markit’s end-of-day composite spread. If this is the case, we overwrite the indication such that it indicates a transaction price which is expressed in terms of a spread and replace the transaction price by the eventually scaled transaction price with minimum percentage deviation from the end-of-day composite spread.
Then, we convert transaction prices which are expressed in terms of a price into equivalent
expressions in terms of index CDS spreads, and vice versa.36 Once this is done, we detect
outliers by transaction prices that deviate by more than 3% from the intraday mid-quote that prevails at trade execution. Both transaction prices and quotes are in terms of index CDS
34The scaling factor may take one of the four values that would be used when converting transaction prices into decimals, percentages, or basis points: 1/1000, 1/100, 100, and 10000.
35In addition to the four above mention values, the scaling factor may be 1 (no scaling).
36When converting between expressions, we use the ISDA CDS Standard Model which is the industry standard.
B.2. Data Processing
spreads and, apart from the robustness check in Section B.7, the intraday mid-quote comes from Markit. We remove all trade reports of transactions with outlier transaction prices and, in case of package transactions with outlier transaction prices, we also remove the trade report of the other leg of the package. Finally, we remove all trade reports of transactions executed on Securities Industry and Financial Markets Association (SIFMA) recommended close and recommended early close days, and all all trade reports indicating bespoke terms.