17.12.2018 11:41

SPECTRA UAT update to v.6.2

Dear clients of MOEX Derivatives market,

We would like to inform you that test (T+1) environment was updated to version 6.2 Spectra. Planned date for production roll on is February 2019.

What’s new in this version:

  1. Separate entities of Clearing Member and Trading Member on Derivatives Market

Effective SPECTRA version 6.2, the Derivatives Market rolls out a new model, with Trading Member and Clearing Member represented by two separate entities, in order to allow clients to have access for trading without necessity to be Clearing Member. On the other hand, to perform their obligations regarding the trades performed on the Derivatives Market, a Clearing Member may not be a Trading Member. Therefore, a member in the Trading System SPECTRA may be of one of the following categories:

  • Clearing Member (CM). Clearing Member may serve one or more Trading Members acting as a counterparty for the trades performed by these Trading Members.
  • Trading Member (TM). Trading Member is eligible to perform trades on auction. However, obligations and requirements regarding the trades performed by the Trading Member will be fulfilled by a Clearing Member that serves the given Trading Member.
  • Clearing Member + Trading Member (CM+TM, current scheme for all members). The members are eligible to perform trades on auction, and act as NCC counterparties for the performed trades. For these members, the trading and clearing procedures remain the same as they have been before.

2.   Changing user password for the Trading System
Users are able to change their authentication password for the Trading System by one of the following methods:

  • via API CGate, using a new non-trading command ChangePassword;
  • via a special utility change_password. The utility is included into CGate distribution kit;
  • via workstation MoexSpectraTerminal.

3.   Changes applied to user interface of CGate gateway:

  • Settings for series of Options are now grouped in stream FORTS_OPTINFO_REPL in table option_series:
    • replID(i8) - Service field of the replication subsystem
    • replRev (i8) - Service field of the replication subsystem
    • replAct (i8) - Service field of the replication subsystem
    • series_id (i4) - Series of Options ID
    • underlying_id (i4) - Futures ID
    • base_contract_id (i4) - Underlying contract ID
    • expiration_date (t) - Expiration period closing date
    • expiration_anchor_date (t) – Anchor date (expiration date of series of Options)
    • days_to_expiration (i4) - Number of business days (local calendar) before expiration date
    • years_to_expiration (f) - Time before Option expiration date in fractions of year (calendar days before exercise date/number of days in year)
    • series_type (c1) - Type: D - daily; W - weekly; M - monthly; Q - quarterly
    • small_name (c25) - Symbol code
    • A(d20.15) - Volatility curve calculation parameter
    • B(d20.15) - Volatility curve calculation parameter
    • C(d20.15) - Volatility curve calculation parameter
    • D(d20.15) - Volatility curve calculation parameter
    • E(d20.15) - Volatility curve calculation parameter
    • S(d20.15) - Volatility curve calculation parameter
    • strike_step (d16.5) - Strike step
    • use_null_volat (i1) - 1 - Zero volatility calculation mode is on, 0 - Off
    • sub_risk (i1) - 1 - Risk accounting by risk sub-points mode is on, 0 - Off
    • volat_min (d20.15) - Minimum volatility limit
    • volat_max (d20.15) - Maximum volatility limit
    • volatility_risk (f) - Current risk rate volatility, in fractions
    • volatility_mismatch_risk (f) - Сurrent volatility mismatch risk rate, in fractions
  • Table opt_sess_contents of stream FORTS_OPTINFO_REPL: deleted fields is_limited, limit_up, limit_down, exch_pay.
  • Table opt_sess_contents of stream FORTS_OPTINFO_REPL: added field option_series_id – series of Options ID.
  • Stream FORTS_FUTINFO_REPL: deleted tables diler, investr.
  • Stream FORTS_FUTINFO_REPL, table dealer: added fields:
    • firm_id (с12) – Trading Member's ID for Derivatives Market
    • tm_name (с200) – Trading Member's name
  • Stream FORTS_FUTINFO_REPL, table fut_sess_contents: deleted fields is_limited, exch_pay.
  • Stream FORTS_FUTINFO_REPL, table fut_sess_contents: added fields:
    • d_exp_start (t) – opening date of instrument exercise
    • d_exp_end (t) - closing date of instrument exercise
  • Stream FORTS_FUTINFO_REPL, table fut_instruments: deleted fields is_limited, volat_min, volat_max, is_limit_opt, limit_up_opt, limit_down_opt, adm_lim, adm_lim_offmoney, apply_adm_limit.
  • Stream FORTS_MM_REPL, table cs_mm_rule: field isin_id renamed to option_series_id – series of Options ID.
  • Stream FORTS_MISCINFO_REPL, table volat_coeff: field isin_id renamed to option_series_id – series of Options ID.
  • Stream FORTS_INFO_REPL, table option_series_params: field isin renamed to small_name (symbol code), field exp_date renamed to expiration_date (exercise period closing date).
  • Stream FORTS_INFO_REPL, table option_series_params, added fields:
    • option_series_id (i4) – series of Options ID
    • underlying_id (i4) – Futures ID
  • Field currency_volat deleted from table base_contracts_params.

