syntax = "proto3"; package fincleartech.ibroker; option java_package = "io.fincleartech.protobuf.ibroker.collateral"; option java_multiple_files = true; import "google/protobuf/wrappers.proto"; import "fincleartech/ibroker/common.proto"; message ETOCollateralCreateRequest { // Correlation request identifier google.protobuf.StringValue request_id = 1; // The Participant identifies the Participant delivering/receiving units. google.protobuf.StringValue participant = 18; // The Account (HIN) is the Account (HIN) from which units are being delivered/received. google.protobuf.StringValue settlement_account = 19; // Identifies the security in which units are being transferred. google.protobuf.StringValue security_code = 14; // The Unit Quantity of the Security Code which is being transferred. fincleartech.ibroker.NumberValue units = 16; // Identifies the security in which units are being transferred. google.protobuf.StringValue participant_reference = 15; // Identifies that the security lodged as collateral for an ETO Cover (ETOC) Subposition Type is subject to a margin lender agreement, either: // // - 'true', where the security is subject to a margin lender agreement; or // - 'false', where the security is not subject to a margin lender agreement. google.protobuf.BoolValue margin_lender = 2; // Identifies the type of cover that is being requested on the Intra Position Movement Instruction, either: // // - 'true', when requesting to cover a single option position with the same underlying security being pledged; or // - 'false', when requesting to cover any option position and have the security being pledged pooled with all // other non-specific pledges (the appropriate haircut will be applied). google.protobuf.BoolValue specific_cover = 3; // Identifies the ASX Clear account of the client that is held by the the ETO Clearing Participant to enable // ASX Clear to correctly record the collateral against an open option position. google.protobuf.StringValue clearing_account = 4; // Identifier of the ASX Clear ETO Clearing Participant. google.protobuf.StringValue clearing_member = 5; } message ETOCollateralCreateResponse { fincleartech.ibroker.ResponseStatus status = 1; } message ETOCollateralRemoveRequest { // Correlation request identifier google.protobuf.StringValue request_id = 1; // The Participant identifies the Participant delivering/receiving units. google.protobuf.StringValue participant = 18; // The Account (HIN) is the Account (HIN) from which units are being delivered/received. google.protobuf.StringValue settlement_account = 19; // Identifies the security in which units are being transferred. google.protobuf.StringValue security_code = 14; // The Unit Quantity of the Security Code which is being transferred. fincleartech.ibroker.NumberValue units = 16; // Identifies the security in which units are being transferred. google.protobuf.StringValue participant_reference = 15; // Identifies the ASX Clear account of the client that is held by the the ETO Clearing Participant to enable // ASX Clear to correctly record the collateral against an open option position. google.protobuf.StringValue clearing_account = 4; // Identifier of the ASX Clear ETO Clearing Participant. google.protobuf.StringValue clearing_member = 5; } message ETOCollateralRemoveResponse { fincleartech.ibroker.ResponseStatus status = 1; } service IBrokerCollateralService { // Create ETO collateral rpc ETOCollateralCreate(ETOCollateralCreateRequest) returns (ETOCollateralCreateResponse); // Remove ETO collateral rpc ETOCollateralRemove(ETOCollateralRemoveRequest) returns (ETOCollateralRemoveResponse); }