SDR Volume2

Volume of instruments reported to an SDR (trade counts, gross notional or dv01)

Due to capping rules applied to SDRs, notional and dv01 measures are lower than actual volume

Parameter Description Default Options
reportDate
Optional
The report date in YYYY-MM-DD format.
startDate
Optional
The start date in YYYY-MM-DD format
endDate
Optional
The end date in YYYY-MM-DD format
taxonomy
Optional
The full product taxonomy, e.g InterestRate:IRSwap:FixedFloat, Credit:Index:CDX:CDXIG, ForeignExchange:NDF InterestRate:IRSwap:OIS See ISDA product taxonomy
transactionType
Optional
TransactionType Trade Termination , Trade
cleared
Optional
Cleared or uncleared trades. C , U
currency
Optional
Currency AED , ARS , AUD , BRL , CAD , CHF , CLF , CLP , CNY , COP , COU , CZK , DKK , EUR , GBP , GHS , HKD , HNL , HUF , IDR , ILS , INR , JPY , KRW , KZT , MXN , MXV , MYR , NGN , NOK , NZD , PEN , PHP , PLN , RON , RUB , SAR , SEK , SGD , THB , TRY , TWD , UGX , USD , UYU , ZAR , ZMW
currencyPair
Optional
CurrencyPair
sef
Optional
Swap Execution Facility, refers to whether the transaction was On SEF or Off SEF or both. NA , Off , On
tenor
Optional
Tenor 0D , 100Y , 101Y , 102Y , 103Y , 104Y , 106Y , 10M , 10Y , 113Y , 11M , 11Y , 123Y , 124Y , 125Y , 12Y , 138Y , 13Y , 146Y , 14Y , 15Y , 16Y , 17Y , 18M , 18Y , 190Y , 19Y , 1D , 1M , 1W , 1Y , 200Y , 207Y , 20Y , 21Y , 22Y , 23Y , 24Y , 25Y , 26Y , 27Y , 28Y , 29Y , 2D , 2M , 2W , 2Y , 3000Y , 300Y , 30M , 30Y , 31Y , 32Y , 33Y , 34Y , 35Y , 36Y , 37Y , 38Y , 39Y , 3D , 3M , 3W , 3Y , 400Y , 40Y , 41Y , 42Y , 43Y , 44Y , 45Y , 46Y , 47Y , 48Y , 49Y , 4D , 4M , 4Y , 50Y , 51Y , 52Y , 53Y , 54Y , 55Y , 56Y , 57Y , 58Y , 59Y , 5D , 5M , 5Y , 600Y , 60Y , 61Y , 62Y , 63Y , 64Y , 68Y , 69Y , 6M , 6Y , 70Y , 71Y , 75Y , 7974Y , 7987Y , 7M , 7Y , 80Y , 82Y , 84Y , 85Y , 86Y , 87Y , 88Y , 895Y , 89Y , 8M , 8Y , 90Y , 91Y , 92Y , 931Y , 932Y , 94Y , 98Y , 999Y , 9M , 9Y
forward
Optional
Forward
subtype
Optional
Subtype Back Start , Fwd , IMM , MAC , NStd , SPS , Spot
package
Optional
Package Butterfly , CCPSwitch , Compression , Curve , List , Outright , Package , Roll , Spreadcurve , Spreadfly , Spreadover , Straddle
source
Optional
The Swap Data Repositories to use as the source of trades. DTCC BBG , CME , DTCC , ICE
group
Optional
Group ReportDate,Taxonomy,Currency ReportDate , cleared , currency , currencyPair , forward , package , sef , source , subtype , taxonomy , tenor , transactionType
sortBy
Optional
Sort By
sortOrder
Optional
Sort Order ASCENDING , DESCENDING
display
Optional
Display NotionalUSD Count , DV01 , DV01USD , Notional , NotionalUSD
drilldown
Optional
Drilldown false false , true
columns
Optional
Columns to show in result -
optionalColumns
Optional
Optional Columns
import clarus

response = clarus.sdr.volume2(taxonomy='InterestRate:IRSwap:OIS')
print (response)
import com.clarusft.api.model.sdr.Volume2Request
import com.clarusft.api.model.sdr.Volume2Response