Following the update of trading and clearing system of FX market and Securities market, the new interface version 30 rolls out with the following changes:

  • Stream MCXCC_MDCOMMON_REPL, table common: added fields SETTLEDATE1 (t), SETTLEDATE2 (t)
  • Stream MCXSPOT_MDTRADE_REPL, table ALL_TRADES: added field FACEAMOUNT (d16.2)
  • Stream MCXSPOT_INFO_REPL, table SECURITIES, field REGNUMBER:field type changed to c30.

Please note that effective SPECTRA version 6.2, libraries of the Plaza2 version 206 and earlier are no more supported. You are kindly requested to update the libraries to the newest version provided.

4. Changes applied to command scheme repository:

  • New non-trading command DelOrdersByBFLimit - Request to NCC for collateral sufficiency of BF.
  • New non-trading command ChangePassword - Change user password for the Trading System.
  • Command FutAddOrder: added field ncc_request (i4) - Request to NCC for performing trades with Trading Member.
  • Command FutAddMultiLegOrder: added field ncc_request (i4) - Request to NCC for performing trades with Trading Member.
  • Command FutDelOrder: added field ncc_request (i4) - Request to NCC for performing trades with Trading Member.
  • Command FutMoveOrder: added field ncc_request (i4) - Request to NCC for performing trades with Trading Member.
  • Command OptAddOrder: added field ncc_request (i4) - Request to NCC for performing trades with Trading Member.
  • Command OptDelOrder: added field ncc_request (i4) - Request to NCC for performing trades with Trading Member.
  • Command OptMoveOrder: added field ncc_request (i4) - Request to NCC for performing trades with Trading Member.
  • Command OptRecalcCS: field isin_id (i4) replaced with option_series_id (i4).
  • Command FutChangeClientMoney: deleted obsolete fields limit_pledge, coeff_liquidity.

5. Changes applied to reports:

  • Reports on client accounts (monclXXYYZZZ.csv, f04clXXYYZZZ.csv, o04clXXYYZZZ.csv, fposclXXYYZZZ.csv, oposclXXYYZZZ.csv, payclXXYYZZZ.csv, multilegf04clXXYYZZZ.csv) are available for Clearing Member or Trading Member only if that Member manages the clients.
  • If a Trading Member manages any clients, (model 'Clients are managed by TM' applied), then this Trading Member is eligible to receive additional reports, i.e.: clientsXXYY.csv, paycbXXYY.csv, persinvestXXYY.csv, with the structure similar to that of clientsXX00.csv, paycbXX00.csv, persinvestXX00.csv, respectively.
  • Report clients now contains new field CLIENT_OWNER. The field contains data on client managing model:
    • 1 – clients are managed by CM
    • 2 – clients are managed by TM
  • Reports on trades and orders (exclude order-driven ones):
    • f04_XXYY.csv
    • f04clXXYYZZZ.csv
    • o04_XXYY.csv
    • o04clXXYYZZZ.csv
    • multilegf04_XXYY.csv
    • multilegf04clXXYYZZZ.csv
    • multilegordlog_XXYY.csv

