REPO operations on the MICEX Stock Exchange through the MICEX Bridge API



Similar documents
How To Clear Of Sek Denominated Repos

WHOLESALE SECURITIES. Introduction. Definitions. Structure of Practice Note. Practice Note #7 CURRENT DATE: 7 MARCH 2016

KAZAKHSTAN STOCK EXCHANGE JSC

ΤΑRGET2 Securities/BOGS BOGS functionalities in T2S

Futures Contract Introduction

1. HOW DOES FOREIGN EXCHANGE TRADING WORK?

Operation of Stock Exchange

DOC. SIX Repo AG. Product Specification for the Repo Market OTC Spot

How options are traded

Enhanced NET Securities Trading Platform User Hints

Claiming a Fails Charge for a Settlement Fail in U.S. Treasury Securities

Class 4: Option Trading - Part Assessing Risks and Rewards. Foundations of Stocks and Options Class 4: Option Trading - Part 1.

SIX Corporate Bonds AG. Directive 3: Trading. of 23/04/2015 Effective from: 08/05/2015

MARGIN FOREIGN EXCHANGE AND FOREIGN EXCHANGE OPTIONS

General Risk Disclosure

Cash Flow Equivalence

ETP Business Infrastructure

Measurement Concepts for Banking, Trading, and Investing

Description of business processes. ISO Securities dashboard - Description of business processes

GUIDANCE ICE Futures Europe EFP, EFS, Soft Commodity EFRP and Basis Trade Policy

Clearing and settlement of exchange traded derivatives

Lifecycle of transactions

Online Appendix: Payoff Diagrams for Futures and Options

RISK MANAGEMENT IN NETTING SCHEMES FOR SETTLEMENT OF SECURITIES TRANSACTIONS

BEST INTEREST AND ORDER EXECUTION POLICY

Chapter 2 Mechanics of Futures Markets. Options, Futures, and Other Derivatives, 8th Edition, Copyright John C. Hull

A guide to London Stock Exchange trading services for equity securities

FIN 684 Fixed-Income Analysis From Repos to Monetary Policy. Funding Positions

Learning Curve Forward Rate Agreements Anuk Teasdale

Warrants, Certificates and other products

Renaissance Securities (Cyprus) Limited. FORTS and RTS Standard Trading Schedule

ESMA Discussion Paper on Draft Technical Standards for the Regulation on improving securities settlement in the European Union and on central

XIV. Additional risk information on forward transactions in CFDs

NASDAQ OMX Swedish STIBOR-FRA

FAQs for Securities lending and borrowing (SLB) scheme

FP MARKETS CONTRACTS FOR DIFFERENCES PRODUCT DISCLOSURE STATEMENT

SIX Swiss Exchange Ltd. Directive 3: Trading. of 17/07/2015 Effective from: 26/10/2015

Introduction to Eris Exchange Interest Rate Swap Futures

PROFITEERING IN THE GLOBAL FOREX MARKET. -Presentation by R.K.Gurumurthy -Treasurer, Bank One Ltd

How Securities Are Traded

Rules of the London Stock Exchange Derivatives Market

Website Address:

Treasury Bond Futures

Following A Trade. A Guide to DTCC s Pivotal Roles in How Securities Change Hands

The Netherlands Authority for the Financial Markets. A legal person applying to become a Member of TOM MTF.

TERMS AND CONDITIONS OF CASH TRANSACTIONS IN DOMESTIC TRANSACTIONS AT PKO BP SA BANK

Bond Market Overview and Bond Pricing

NCCPL Regulations CHAPTER 12B: RISK MANAGEMENT SYSTEM OF THE COMPANY FOR DEBT MARKET CLEARING MEMBERS

Content. Executive Summary. What is a CFD? Who are the participants? Advantages of trading CFDs. Features and benefits of CFDs. Reasons for using CFDs

When firms need to raise capital, they may issue securities to the public by investment bankers.

Derivatives: Options

July Central Counterparty for Equities Settlement Netting. Service Outline

In depth A look at current financial reporting issues

Financial Instruments: Recognition and Measurement

Clearing Terms SIX x-clear Ltd for SIX Swiss Exchange Ltd

Macquarie Shorting. Product Disclosure Statement 15 JUNE 2015

Tading Platform Manual

How To Trade In China

Risks involved with futures trading

The Bermuda Securities Depository (BSD) Participants User Guide WEB VERSION

Swiss Risk Disclosure - Characteristics and Risks of Options

Chapter Five: Risk Management and Commodity Markets

Meaning & Definitions Aspect of Credit Management Objectives of Accounts Receivables Management Advantages of Trade Debtors Management Costs of

FINANCIAL TRANSACTION TAX

1. WHY WE NEED FOREIGN EXCHANGE 2. WHAT FOREIGN EXCHANGE MEANS 3. ROLE OF THE EXCHANGE RATE. 9 The Foreign Exchange Market in the United States

