--- title: "Scheduling a valuation" slug: "scheduling-a-valuation" updated: 2025-12-18T11:11:51Z published: 2025-12-18T11:11:51Z canonical: "support.lusid.com/scheduling-a-valuation" --- > ## Documentation Index > Fetch the complete documentation index at: https://support.lusid.com/llms.txt > Use this file to discover all available pages before exploring further. # Scheduling a valuation You can perform an impromptu valuation at any time, but you can also schedule the operation to occur at a cadence, for example every weekday at a particular time, or every business day between a range of dates, or at EOD on the 15th of every month. > **Note**: The dates and times you choose impact the quantity and quality of market data required. [More information](/v1/docs/what-market-data-does-my-valuation-require). To perform an impromptu valuation, set the `effectiveAt` field in the [valuation schedule](/v1/docs/how-do-i-perform-a-valuation#using-the-lusid-api) to a specific date and time, for example 31 January 2024 at 5pm UTC. Note if you omit the time component, valuation occurs at midnight (00:00:00) at the start of that day: ```json "valuationSchedule": {   "effectiveAt": "2024-01-31T17:00:00Z" } ``` To schedule valuations across a range of dates, set the `effectiveFrom` field to the start date and `effectiveAt` to the end date. By default, valuation occurs every day in the range [except Saturdays and Sundays](/v1/docs/scheduling-a-valuation#performing-a-valuation-at-the-weekend). For example, to value every weekday at 5pm UTC between 1 January and 31 January 2024 inclusive: ```json "valuationSchedule": {   "effectiveFrom": "2024-01-01T17:00:00Z",   "effectiveAt": "2024-01-31T17:00:00Z" } ``` Other fields enable you to set up a more sophisticated schedule. Consider the following example: ```json "valuationSchedule": {   "effectiveFrom": "2024-01-01T17:00:00Z",   "effectiveAt": "2024-12-31T17:00:00Z",   "tenor": "1M",   "rollConvention": "15",   "holidayCalendars": ["USD", "GBP"],   "businessDayConvention": "P" } ``` Note the following: - The tenor of `1M`(onth) overrides the default of `1D`(ay) to perform the valuation once a month between January and December 2024, instead of every weekday. [More about tenors](/v1/docs/specifying-tenors-in-lusid). - Since the tenor is `1M` or longer, the `rollConvention` of `15` overrides the default of `None` to perform the valuation on the 15th of the month instead of the start day in the range (which in this case is the 1st). An alternative might be `EndOfMonth` to value on the last day of the month. [More about roll conventions](/v1/docs/roll-conventions-and-business-day-conventions). - The `holidayCalendar` codes of `USD` and `GBP` incorporate US and UK market holiday data in order to only perform the valuation on the 15th if it is a good business day in both jurisdictions. Note these are holiday calendar *codes*, and that the *scope* is defined in the recipe. Note also that these calendars only impact valuation scheduling; cashflows are determined by calendars specified on instruments. [More about holiday calendars](/v1/docs/using-calendars-in-lusid). - The `businessDayConvention` of `P`(revious) overrides the default of `F`(ollowing) to value on the previous business day if the 15th is a holiday, instead of the next business day. [More about business day conventions](/v1/docs/roll-conventions-and-business-day-conventions). ## Performing a valuation at the weekend By default, LUSID does not perform valuations on Saturdays and Sundays. To change this (and assuming suitable market data is available at the weekend): 1. Create a new (or edit an existing) calendar to have no weekend mask. For example, the following call to the [CreateCalendar](https://www.lusid.com/docs/api/lusid/endpoints/calendars/CreateCalendar/) API creates an empty calendar with `"weekendMask.days": []` to consider every day of the year a good business day: ```json curl -X POST 'https://.lusid.com/api/api/calendars/generic'  -H 'Content-Type: application/json-patch+json'  -H 'Authorization: Bearer '  -d '{  "calendarId": {    "scope": "CoppClarkHolidayCalendars",    "code": "AllDays"  },  "calendarType": "Holiday",  "weekendMask": {    "days": [],    "timeZone": "UTC"  },  "sourceProvider": "Hand-crafted-calendar" }' ``` 2. Specify the code of the calendar in the valuation request (note the scope of the calendar is defined in the recipe): ```json "valuationSchedule": {  "effectiveFrom": "2022-03-07T00:00:00Z",  "effectiveAt": "2022-03-13T00:00:00Z",  "holidayCalendars": ["AllDays"], } ``` 3. Perform the valuation, for example: ![](https://cdn.document360.io/d575ad81-c0ed-4980-bbd1-d59ac5c3de82/Images/Documentation/image-COLS86TG.png?sv=2026-02-06&spr=https&st=2026-11-04T02%3A13%3A55Z&se=2026-11-04T03%3A13%3A55Z&sr=c&sp=r&sig=7rlEpFmtqvDuNsdsixiV4d9d4IuaWRv31ZbYJAxwUbg%3D)