ApiClient clarus = ApiClient.getDefault();
Volume2Response response = clarus.request(new Volume2Request().withTaxonomy("InterestRate:IRSwap:OIS"));
System.out.println(response);
import Clarus

response = Clarus.Sdr.volume2(taxonomy="InterestRate:IRSwap:OIS")
print(response)

##
##Need to install packages once, if not already installed
##install.packages('httr')
##install.packages('readr')
##

library('httr')
##library('readr')

## Manually edit and set key/secret here ##
apiKey <- '...'
apiSecret <-'...'

request <- function(category, functionName, ...){
  restUrl  =  paste0('https://apieval.clarusft.com/api/rest/v1/', category, '/',functionName, '.csv')
  response <- POST(url=restUrl, body=list(...), encode='json', authenticate(apiKey, apiSecret, type='basic'))
  if (response$status_code!=200){
      stop(paste0('Request to ', category, '/', functionName, ' failed with status code: ', response$status_code))
  }
  return (response)
}

dataframe <- function(response){
  return (read.csv(text=content(response, 'text'), sep=',', head=TRUE))
}
## filename <- file.path('C:', 'Temp', 'myfile.csv')
## myvalue <- <- read_file(filename)

r <- request('sdr', 'Volume2', taxonomy='InterestRate:IRSwap:OIS')
df <- dataframe(r)
print (df)

import requests
import sys
import pandas
import io
#import os

# Example of REST API call to Clarus Microservices #

# Manually edit and set key/secret here #
apiKey = ''
apiSecret = ''

print (sys.version)

def request(category, functionName, **params):
  restUrl = 'https://apieval.clarusft.com/api/rest/v1/' + category + '/' + functionName + '.json'
  r = requests.post(restUrl, json=params, auth=(apiKey, apiSecret))
  r.raise_for_status()
  return r.json()

def dataframe(results):
  return pandas.DataFrame(results['results'])

# filename = os.path.join('C:\\', 'Temp', 'myfile.csv')
# myvalue = open(filename).read()

r = request('sdr', 'Volume2', taxonomy='InterestRate:IRSwap:OIS')
df = dataframe(r)
print(pandas.DataFrame.head(df))


use strict;
use warnings;
use MIME::Base64;
use JSON;
use REST::Client;

# Example of REST API call to Clarus Microservices #

my $client = REST::Client->new();
$client->addHeader('Content-Type', 'application/json');

# Manually edit and set key/secret here 
my $apiKey = '';
my $apiSecret = '';

my $encoded_auth = encode_base64("$apiKey:$apiSecret", '');
$client->addHeader('Authorization', "Basic $encoded_auth");

my %params = ('taxonomy' => 'InterestRate:IRSwap:OIS');

my $urlBase = 'https://apieval.clarusft.com/api/rest/v1/';
my $category = 'sdr/';
my $name = 'Volume2';
my $outputFormat = '.csv'; #can also be '.json' or '.tsv'
my $fullRESTUrl  =  $urlBase . $category . $name . $outputFormat;

$client->POST($fullRESTUrl,encode_json(\%params));

print 'Response: ' . $client->responseContent() . "\n";
print 'Response status: ' . $client->responseCode() . "\n";


printf('Example of REST API call to Clarus Microservices\n');

function r = request(category, functionName, params)

# Manually edit and set key/secret here #
  apiKey = ''
  apiSecret = ''

  restUrl = ['https://' apiKey ":" apiSecret  "@" 'apieval.clarusft.com/api/rest/v1/' category '/' functionName '.csv'];
  [r, status, message] = urlread (restUrl, 'get', params);
  if (status!=1)
      error(['Failed on ' category '/' functionName ': ' message]);
  endif
end

function ca = toCellArray(csvStr)
  header_row = textscan (csvStr, "%s", 1, 'delimiter','\n');
  headers = strsplit(char(header_row), ",");
  numCols = size(headers)(2);
  format = repmat('%s ', [1 numCols]);
  ca = textscan (csvStr, format, 'delimiter',',', 'endofline',"\n");
end

params = {'taxonomy', 'InterestRate:IRSwap:OIS'}

r = request('sdr', 'Volume2', params)
ca = toCellArray(r);

ca

Request Body

Submit to generate...
Response

Submit to generate...

{
  "taxonomy" : "InterestRate:IRSwap:OIS"
}