ASX 24 OPERATING RULES

CONTRACTS FOR DIFFERENCE

How To Trade In Foreign Stock Exchanges

Contents. 01 An Introduction to DMA trading within What is DMA? Benefits of DMA

Moscow Exchange Fix protocol specifications for OTC trades report system (OTC-monitor)

Notice Merchanting including forward commodities transactions Payments relating to external transactions

Forward and Futures Markets. Class Objectives. Class Objectives

How To Settle In Asx

Trading Dashboard Tutorial

DOC Report. SIX Repo AG. Trading Rules for the OTC Spot Market

FINRA ADDS OTC Reporting Facility Trade Journals

Latvian Central Depository Regulation No. 5 On DVP Settlements for Over-the-Counter Transactions

Transcription:

REPO operations on the MICEX Stock Exchange through the MICEX Bridge API This manual does not include information about REPO with the Central Counterparty. Based on IFCBROKER15V interface. The following text only describes table fields and transactions that have the key meaning for the understanding of the REPO order and settlement workflow. For the explanation of other fields refer to the interface description. Related Interface Objects...2 Reference Tables...2 Trading Tables...2 Trading Transactions...2 Positions and Settlement Tables...2 Settlement Transactions...3 Negdeal Order vs. Quote...3 Trade Conclusion...4 Order Withdrawal...6 Order Rejection...7 Trade Settlement...7 Settlement Report Withdrawal...9 Margin Call Settlement...10 Margin Call Cancellation...10 OTC REPO Trades with Central Bank...11 1

Related Interface Objects Reference Tables BOARDS list of available trading boards. CLIENTCODES list of own clients to be used at order entry. FIRMS list of all the firms on the market to be used to select negotiated deal counterparties. SEC_SETTLECODE settlement codes, accrued interest, settlement dates and REPO rates for all the securities. SECURITIES list of all securities on all the boards (according to the trader and firm permissions) with corresponding static and online market data. Trading Tables NEGDEALS sent and received negotiated deal orders. ONENEGDEAL details about one negotiated deal order. QUOTES quotes sent by the firm. REPO_NEGDEALBOOK quotebook for REPO negotiated deal orders that have been submitted by traders with the value of counterparty field set to All. Acceptance of a quote will lead to the immediate negdeal conclusion (so-called hard quotes ). REPO_QUOTEBOOK quotebook for REPO quotes. Acceptance of a quote will have to be followed by the additional confirmation by the quote initiator in order for a negdeal to be concluded (so-called soft quotes ). TRADES all trades of own firm, including both order-driven and quote-driven market. Trading Transactions EXT_REPO_NEGDEAL send an order for a negdeal either to a particular counterparty or to All. EXT_REPO_COMPLEX_NEGDEAL conclude a negdeal between the company and its client without any additional confirmations from the other side. EXT_REPO_QUOTE send a soft quote to the market quotebook. WD_NEGDEAL withdraw active negdeal orders. WD_QUOTE withdraw active quotes. Positions and Settlement Tables POSITIONS firm s positions on money. ACCOUNT_BALANCE firm s current and planned positions on securities per trading accounts. FIRM_HOLDING_TOTAL firm s current and planned positions on securities. unsettled trades and margin calls. settlement reports sent and received by the firm. 2

Settlement Transactions REPORT_VAR send a settlement report for 1-99 trades. REPORT_2 send a settlement report for 1 or 2 trades. REPORT_4 send a settlement report for 1 to 4 trades. REPORT_SIMPLECLEARING send a quick settlement report for a trade (simple clearing). COMPLEX_REPORT_VAR send a settlement report for 1-99 margin calls. COMPLEX_REPORT send a settlement report for 1-4 margin calls. COMPLEX_REPORT_SIMPLECLEARING send a quick settlement report for a margin call. CONFIRM_REPORT_VAR send a confirmation for 1-99 OTC REPO trades. CONFIRM_REPORT send a confirmation for 1-4 OTC REPO trades. CANCEL_TRADE_VAR refuse from the margin call settlement. Can include 1-99 margin calls. CANCEL_TRADES refuse from the margin call settlement. Can include from 1 to 4 margin calls. WD_REPORT withdraw settlement reports that haven t been accepted yet. Negdeal Order vs. Quote Negotiated deal orders are offers that lead to the trade conclusion right after they are accepted by counterparty (by sending a matching negdeal order in reply). Negdeals can be sent either to a particular counterparty or to all the participants on the market. In latter case it would be put into the negdealbook. This is so-called hard quote. Quote is the indication of an intention to buy or sell which is sent to all the participants on the market, but without an obligation to conclude a trade. This is so-called soft quote which goes to the quotebook. When another trader responds to this quote he needs to send the negdeal order to the quote initiator, who, in turn, will need to confirm the trade by sending the matching negdeal order in reply. 3

