Setting User Locale and Timezone

This topic describes the configuration of the locale and timezone, and provides date and time considerations.

 

1. Configuration

From the Calypso Navigator, navigate to Configuration > Definition > Locale Configuration to set your locale and timezone for the current session.

Locale Configuration window

» Select a locale and a timezone as needed, then click Apply.

 

Locale

The locale defaults to the locale specified in your User Defaults if specified, or in your Environment otherwise. You can set the locale in this window for the current session only. When you exit the Calypso Navigator, the locale will be reset to the locale specified your User Defaults if specified, or in your Environment otherwise. Therefore, if you need to change your locale permanently, please do so in the User Defaults or Environment (the locale specified in the User Defaults for a given user takes precedence over the locale specified in the Environment).

 

Timezone

The timezone defaults to the timezone specified in your User Defaults. You can set a timezone in this window for the current session only. When you exit the Calypso Navigator, the timezone will be reset to the timezone specified in the User Defaults. Therefore, if you need to change your timezone permanently, please do so in the User Defaults.

All dates and times are displayed in the selected timezone for the current user.

However, all dates and times are saved to the database in the reference timezone. The reference timezone is set at implementation time in the database table calypso_info. It is GMT by default.

calypso_info database table

 Ⓘ   [NOTE: Once the reference timezone is set, it cannot be changed]

 

2. Date and Time Considerations

Some date fields are displayed as a date (for example the Settlement date is displayed as DD/MM/yyyy), while others are displayed as a date and time (for example the Trade Date is displayed as MMM DD, yyyy HH:MM AM/PM).

The choice of format is not arbitrary, it depends on the need to refer to a specific time and timezone:

A date is used when the time and timezone are not relevant. For example: Settlement Date, Maturity Date.

A date simply represents a Julian date.

A date and time is used when time and timezone are important such as for recording the exact time of day that a trade was executed, or a record updated.

For example, if an AUD/USD FX Option expires on Wednesday at 10:00 am in Sydney, a trader in New York should be able to see that the same trade expires on Tuesday at 8:00 pm in New York.

A date and time uses the Java Calendar to be able to order objects in strict chronological order regardless of the timezone.

 

Valuation Datetime, Update Datetime, Undo Datetime

Strict chronological requirements of the system (such as audit and kick-off/cut-off processing) are driven by date and time fields set by the Data Server. This allows the Data Server to retrieve a trade as of a specific date and time (reconstructed from the audit trail for example) so that it can perform analysis and batch processing as of specific times without having to block users from entering new trades or updating existing trades.

Records in the database are timestamped with an Update Datetime which is used to audit changes.
Risk analyses and scheduled tasks can specify an Undo Datetime, a point in time that trades will be rolled-back to for the purposes of processing. The trade may have been amended since then but will be recreated as it was at the Undo Datetime for this specific request.
The Valuation Datetime specifies the point in time that a processing is deemed to be occurring. For example, if Valuation Datetime is 5:00 pm, then only the trades entered before 5:00 pm will be processed, and the process will use market data as of the Valuation Datetime.

 

Using the Portfolio Manager as an example, we have the following settings:

Valuation Datetime = 14:23:52

Undo Datetime = 13:00:00

 

We can see from the audit trail on this trade that the trade will be included in the process because it existed before 14:23:52, but it will be rolled back to version 0 because it was amended at 13:17:19, and we want to consider all trades as of 13:00:00.

 

The "undo" feature is driven by the audit trail and timestamp generated by the Data Server, so the date and time of the user has no impact.

 

User versus Data Server Date and Time

The date and time of the user is used to display dates and times, and it may be different from the date and time of the Data Server.

From the Calypso Navigator, you can navigate to Utilities > Check Server Time to check their respective date and time.

 

To avoid any confusion (like capturing back-dated trades inadvertently), you can enforce a limit to the difference between the Server Time and the Client Time using the environment property MAX_DIFF_TIME. It is set in ms, and defaults to 3600000 (1 hour).

If the difference is more than MAX_DIFF_TIME, the Client application will not start.