now contain field NCC_REQUEST, equivalent to the flag 'Request to NCC for performing trades with Trading Member':

  • 0 – market order
  • 1 – trade is resulting from request to NCC for performing trades with Trading Member.

If a Clearing Member or a Trading Member is not eligible to manage clients belonging to a certain Brokerage Firm, then they will not receive reports containing detailed data on these clients.

 6.   Changes applied to TWIME
Following the separation of Clearing and Trading Member entities, the following changes applied to TWIME protocol:

  • Important update! The application level messages NewOrderSingle (message id=6000), OrderReplaceRequest (message id=6003) now have their field CheckLimit (Tag=20217) replaced with new field ClientFlags. 20218 | ClientFlags | Y | ClientFlagsSet | Field is a bitmask:
    • 0x1 - Do not perform limit verification for Options
    • 0x2 - Request to NCC for performing trades with Trading Member.
  • The application level messages NewOrderMultileg (message id=6001), OrderCancelRequest (message id=6002) now contain new field ClientFlags 20218 | ClientFlags | Y | ClientFlagsSet | Field is a bitmask 0x2 - Request to NCC for performing trades with Trading Member.
  • The application level messages NewOrderSingleResponse (message id=7000), NewOrderMultilegResponse (message id=7001), OrderCancelResponse (message id=7003), OrderReplaceResponse (message id=7005): field Flags (Tag=20215) now contains new bit 0x4000000000 - Request to NCC for performing trades with Trading Member.
  • The application level messages ExecutionSingleReport (message id=7008), ExecutionMultilegReport (message id=7009): field Flags (Tag=20215) now contains new bit 0x4000000000 – Trade is resulting from request to NCC.
  • Added new application level message OrderMassCancelByBFLimitRequest (message id=6005) – Request to NCC for collateral sufficiency verification of BF 11 | ClOrdID | Y | UInt64 | Client ID of the request. 1 | Account | Y | String7 | Client 7-symbol ID.
  • Added new application level message OrderMassCancelByBFLimitResponse (message id=7012) - Response to the request to NCC for collateral sufficiency of Brokerage Firm.11 | ClOrdID | Y | UInt64 | Client ID of the message 'OrderMassCancelByBFLimitRequest'. 20204 | Timestamp | Y | TimeStamp | Server side date and time of operation. 533 | TotalAffectedOrders | N | Int32 | Orders cancelled. 103 | OrdRejReason | C | Int32 | Reason for mass cancellation rejection.

7.   Changes applied to FIX
Following the separation of Clearing and Trading Member entities, the following changes applied to FIX protocol:

  • Trading messages New Order Single, Order Cancel Request, Order Cancel/Replace Request, Execution Report now contain non-mandatory field NccRequest 20035 | NccRequest | N | Boolean | Request to NCC for performing trades with Trading Member.
  • Mandatory field NccRequest (Tag=20035) added to all messages Execution Report of FIX Drop Copy service.
  • Added new command - Request to NCC for collateral sufficiency verification of BF. The command allows Clearing Member to cancel clients' orders. Technically performed as sending message Order Mass Cancel Request with MassCancelRequestType=Z. In response, FIXGate sends message OrderMassCancelReport with MassCancelRequestType=Z.

 8.   Changes applied to FAST
Messages Security Definition (MsgType=d), Security Status (MsgType=f): price limit values for Options are no more provided – instead, fields LowLimitPx и HighLimitPx for Options will contain NULL.

New docs and specifications will be available soon at our ftp site:

ftp://ftp.moex.com/pub/FIX/Spectra/test/docs/

ftp://ftp.moex.com/pub/TWIME/Test/doc/

ftp://ftp.moex.com/pub/FAST/Spectra/test/

ftp://ftp.moex.com/pub/ClientsAPI/Spectra/CGate/test/

Contacts for media
+7 (495) 363-3232
+7 (495) 232-3363
Public Relations Department
Contacts for clients
+7 (495) 363-3232
+7 (495) 232-3363
Feedback form
IT news