Trade Conclusion 1. Firm 1 sends a REPO order to Firm 2 using the EXT_REPO_NEGDEAL transaction with: CPFIRMID = Firm 2 ID ACCEPTEDQUOTENO = 12 spaces ACCEPTEDORDERNO = 12 spaces Only two out of the following three parameters are needed: QUANTITY REPOORDERVALUE STARTDISCOUNT If settlement price for a security is not defined then the first two parameters should be used. For some REPO boards it is possible to specify only the REPOORDERVALUE or the QUANTITY value. New records are added to the NEGDEALS tables of both firms and for both firms: FIRMID= Firm 1 ID, CPFIRMID= Firm 2 ID So when FIRMID equals to own firm then this is an own order. When CPFIRMID equals to own firm then this is an incoming order. 4

The STATUS field will contain the current value of an order status with description of that values provided by the TOrderStatus enumeration variable: O - Active M - Matched (accepted) W - Withdrawn F - Rejected by counterparty R - Rejected by the Trading System C - Cancelled by the Trading System When sending a hard quote to all the participants in order to put it into the market negdealbook set the value of CPFIRMID to *Всем (use the following constant in C++: char * cp_firm_all = "\x2a\xc2\xf1\xe5\xec"). To send a soft quote to all the participants in order to put it into the market quotebook use the EXT_REPO_QUOTE transaction. Note: the market interface document also mentions REPO_NEGDEAL and REPO_QUOTE transactions that were used for simplified (legacy) REPO trades on trading boards which no longer exist. 2. If the negdeal order receiver decides to accept it then the EXT_REPO_NEGDEAL transaction should be used. In order for the two negdeal orders to be matched all the negotiated parameters (SECBOARD, SECCODE, SETTLECODE, REFUNDRATE, REPORATE, REPOTERM, LOWERDISCOUNT, UPPERDISCOUNT) must be the same. It is important to specify the same set or values QUANTITY/REPOORDERVALUE/STARTDISCOUNT as in the initial order. Use the REPOENTRY field of the NEGDEALS table to find that combination. Values in that field are provided by the TRepoEntry enumeration variable: 4 - REPO Value+Volume 5 - REPO Value+Discount 6 - Volume+Discount 7 - REPO Value 8 - Volume The initial order number can be quoted in the ACCEPTEDORDERNO field. In this case a particular incoming order will be matched. Otherwise if there are several identical incoming orders, the oldest one will be matched. 3. When two orders are matched then the value of the STATUS field in the NEGDEALS table of both firms will change to M. At the same time a new record will be added to the TRADES table of both firms. It is important to remember that the NEGDEALS and TRADES tables should be opened only once during one connection session. If a table is closed and reopened then only new entries will appear in it and in order to retrieve all the previous entries reconnection will be required. 5

Order Withdrawal If the negdeal order initiator decides to withdraw it then the WD_NEGDEAL transaction should be used. After its execution the STATUS of the order in the NEGDEALS table will change to W for both firms. Firm 1 MICEX Firm 2 EXT_REPO_NEGDEAL Accepted NEGDEALS STATUS=O NEGDEALS STATUS=O Decision to withdraw order WD_NEGDEAL Accepted NEGDEALS STATUS -> W NEGDEALS STATUS -> W 6

Order Rejection If the negdeal order receiver decides to reject it then the WD_NEGDEAL transaction should be used. After its execution the STATUS of the order in the NEGDEALS table will change to F for both firms. Trade Settlement Second part of all the REPO trades must be settled manually by sending a settlement report (settlement instruction). After the counterparty accepts this report by sending a counter-report then the trade will be settled. For trades with S0, S01, S02 settlement codes it is also required to send a settlement report for the first REPO leg on the corresponding day (today, tomorrow, after tomorrow, respectively). All the trades to be settled are listed in the ( unsettled trades ) table. For the type S settlement codes the entry for the second leg settlement appears only after the reports for the first leg settlement are matched. It is possible to settle trades before the settlement due date. In order to check when a trade should be settled use the SETTLEDAY, URGENCYFLAG or NEXTDAYSETTLE fields. The settlement workflow involves the followings steps: 7

