Market ShiftSetGenerator
Parameter | Description | Default | Options |
---|---|---|---|
valueDate Optional |
The value date in YYYY-MM-DD format. | ||
trades Optional |
Input trades. Can be QuickTrade, Clarus, FPML5, LCH, CME or SDR format. | If not specified then must specify either portfolios or whatifTrades parameters | |
crif Optional |
CRIF | ||
observationPeriod Optional |
Observation Period | 1M | 1W , 1M , 3M , 6M , 12M , 15M , 18M , 21M , 2Y , 30M , 3Y , 4Y , 5Y , 6Y , 7Y , 8Y , 9Y , 10Y |
obsPeriodStartDate Optional |
Observation Period StartDate | ||
obsPeriodEndDate Optional |
Observation Period EndDate | ||
returnPeriod Optional |
Return Period | 1D | 1D , 2D , 3D , 4D , 5D , 6D , 7D , 8D , 9D , 10D |
returnPeriodCalendars Optional |
Return Period Calendars | EUTA CHZU GBLO JPTO USNY | ATVI , AUME , AUSY , BEBR , CAMO , CATO , CHGE , CHZU , COBO , DEFR , DKCO , ESMA , EUTA , FIHE , FRPA , GBLO , GRAT , HKHK , HUBU , IDJA , IEDU , ISRE , ITMI , ITRO , JPTO , LULU , MXMC , MYKL , NLAM , NOOS , NZAU , NZWE , PELI , PTLI , RUMO , SEST , SGSI , SWAP , TWTA , USCH , USLA , USNY , ZAJO |
baseCurrency Optional |
Base Currency | AED , ARS , AUD , BRL , CAD , CHF , CLP , CNH , CNY , COP , CZK , DKK , EGP , EUR , GBP , GHS , HKD , HUF , IDR , ILS , INR , JPY , KRW , KZT , LBP , LKR , MXN , MYR , NGN , NOK , NZD , PEN , PHP , PKR , PLN , RUB , SAR , SEK , SGD , THB , TWD , USD , VEB , VNG , ZAR | |
marketDataType Optional |
Market Data Type | [FX] | Any , FullRevalAll , EquityIndex , FX , RateCurves , FxOptionVol , Equity , SwaptionVol , InflationCurves , ZeroCurve , DSwaptionVol , DFxOptionVol , DInflationCurve |
quoteCodeFilter Optional |
Quote Code Filter | ||
target Optional |
Target | Summary | Summary , Prices , QuoteMapping , Outliers , Missing , Returns , ReturnsOutlierSummary , ReturnsOutlierSummaryByPeriod |
outlierAlgorithm Optional |
Outlier Algorithm | DMAD100 | DMAD3 , DMAD10 , DMAD100 , TUKEY , IQR3 |
view Optional |
View | Wide | Long , Wide |
includeFxInverses Optional |
Include Fx Inverses | true | |
useSecondaryQuoteMapping Optional |
Use Secondary Quote Mapping | true | |
applyStockSplits Optional |
Apply Stock Splits | false | |
tradesOnly Optional |
Trades Only | false | |
removeOutlierReturns Optional |
Remove Outlier Returns | false | |
onlyCrifXQuotes Optional |
Only Crif X Quotes | false | |
zeroPillars Optional |
Zero Pillars | 1W,1M,3M,6M,1Y,2Y,5Y,10Y,12Y,15Y,20Y,25Y,30Y | 1W , 1M , 3M , 6M , 1Y , 2Y , 5Y , 10Y , 12Y , 15Y , 20Y , 25Y , 30Y |
fxOptionMaturities Optional |
Fx Option Maturities | 2W 1M 2M 3M 6M 9M 1Y 2Y 3Y 5Y | 2W , 1M , 2M , 3M , 6M , 9M , 1Y , 2Y , 3Y , 5Y |
swaptionPillars Optional |
Swaption Pillars | 2W1Y,2W2Y,2W3Y,2W4Y,2W5Y,2W7Y,2W10Y,2W12Y,2W15Y,2W20Y,2W25Y,2W30Y,1M1Y,1M2Y,1M3Y,1M4Y,1M5Y,1M7Y,1M10Y,1M12Y,1M15Y,1M20Y,1M25Y,1M30Y,3M1Y,3M2Y,3M3Y,3M4Y,3M5Y,3M7Y,3M10Y,3M12Y,3M15Y,3M20Y,3M25Y,3M30Y,6M1Y,6M2Y,6M3Y,6M4Y,6M5Y,6M7Y,6M10Y,6M12Y,6M15Y,6M20Y,6M25Y,6M30Y,1Y1Y,1Y2Y,1Y3Y,1Y4Y,1Y5Y,1Y7Y,1Y10Y,1Y12Y,1Y15Y,1Y20Y,1Y25Y,1Y30Y,2Y1Y,2Y2Y,2Y3Y,2Y4Y,2Y5Y,2Y7Y,2Y10Y,2Y12Y,2Y15Y,2Y20Y,2Y25Y,2Y30Y,3Y1Y,3Y2Y,3Y3Y,3Y4Y,3Y5Y,3Y7Y,3Y10Y,3Y12Y,3Y15Y,3Y20Y,3Y25Y,3Y30Y,4Y1Y,4Y2Y,4Y3Y,4Y4Y,4Y5Y,4Y7Y,4Y10Y,4Y12Y,4Y15Y,4Y20Y,4Y25Y,4Y30Y,5Y1Y,5Y2Y,5Y3Y,5Y4Y,5Y5Y,5Y7Y,5Y10Y,5Y12Y,5Y15Y,5Y20Y,5Y25Y,5Y30Y,7Y1Y,7Y2Y,7Y3Y,7Y4Y,7Y5Y,7Y7Y,7Y10Y,7Y12Y,7Y15Y,7Y20Y,7Y25Y,7Y30Y,10Y1Y,10Y2Y,10Y3Y,10Y4Y,10Y5Y,10Y7Y,10Y10Y,10Y12Y,10Y15Y,10Y20Y,10Y25Y,10Y30Y,15Y1Y,15Y2Y,15Y3Y,15Y4Y,15Y5Y,15Y7Y,15Y10Y,15Y12Y,15Y15Y,15Y20Y,15Y25Y,15Y30Y,20Y1Y,20Y2Y,20Y3Y,20Y4Y,20Y5Y,20Y7Y,20Y10Y,20Y12Y,20Y15Y,20Y20Y,20Y25Y,20Y30Y,25Y1Y,25Y2Y,25Y3Y,25Y4Y,25Y5Y,25Y7Y,25Y10Y,25Y12Y,25Y15Y,25Y20Y,25Y25Y,25Y30Y,30Y1Y,30Y2Y,30Y3Y,30Y4Y,30Y5Y,30Y7Y,30Y10Y,30Y12Y,30Y15Y,30Y20Y,30Y25Y,30Y30Y | 10Y10Y , 10Y12Y , 10Y15Y , 10Y1Y , 10Y20Y , 10Y25Y , 10Y2Y , 10Y30Y , 10Y3Y , 10Y4Y , 10Y5Y , 10Y7Y , 15Y10Y , 15Y12Y , 15Y15Y , 15Y1Y , 15Y20Y , 15Y25Y , 15Y2Y , 15Y30Y , 15Y3Y , 15Y4Y , 15Y5Y , 15Y7Y , 18M10Y , 18M12Y , 18M15Y , 18M1Y , 18M20Y , 18M25Y , 18M2Y , 18M30Y , 18M3Y , 18M4Y , 18M5Y , 18M7Y , 1M10Y , 1M12Y , 1M15Y , 1M1Y , 1M20Y , 1M25Y , 1M2Y , 1M30Y , 1M3Y , 1M4Y , 1M5Y , 1M7Y , 1Y10Y , 1Y12Y , 1Y15Y , 1Y1Y , 1Y20Y , 1Y25Y , 1Y2Y , 1Y30Y , 1Y3Y , 1Y4Y , 1Y5Y , 1Y7Y , 20Y10Y , 20Y12Y , 20Y15Y , 20Y1Y , 20Y20Y , 20Y25Y , 20Y2Y , 20Y30Y , 20Y3Y , 20Y4Y , 20Y5Y , 20Y7Y , 25Y10Y , 25Y12Y , 25Y15Y , 25Y1Y , 25Y20Y , 25Y25Y , 25Y2Y , 25Y30Y , 25Y3Y , 25Y4Y , 25Y5Y , 25Y7Y , 2M10Y , 2M12Y , 2M15Y , 2M1Y , 2M20Y , 2M25Y , 2M2Y , 2M30Y , 2M3Y , 2M4Y , 2M5Y , 2M7Y , 2W10Y , 2W12Y , 2W15Y , 2W1Y , 2W20Y , 2W25Y , 2W2Y , 2W30Y , 2W3Y , 2W4Y , 2W5Y , 2W7Y , 2Y10Y , 2Y12Y , 2Y15Y , 2Y1Y , 2Y20Y , 2Y25Y , 2Y2Y , 2Y30Y , 2Y3Y , 2Y4Y , 2Y5Y , 2Y7Y , 30Y10Y , 30Y12Y , 30Y15Y , 30Y1Y , 30Y20Y , 30Y25Y , 30Y2Y , 30Y30Y , 30Y3Y , 30Y4Y , 30Y5Y , 30Y7Y , 3M10Y , 3M12Y , 3M15Y , 3M1Y , 3M20Y , 3M25Y , 3M2Y , 3M30Y , 3M3Y , 3M4Y , 3M5Y , 3M7Y , 3Y10Y , 3Y12Y , 3Y15Y , 3Y1Y , 3Y20Y , 3Y25Y , 3Y2Y , 3Y30Y , 3Y3Y , 3Y4Y , 3Y5Y , 3Y7Y , 4Y10Y , 4Y12Y , 4Y15Y , 4Y1Y , 4Y20Y , 4Y25Y , 4Y2Y , 4Y30Y , 4Y3Y , 4Y4Y , 4Y5Y , 4Y7Y , 5Y10Y , 5Y12Y , 5Y15Y , 5Y1Y , 5Y20Y , 5Y25Y , 5Y2Y , 5Y30Y , 5Y3Y , 5Y4Y , 5Y5Y , 5Y7Y , 6M10Y , 6M12Y , 6M15Y , 6M1Y , 6M20Y , 6M25Y , 6M2Y , 6M30Y , 6M3Y , 6M4Y , 6M5Y , 6M7Y , 6Y10Y , 6Y12Y , 6Y15Y , 6Y1Y , 6Y20Y , 6Y25Y , 6Y2Y , 6Y30Y , 6Y3Y , 6Y4Y , 6Y5Y , 6Y7Y , 7Y10Y , 7Y12Y , 7Y15Y , 7Y1Y , 7Y20Y , 7Y25Y , 7Y2Y , 7Y30Y , 7Y3Y , 7Y4Y , 7Y5Y , 7Y7Y , 8Y10Y , 8Y12Y , 8Y15Y , 8Y1Y , 8Y20Y , 8Y25Y , 8Y2Y , 8Y30Y , 8Y3Y , 8Y4Y , 8Y5Y , 8Y7Y , 9M10Y , 9M12Y , 9M15Y , 9M1Y , 9M20Y , 9M25Y , 9M2Y , 9M30Y , 9M3Y , 9M4Y , 9M5Y , 9M7Y , 9Y10Y , 9Y12Y , 9Y15Y , 9Y1Y , 9Y20Y , 9Y25Y , 9Y2Y , 9Y30Y , 9Y3Y , 9Y4Y , 9Y5Y , 9Y7Y |
inflationPillars Optional |
Inflation Pillars | 1Y,2Y,3Y,4Y,5Y,7Y,10Y,12Y,15Y,20Y,25Y,30Y | 1Y , 2Y , 3Y , 4Y , 5Y , 7Y , 10Y , 12Y , 15Y , 20Y , 25Y , 30Y |
syntheticFXQuoteBase Optional |
Synthetic FX Quote Base | AED , ARS , AUD , BRL , CAD , CHF , CLP , CNH , CNY , COP , CZK , DKK , EGP , EUR , GBP , GHS , HKD , HUF , IDR , ILS , INR , JPY , KRW , KZT , LBP , LKR , MXN , MYR , NGN , NOK , NZD , PEN , PHP , PKR , PLN , RUB , SAR , SEK , SGD , THB , TWD , USD , VEB , VNG , ZAR | |
quoteMissingLookbackDays Optional |
Quote Missing Lookback Days | 7 | |
fallbackCurves Optional |
Fallback Curves | false |
import clarus response = clarus.market.shiftsetgenerator(trades='USD 10Y 100m pay 1.1%') print (response)
import com.clarusft.api.model.market.ShiftSetGeneratorRequest import com.clarusft.api.model.market.ShiftSetGeneratorResponse ApiClient clarus = ApiClient.getDefault(); ShiftSetGeneratorResponse response = clarus.request(new ShiftSetGeneratorRequest().withTrades("USD 10Y 100m pay 1.1%")); System.out.println(response);
import Clarus response = Clarus.Market.shiftsetgenerator(trades="USD 10Y 100m pay 1.1%") 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('market', 'ShiftSetGenerator', trades='USD 10Y 100m pay 1.1%')
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('market', 'ShiftSetGenerator', trades='USD 10Y 100m pay 1.1%')
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 = ('trades' => 'USD 10Y 100m pay 1.1%');
my $urlBase = 'https://apieval.clarusft.com/api/rest/v1/';
my $category = 'market/';
my $name = 'ShiftSetGenerator';
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 = {'trades', 'USD 10Y 100m pay 1.1%'}
r = request('market', 'ShiftSetGenerator', params)
ca = toCellArray(r);
ca
Example of REST API query URL (GET)
CSV
https://apieval.clarusft.com/api/rest/v1/market/shiftsetgenerator.csv?trades=USD 10Y 100m pay 1.1%&
TSV
https://apieval.clarusft.com/api/rest/v1/market/shiftsetgenerator.tsv?trades=USD 10Y 100m pay 1.1%&
JSON
https://apieval.clarusft.com/api/rest/v1/market/shiftsetgenerator.json?trades=USD 10Y 100m pay 1.1%&
HTML
https://apieval.clarusft.com/api/rest/v1/market/shiftsetgenerator.html?trades=USD 10Y 100m pay 1.1%&
Request Body
Submit to generate...
Response
Submit to generate...
{
"trades" : "USD 10Y 100m pay 1.1%"
}