The multi assets parameters endpoint returns information on all multi assets indexes parameters.
You can use this endpoint to retrieve information on your index. You can use its internal API symbol while querying to filter by symbol. If you don't pass any symbol, you receive information on all indexes Vinter calculates.
Example URL
GET
price_days
integer
Minimum amount of price data points
ranking_window
integer
Number of days used for the market cap based on ranking of constituents
constituent_number
integer
Number of constituents
max_rank
integer
Max rank of constituents
min_rank
integer
Min rank of constituents
cap
number
Max weight of constituents
floor
number
Min weight of constituents
rebalance_frequency
string
Rebalance frequency of the index
business_days_offsets
integer
Number of days between Review date and Rebalance date
launch_date
string
Date representing the Index launch date
symbol
string
The index symbol
min_volume
number
Minimum daily average volume at review date. The period length is specified in the volume_days field.
min_market_cap
number
Minimum average market cap at review date. The period length is specified in the market_cap_days field.
volume_days
integer
Days used to compute the average volume
market_cap_days
integer
symbol
String
Filter by symbol
Days used to compute the average market cap
{
"result": "success",
"message": "Success",
"data": [
{
"symbol": "vntr-smc-10-d",
"min_volume": 20000000.0,
"min_market_cap": 500000000.0,
"volume_days": 1,
"market_cap_days": 1,
"price_days": 90,
"ranking_window": 1,
"constituent_number": 10,
"max_rank": 30,
"min_rank": 21,
"cap": 1.0,
"floor": 0.0,
"rebalance_frequency": "quarterly",
"business_days_offsets": 5,
"launch_date": "2023-07-05"
},
{
"symbol": "vntr-mmc-10-d",
"min_volume": 20000000.0,
"min_market_cap": 500000000.0,
"volume_days": 1,
"market_cap_days": 1,
"price_days": 90,
"ranking_window": 1,
"constituent_number": 10,
"max_rank": 20,
"min_rank": 11,
"cap": 1.0,
"floor": 0.0,
"rebalance_frequency": "quarterly",
"business_days_offsets": 5,
"launch_date": "2023-07-05"
},
],
"params": {
}
}The active multi assets endpoint returns information on all multi assets indexes.
You can use this endpoint to retrieve information on your index. You can either pass the short name of the index or its internal API symbol. If you pass neither symbol nor short name, you receive information on all indexes Vinter calculates.
You can use this symbol to retrieve the new constituents before rebalancing. The new constituent will be the dictionary keys in the next_rebalance_weights field. Please see the response field section for more information about the endpoint's response field, and for information about how the endpoint is updated at rebalancing, please see below.
The endpoint can be used to
Find internal API symbols you can use to query other multi-asset endpoints.
Retrieve new constituents and rebalance weights before rebalancing.
Retrieving indicative rebalancing weights on the 15th of the rebalancing month.
Other index information that is present in the endpoint.
The rebalance weights are updated after the official end-of-day value and before 00:00 UTC on the day of rebalance
Example URL
This endpoint returns information for the current multi assets indexes. Below is a list of the current fields that the endpoint provide
GET https://www.vinterapi.com/api/v3/active_multi_assets/
The endpoint continuously updates between the calculation date and the rebalancing date for each index.
One day after the calculation date, the next_rebalance_weights field is updated with the new rebalance weights for the index.
After the publication time on the rebalancing day, the next_rebalance_weights field is moved to the weights field. After moving the next_rebalance_weights field to the weights field, the following fields are set to Null.
next_rebalance_date (Is updated 12 - 24 hours after rebalancing)
You know that the weights field contains the rebalancing weight for the next rebalance period if all the above fields are Null. Vinter suggests retrieving the new rebalancing weights a couple of days before rebalancing. This is possible since the review and rebalance dates are never the same.
The multi asset endpoints contain information on all multi asset indexes that Vinter calculates. There are three frequencies of every multi asset index.
For each multi asset index Vinter calculates an end-of-day value. This value is the official value for each index and is published at different times, specified by the index methodology. All multi asset index calculations are based on a specific reference rates series. Every reference series has a serial number as part of its symbol.
All indexes also have an hourly frequency. The index values are published every hour. It works in the same way as the daily frequency, except the values are considered to be indicative.
Finally, Vinter publishes a 10 second indicative feed for every index. This feed is based on our real time single asset feed. These values are also considered indicative.
Each record received from a multi asset endpoint contains the following information:
Index value
Current values
Rebalance values
Current weights
The index value is calculated based on the rebalance weights, rebalance values, and the current values. To derive the index value, you follow these steps:
Divide the current value for each constituent with its rebalance value.
Multiply the ratio from 1 with the constituent's rebalance weight.
Sum the values from 2 across all index constituents.
Multiply the value from 3 with the index rebalance value. The index rebalance value can be found in the rebalance value field.
The current weight field, also called drifted weights, is the ratio of the total index value allocated to a specific asset at the current date. It is calculated as follows.
Divide the current value for each constituent with its rebalance value
Multiply the ratio from 1 with the constituent's rebalance weight.
Sum the values from 2 across all index constituents.
The current weight for a constituent is its value from 1 divided by the value from 3.
string
Date representing the next rebalance date
previous_review_date
string
Date representing the previous review date
next_review_date
string
Date representing the next review date
next_rebalance_weights
object
Upcoming index constituents and rebalance weights
indicative_rebalance_weights
object
These weights give an indication of the upcoming rebalance weights.
indicative_rebalance_date
string
Date representing the Indicative rebalance weights calculation date
short_name
string
The index symbol short name
long_name
string
The index symbol long name
bloomberg_ticker
string
The Bloomberg terminal ticker
eikon_ticker
string
The Eikon (Thomson/Reuters) terminal ticker
next_review_date (Is updated 12 - 24 hours after rebalancing)
previous_review_date (Is updated 12 - 24 hours after rebalancing)
previous_rebalance_date (Is updated 12 - 24 hours after rebalancing)
indicative_rebalance_weights
indicative_rebalance_date
symbol
string
The index symbol
weights
object
Current Index constituents and rebalance weights
previous_rebalance_date
string
Date representing the previous rebalance date
next_rebalance_date
symbol
String
Filter by symbol
short_name
String
Filter by short_name
{
"result": "success",
"message": "Success",
"data": [
{
"symbol": "vntw-defii-10-d",
"weights": {
"bnb-usd-p-5-d": 0.09816399033743,
"eth-usd-p-5-d": 0.36862252314521,
"sol-usd-p-5-d": 0.02272202349228,
"uni-usd-p-5-d": 0.25227939059158,
"aave-usd-p-5-d": 0.06461348583879,
"avax-usd-p-5-d": 0.01049146302509,
"link-usd-p-5-d": 0.18310712356963
},
"previous_rebalance_date": "2022-10-31",
"next_rebalance_date": "2023-01-31",
"previous_review_date": "2022-10-24",
"next_review_date": "2023-01-24",
"next_rebalance_weights": {
"bnb-usd-p-5-d": 0.09816399033743,
"eth-usd-p-5-d": 0.36862252314521,
"sol-usd-p-5-d": 0.02272202349228,
"uni-usd-p-5-d": 0.25227939059158,
"aave-usd-p-5-d": 0.06461348583879,
"avax-usd-p-5-d": 0.01049146302509,
"link-usd-p-5-d": 0.18310712356963
},
"indicative_rebalance_weights": {
"bnb-usd-p-5-d": 0.09816399033743,
"eth-usd-p-5-d": 0.36862252314521,
"sol-usd-p-5-d": 0.02272202349228,
"uni-usd-p-5-d": 0.25227939059158,
"aave-usd-p-5-d": 0.06461348583879,
"avax-usd-p-5-d": 0.01049146302509,
"link-usd-p-5-d": 0.18310712356963
},
"indicative_rebalance_date": "2022-12-25",
"short_name": "DEFII",
"long_name": "Vinter 21Shares DeFi 10 Infrastructure Index",
"bloomberg_ticker": null,
"eikon_ticker": null
},
],
"params": {
}
}The multi assets real-time endpoint returns values on a specific multi asset index that is calculated on a continuous basis.
The endpoint requires an API key and it requires that the symbol of the index is specified using the symbol parameter. If the limit parameter is not specified the latest value is returned. To ensure chronological ordering of the index values you should sort the values using the timestamp field. The endpoint only returns a maximum of 2000 records.
Example URL
GET https://www.vinterapi.com/api/v3/multi_assets_real_time
This is a sample response for asset vntr-eq-5-r
Note: It is important to note that the data available on the multi_assets_real_time endpoint is trimmed on a daily basis at 00:40 UTC. This means that the endpoint provides real-time data for a period of 24 hours prior to the current time , and at 00:40 UTC each day, the data is trimmed and only the data from the preceding 24 hours is retained.
Please read the following for detailed information on parameters.
The multi assets daily endpoint returns values for a specific multi asset index that is calculated on a daily basis.
The endpoint requires an API key and it requires that the symbol of the index is specified using the symbol parameter. If the limit parameter is not specified the latest value is returned. To ensure chronological ordering of the index values you should sort the values using the timestmp field. The endpoint only returns a maximum of 2000 records.
Example URL
rebalance_values
array
A array of Objects of rebalance values
rebalance_weights
object
Object of rebalance weights
current_weights
object
Object of current weights
current_values
array
A array of Objects of current values
id
integer
The record's id in the source table. A id that equals 0 means that it is not an official value.
created_at
string
ISO formatted datetime representing the calculation time
value
number
The index value
symbol
string
The index symbol.
timestamp
integer
symbol*
String
The ticker of the requested index
limit
Integer
The number of records to obtain. If the parameter is not specified the last record will be returned.
start_time
datestring
Received range includes the start time date. The start_time value has to be either a date or a datetime string in ISO8601 format. The formats allowed are therefore:
YYYY-MM-DDTHH:MM:SSZ
YYYY-MM-DDTHH:MM:SS.fffZ
YYYY-MM-DD
end_time
datestring
Received range excludes the end_time . The end_time value has to be either a date or a datetime string in ISO8601 format. The formats allowed are therefore:
YYYY-MM-DDTHH:MM:SSZ
YYYY-MM-DDTHH:MM:SS.fffZ
YYYY-MM-DD
Authorization*
String
your_secret_api_key
Unix timestamp in milliseconds representing the calculation time.
id
integer
The record's id in the source table. A id that equals 0 means that it is not an official value.
created_at
string
ISO formatted datetime representing the calculation time
value
number
The index value
symbol
GET https://www.vinterapi.com/api/v3/multi_assets_daily/
This is a sample response for asset vntr-eq-5-d
symbol*
String
The ticker of the requested index
limit
Integer
The number of records to obtain. If the parameter is not specified the last record will be returned.
start_time
datestring
Received range includes the start time date. The start_time value has to be either a date or a datetime string in ISO8601 format. The formats allowed are therefore:
YYYY-MM-DDTHH:MM:SSZ
YYYY-MM-DDTHH:MM:SS.fffZ
YYYY-MM-DD
end_time
datestring
Received range excludes the end_time . The end_time value has to be either a date or a datetime string in ISO8601 format. The formats allowed are therefore:
YYYY-MM-DDTHH:MM:SSZ
YYYY-MM-DDTHH:MM:SS.fffZ
YYYY-MM-DD
Authorization*
String
your_secret_api_key
Please read the following for detailed information on parameters.
The multi assets hourly endpoint returns values for a specific multi asset index that is calculated on an hourly basis.
The endpoint requires an API key and it requires that the symbol of the index is specified using the symbol parameter. If the limit parameter is not specified the latest value is returned. To ensure chronological ordering of the index values you should sort the values using the timestamp field. The endpoint only returns a maximum of 2000 records.
Example URL
GET https://www.vinterapi.com/api/v3/multi_assets_hourly/
This is a sample response for asset vntr-eq-5-h
Please read the following for detailed information on parameters.
{
"result": "success",
"message": "Success",
"data": [
{
"id": 61446159,
"created_at": "2022-11-18T11:02:19.635Z",
"symbol": "vntr-eq-5-r",
"value": 1924.05,
"rebalance_values": [
{
"value": 0.4032,
"symbol": "ada-usd-p-d",
"datetime": "2022-10-31T16:00:06.384Z",
"timestamp": 1667232006383
},
{
"value": 324.33,
"symbol": "bnb-usd-p-d",
"datetime": "2022-10-31T16:00:11.707Z",
"timestamp": 1667232011706
},
{
"value": 20363.48,
"symbol": "btc-usd-p-d",
"datetime": "2022-10-31T16:00:07.907Z",
"timestamp": 1667232007905
},
{
"value": 1565.25,
"symbol": "eth-usd-p-d",
"datetime": "2022-10-31T16:00:04.531Z",
"timestamp": 1667232002445
},
{
"value": 0.452628,
"symbol": "xrp-usd-p-d",
"datetime": "2022-10-31T16:00:07.781Z",
"timestamp": 1667232007780
},
{
"value": 2341.2,
"symbol": "vntr-eq-5-d",
"datetime": "2022-10-31T16:00:21.381Z",
"timestamp": 1667232021379
}
],
"timestamp": 1668769339634,
"current_values": [
{
"value": 0.3311,
"symbol": "ada-usd-p-r",
"datetime": "2022-11-18T11:02:10.578434Z",
"timestamp": 1668769330578
},
{
"value": 272.34,
"symbol": "bnb-usd-p-r",
"datetime": "2022-11-18T11:02:09.648000Z",
"timestamp": 1668769329647
},
{
"value": 16754.2,
"symbol": "btc-usd-p-r",
"datetime": "2022-11-18T11:02:12.410437Z",
"timestamp": 1668769332410
},
{
"value": 1218.55,
"symbol": "eth-usd-p-r",
"datetime": "2022-11-18T11:02:11.717187Z",
"timestamp": 1668769331717
},
{
"value": 0.383365,
"symbol": "xrp-usd-p-r",
"datetime": "2022-11-18T11:02:11.603424Z",
"timestamp": 1668769331603
}
],
"rebalance_weights": {
"ada-usd-p-r": 0.2,
"bnb-usd-p-r": 0.2,
"btc-usd-p-r": 0.2,
"eth-usd-p-r": 0.2,
"xrp-usd-p-r": 0.2
},
"current_weights": {
"ada-usd-p-r": 0.1998436153,
"bnb-usd-p-r": 0.2043506068,
"btc-usd-p-r": 0.2002273122,
"eth-usd-p-r": 0.1894572644,
"xrp-usd-p-r": 0.2061212013
}
}
],
"params": {
"symbol": "vntr-eq-5-r"
}
}import requests
url = "https://www.vinterapi.com/api/v3/multi_assets_real_time/?symbol=vntr-eq-5-r"
headers = {"Authorization": your_secret_api_key}
r = requests.get(url, headers=headers)
resp = r.json()
# Filter Fields
INDEX_FIELDS = [
"id",
"created_at",
"value",
"symbol",
"timestamp"
]
filtered_data = []
# Filter just the fields mentioned in INDEX_FIELDS
for index in resp["data"]:
# Add it to dict
filtered_data.append({k: index[k] for k in INDEX_FIELDS})
print(filtered_data){
"result": "success",
"message": "Success",
"data": [
{
"id": 93029,
"created_at": "2022-11-17T16:00:15.665Z",
"symbol": "vntr-eq-5-d",
"value": 1891.71,
"rebalance_values": [
{
"value": 0.4032,
"symbol": "ada-usd-p-d",
"datetime": "2022-10-31T16:00:06.384Z",
"timestamp": 1667232006383
},
{
"value": 324.33,
"symbol": "bnb-usd-p-d",
"datetime": "2022-10-31T16:00:11.707Z",
"timestamp": 1667232011706
},
{
"value": 20363.48,
"symbol": "btc-usd-p-d",
"datetime": "2022-10-31T16:00:07.907Z",
"timestamp": 1667232007905
},
{
"value": 1565.25,
"symbol": "eth-usd-p-d",
"datetime": "2022-10-31T16:00:04.531Z",
"timestamp": 1667232002445
},
{
"value": 0.452628,
"symbol": "xrp-usd-p-d",
"datetime": "2022-10-31T16:00:07.781Z",
"timestamp": 1667232007780
},
{
"value": 2341.2,
"symbol": "vntr-eq-5-d",
"datetime": "2022-10-31T16:00:21.381Z",
"timestamp": 1667232021379
}
],
"timestamp": 1668700815663,
"date": "2022-11-17",
"rebalance_weights": {
"ada-usd-p-d": 0.2,
"bnb-usd-p-d": 0.2,
"btc-usd-p-d": 0.2,
"eth-usd-p-d": 0.2,
"xrp-usd-p-d": 0.2
},
"current_weights": {
"ada-usd-p-d": 0.198165331,
"bnb-usd-p-d": 0.2039067008,
"btc-usd-p-d": 0.2015564524,
"eth-usd-p-d": 0.1900732396,
"xrp-usd-p-d": 0.2062982762
},
"current_values": [
{
"value": 0.3228,
"symbol": "ada-usd-p-d",
"datetime": "2022-11-17T16:00:10.220161Z",
"timestamp": 1668700810220
},
{
"value": 267.18,
"symbol": "bnb-usd-p-d",
"datetime": "2022-11-17T16:00:14.764984Z",
"timestamp": 1668700814764
},
{
"value": 16581.89,
"symbol": "btc-usd-p-d",
"datetime": "2022-11-17T16:00:12.401236Z",
"timestamp": 1668700812401
},
{
"value": 1201.96,
"symbol": "eth-usd-p-d",
"datetime": "2022-11-17T16:00:06.714292Z",
"timestamp": 1668700806714
},
{
"value": 0.377244,
"symbol": "xrp-usd-p-d",
"datetime": "2022-11-17T16:00:12.103156Z",
"timestamp": 1668700812103
}
]
}
],
"params": {
"symbol": "vntr-eq-5-d"
}
}import requests
url = "https://www.vinterapi.com/api/v3/multi_assets_daily/?symbol=vntr-eq-5-d"
headers = {"Authorization": your_secret_api_key}
r = requests.get(url, headers=headers)
resp = r.json()
# Filter Fields
INDEX_FIELDS = [
"id",
"created_at",
"value",
"symbol",
"timestamp",
"date"
]
filtered_data = []
# Filter just the fields mentioned in INDEX_FIELDS
for index in resp["data"]:
# Add it to dict
filtered_data.append({k: index[k] for k in INDEX_FIELDS})
print(filtered_data)date
string
Date representing the calculation date
hour
integer
A integer of the Hour representing the calculation hour
rebalance_values
array
A array of Objects of rebalance values
rebalance_weights
object
Object of rebalance weights
current_weights
object
Object of current weights
current_values
array
A array of Objects of current values
id
integer
The record's id in the source table. A id that equals 0 means that it is not an official value.
created_at
string
ISO formatted datetime representing the calculation time
value
number
The index value
symbol
string
The index symbol.
timestamp
integer
symbol*
String
The ticker of the requested index
limit
Integer
The number of records to obtain. If the parameter is not specified the last record will be returned.
start_time
datestring
Received range includes the start time date. The start_time value has to be either a date or a datetime string in ISO8601 format. The formats allowed are therefore:
YYYY-MM-DDTHH:MM:SSZ
YYYY-MM-DDTHH:MM:SS.fffZ
YYYY-MM-DD
end_time
datestring
Received range excludes the end_time . The end_time value has to be either a date or a datetime string in ISO8601 format. The formats allowed are therefore:
YYYY-MM-DDTHH:MM:SSZ
YYYY-MM-DDTHH:MM:SS.fffZ
YYYY-MM-DD
Authorization*
String
your_secret_api_key
Unix timestamp in milliseconds representing the calculation time.
string
The index symbol.
timestamp
integer
Unix timestamp in milliseconds representing the calculation time.
date
string
Date representing the calculation date
rebalance_values
array
A array of Objects of rebalance values
rebalance_weights
object
Object of rebalance weights
current_weights
object
Object of current weights
current_values
array
A array of Objects of current values
{
"result": "success",
"message": "Success",
"data": [
{
"id": 167943,
"created_at": "2022-11-18T10:00:31.546Z",
"symbol": "vntr-eq-5-h",
"value": 1916.04,
"rebalance_values": [
{
"value": 0.4032,
"symbol": "ada-usd-p-d",
"datetime": "2022-10-31T16:00:06.384Z",
"timestamp": 1667232006383
},
{
"value": 324.33,
"symbol": "bnb-usd-p-d",
"datetime": "2022-10-31T16:00:11.707Z",
"timestamp": 1667232011706
},
{
"value": 20363.48,
"symbol": "btc-usd-p-d",
"datetime": "2022-10-31T16:00:07.907Z",
"timestamp": 1667232007905
},
{
"value": 1565.25,
"symbol": "eth-usd-p-d",
"datetime": "2022-10-31T16:00:04.531Z",
"timestamp": 1667232002445
},
{
"value": 0.452628,
"symbol": "xrp-usd-p-d",
"datetime": "2022-10-31T16:00:07.781Z",
"timestamp": 1667232007780
},
{
"value": 2341.2,
"symbol": "vntr-eq-5-d",
"datetime": "2022-10-31T16:00:21.381Z",
"timestamp": 1667232021379
}
],
"timestamp": 1668765631545,
"date": "2022-11-18",
"rebalance_weights": {
"ada-usd-p-h": 0.2,
"bnb-usd-p-h": 0.2,
"btc-usd-p-h": 0.2,
"eth-usd-p-h": 0.2,
"xrp-usd-p-h": 0.2
},
"current_weights": {
"ada-usd-p-h": 0.1986187064,
"bnb-usd-p-h": 0.2046175635,
"btc-usd-p-h": 0.2007775648,
"eth-usd-p-h": 0.1894596455,
"xrp-usd-p-h": 0.2065265197
},
"current_values": [
{
"value": 0.3277,
"symbol": "ada-usd-p-h",
"datetime": "2022-11-18T10:00:03.496486Z",
"timestamp": 1668765603496
},
{
"value": 271.56,
"symbol": "bnb-usd-p-h",
"datetime": "2022-11-18T10:00:31.458464Z",
"timestamp": 1668765631458
},
{
"value": 16730.27,
"symbol": "btc-usd-p-h",
"datetime": "2022-11-18T10:00:04.510639Z",
"timestamp": 1668765604510
},
{
"value": 1213.49,
"symbol": "eth-usd-p-h",
"datetime": "2022-11-18T10:00:04.911595Z",
"timestamp": 1668765604911
},
{
"value": 0.382519,
"symbol": "xrp-usd-p-h",
"datetime": "2022-11-18T10:00:06.238735Z",
"timestamp": 1668765606238
}
],
"hour": 10
}
],
"params": {
"symbol": "vntr-eq-5-h"
}
}import requests
url = "https://www.vinterapi.com/api/v3/multi_assets_hourly/?symbol=vntr-eq-5-h"
headers = {"Authorization": your_secret_api_key}
r = requests.get(url, headers=headers)
resp = r.json()
# Filter Fields
INDEX_FIELDS = [
"id",
"created_at",
"value",
"symbol",
"timestamp",
"date"
]
filtered_data = []
# Filter just the fields mentioned in INDEX_FIELDS
for index in resp["data"]:
# Add it to dict
filtered_data.append({k: index[k] for k in INDEX_FIELDS})
print(filtered_data)