Firm 1 MICEX Firm 2 Identify unsettled trades STATUS = U STATUS = U Ready to settle REPORT_ * s STATUS = O FIRMID = FIRM1 CPFIRMID = FIRM2 STATUS -> P REPORTNO gets value Accepted s STATUS = O FIRMID = FIRM1 CPFIRMID = FIRM2 CPREPORTNO gets value Ready to settle s STATUS = M FIRMID = FIRM2 CPFIRMID = FIRM1 old own record: STATUS -> M STATUS -> M CPREPORTNO gets value Matched s REPORT_ * STATUS = M FIRMID = FIRM2 CPFIRMID = FIRM1 old partner record: STATUS -> M STATUS -> M REPORTNO gets value 1. Firm 1 sends one of the transactions which name starts with REPORT_. The choice of a particular transaction depends on the required settlement time (end of day or immediately) and on the number of trades to be included into one report in order to settle the net obligations. When several trades are included into one report they must have the same TRDACCID, CPFIRMID, CPTRDACCID. 2. New records will be added into the tables of both parties. Like with negdeal conclusion, when FIRMID equals to own firm then this is a sent report. When CPFIRMID equals to own firm then this is an incoming report. At the same time the following changes will be made to the table: STATUS field on the report sender side will change to P ; 8

REPORTNO and CPREPORTNO of the report sender and recipient, respectively, will show the report number. If several trades have been included into one report then all of them will have the same (CP)REPORTNO. 3. When the Firm 2 is ready to settle its obligations on trades that have already been included into the Firm 1 report (i.e. to accept the report) then the REPORT_* transaction should be sent. That report must include exactly the same set of trades as in the incoming report. In order to figure out that set of trades use the CPREPORTNO field of the table. 4. After two counter-reports are matched the STATUS fields in the and tables will change to M for the both parties. Settlement Report Withdrawal If the report sender decides to withdraw it then the WD_REPORT transaction should be used. After its execution the STATUS of the trade in the table will change back to U, REPORTNO and CPREPORTNO fields will be cleared and the STATUS in table will change to W. Firm 1 MICEX Firm 2 Identify unsettled trades STATUS = U STATUS = U Ready to settle REPORT_ * s Accepted s STATUS = O FIRMID = FIRM1 CPFIRMID = FIRM2 STATUS -> P REPORTNO gets value STATUS = O FIRMID = FIRM1 CPFIRMID = FIRM2 CPREPORTNO gets value Decision to withdraw a report WD_REPORT s Matched s STATUS -> W STATUS -> U REPORTNO -> empty STATUS -> W CPREPORTNO -> empty 9

Margin Call Settlement If REPO trade contains upper and/or lower discount values and in the beginning of the day the recalculated current discount value exceeds one of these values then the margin call is generated. Current discount value is determined as the ratio of the value of collaterals (at the last day s market price) to the value of obligation as per given day; on the day of the first leg execution obligation equals to the total value at the buy price, on the second leg execution day it equals to the total value at the buyback price. When the market price goes down so that the current discount value is lower than the lower discount value then the initial seller will have an obligation to transfer money to the counterparty. When the market price goes up so that the current discount value is higher than the upper discount value then the initial buyer will have an obligation to transfer securities to the counterparty. Entries on margin calls appear in the table with TYPE= D. These entries appear in the tables of the both trade parties, but the margin call settlement is the unilateral operation which does not require any actions from the receiving party. The receiving party will see OPERATIONTYPE= K and the party with obligations will see OPERATIONTYPE= D. The value of the STATUS field for the second REPO leg in the table will be equal to G for those trades that have unsettled margin calls. Margin calls are settled by sending any of the COMPLEX_REPORT_* transactions with the value of the BUYSELL field set to the same value as the BUYSELL field in the table. After the obligation is settled then the STATUS field of the margin call entry in the table will change from U to M and for the second REPO leg it will change from G back to U. Margin Call Cancellation If bilaterally agreed then a margin call may be cancelled. The cancellation workflow involves the following steps: 1. One party sends the CANCEL_TRADES transaction. 2. The STATUS field for this margin call in his table will change to N and the REPORTNO field will contain the unique ID of the cancellation report. The other party will get the cancellation report number in the CPREPORTNO field. 3. The other party needs to send the matching CANCEL_TRADES transaction. 4. When two cancellation reports are matched then the STATUS of the margin call entry in the tables of the both parties will change to W and the status of the corresponding second REPO leg will change from G back to U. 10

OTC REPO Trades with Central Bank The key specifics of the OTC REPO trades with Central Bank as compared to the ordinary market REPO is that their conclusion in the Trading System does not lead to any settlement obligations right after the trade conclusion event. After its conclusion in the Trading System the OTC REPO trade should be accepted by the both trade parties through the National Depositary System s Electronic Document Exchange mechanism. When this is done then both parties should explicitly confirm the trade in the Trading System using the CONFIRM_REPORT transaction. Right after the moment when two counter-reports are matched the settlement obligations will be generated and the OTC REPO trade will have to be settled like any other REPO trade. Trades that should be confirmed have the CONFIRMED= N value in the table. When a party sends the CONFIRM_REPORT transaction then the value of this field in his own table changes to Y and the CONFIRMREPORT field will have the unique ID of that confirmation report. The counterparty will get CPCONFIRMED= Y. When both CONFIRMED and CPCONFIRMED fields equal to Y then settlement reports can be sent. 11