diff --git a/.gitignore b/.gitignore index aaadf73..e11938d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,32 +1,32 @@ -# If you prefer the allow list template instead of the deny list, see community template: -# https://github.com/github/gitignore/blob/main/community/Golang/Go.AllowList.gitignore -# -# Binaries for programs and plugins -*.exe -*.exe~ -*.dll -*.so -*.dylib - -# Test binary, built with `go test -c` -*.test - -# Code coverage profiles and other test artifacts -*.out -coverage.* -*.coverprofile -profile.cov - -# Dependency directories (remove the comment below to include it) -# vendor/ - -# Go workspace file -go.work -go.work.sum - -# env file -.env - -# Editor/IDE -# .idea/ -# .vscode/ +# If you prefer the allow list template instead of the deny list, see community template: +# https://github.com/github/gitignore/blob/main/community/Golang/Go.AllowList.gitignore +# +# Binaries for programs and plugins +*.exe +*.exe~ +*.dll +*.so +*.dylib + +# Test binary, built with `go test -c` +*.test + +# Code coverage profiles and other test artifacts +*.out +coverage.* +*.coverprofile +profile.cov + +# Dependency directories (remove the comment below to include it) +# vendor/ + +# Go workspace file +go.work +go.work.sum + +# env file +.env + +# Editor/IDE +# .idea/ +# .vscode/ diff --git a/LICENSE b/LICENSE index 261eeb9..29f81d8 100644 --- a/LICENSE +++ b/LICENSE @@ -1,201 +1,201 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/README.md b/README.md index d1b1820..7c1d7db 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,2 @@ -# tcbs-api -Api for [TCBS](https://tcinvest.tcbs.com.vn/) trading +# tcbs-api +Api for [TCBS](https://tcinvest.tcbs.com.vn/) trading diff --git a/openapi.json b/openapi.json new file mode 100644 index 0000000..2eb5a15 --- /dev/null +++ b/openapi.json @@ -0,0 +1,7413 @@ +{ + "openapi": "3.1.0", + "info": { + "title": "iFlash Open API", + "description": "Chào mừng bạn đến với tài liệu kỹ thuật iFlash Open API. Nếu có bất kỳ câu hỏi nào, vui lòng liên hệ qua email.\n\nNgôn ngữ: \n", + "version": "1.0.0", + "contact": { + "email": "cskh@tcbs.com.vn", + "url": "https://developers.tcbs.com.vn" + }, + "x-logo": { + "url": "/image/logo.png", + "altText": "Tcbs logo" + } + }, + "servers": [ + { + "url": "https://openapi.tcbs.com.vn", + "description": "Production" + }, + { + "url": "https://openapisit.tcbs.com.vn", + "description": "SIT" + } + ], + "paths": { + "/gaia/v1/oauth2/openapi/token": { + "post": { + "security": [], + "operationId": "get_token", + "tags": [ + "authen" + ], + "summary": "2.1.1. Trao đổi API Key để lấy JWT Token", + "description": "", + "x-hideTryItPanel": false, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TokenRequestDto" + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TokenResponseDto" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TokenResponseErrorDto" + } + } + } + } + } + } + }, + "/akhlys/v1/accounts/{accountNo}/orders": { + "post": { + "operationId": "order", + "tags": [ + "order_stock_normal" + ], + "summary": "5.1.1. Đặt lệnh thường", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountNo", + "in": "path", + "description": "Số tiểu khoản", + "required": true, + "schema": { + "type": "string", + "example": "0001170730" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PlaceOrderExternalDto" + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PlaceOrderResponse" + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/akhlys/v1/accounts/{accountNo}/orders/{orderId}": { + "put": { + "operationId": "update_order_stock_normal", + "tags": [ + "update_order_stock_normal" + ], + "summary": "5.2.1. Sửa lệnh thường", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountNo", + "in": "path", + "description": "Số tiểu khoản", + "required": true, + "schema": { + "type": "string", + "example": "0001170730" + } + }, + { + "name": "orderId", + "in": "path", + "description": "orderId", + "required": true, + "schema": { + "type": "string", + "example": "9202205230000324355" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateOrderRequestDto" + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateOrderResponse" + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/akhlys/v1/accounts/{accountNo}/cancel-orders": { + "put": { + "operationId": "cancel_order", + "tags": [ + "cancel_order_stock_normal" + ], + "summary": "5.3.1. Huỷ lệnh thường", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountNo", + "in": "path", + "description": "Số tiểu khoản", + "required": true, + "schema": { + "type": "string", + "example": "0001170730" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CancelOrderRequestDto" + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CancelOrderResponse" + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/aion/v1/accounts/{accountNo}/orders": { + "get": { + "operationId": "get_order", + "tags": [ + "get_order_stock_normal" + ], + "summary": "5.4.1. Lấy sổ lệnh", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountNo", + "in": "path", + "description": "Số tiểu khoản", + "required": true, + "schema": { + "type": "string", + "example": "0001170730" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OrderSearchResponse" + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/aion/v1/accounts/{accountNo}/orders/{orderID}": { + "get": { + "operationId": "get_order_by_order_id", + "tags": [ + "get_order_stock_normal" + ], + "summary": "5.4.2. Lấy sổ lệnh theo Order ID", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountNo", + "in": "path", + "description": "Số tiểu khoản", + "required": true, + "schema": { + "type": "string", + "example": "0001170730" + } + }, + { + "name": "orderID", + "in": "path", + "description": "Order ID", + "required": true, + "schema": { + "type": "string", + "example": "9202110200000060280" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OrderSearchResponse" + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/aion/v1/accounts/{accountNo}/matching-details": { + "get": { + "operationId": "get_command_match_information", + "tags": [ + "get_order_stock_normal" + ], + "summary": "5.4.3. Lấy thông tin khớp lệnh", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountNo", + "in": "path", + "description": "Số tiểu khoản", + "required": true, + "schema": { + "type": "string", + "example": "0001170730" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CommandMatchInformationResponse" + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/ws/aither": { + "get": { + "operationId": "get_command_match_information_wss", + "tags": [ + "get_order_stock_normal" + ], + "summary": "5.4.4. Lấy thông tin khớp lệnh (realtime)", + "x-hideTryItPanel": false, + "security": [ + null + ], + "description": "File hướng dẫn kết nối: [Websocket_thay_doi_thong_tin_lenh_co_so_1.0.0.pdf](/file/Websocket_thay_doi_thong_tin_lenh_co_so_1.0.0.pdf)\n" + } + }, + "/aion/v1/accounts/{accountNo}/ppse": { + "get": { + "operationId": "get_purchasing_power", + "tags": [ + "purchasing_power_stock_normal" + ], + "summary": "5.5.1. Lấy sức mua", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountNo", + "in": "path", + "description": "Số tiểu khoản", + "required": true, + "schema": { + "type": "string", + "example": "0001170730" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Response" + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/aion/v1/accounts/{accountNo}/ppse/{symbol}": { + "get": { + "operationId": "get_purchasing_power_symbol", + "tags": [ + "purchasing_power_stock_normal" + ], + "summary": "5.5.2. Lấy sức mua theo mã", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountNo", + "in": "path", + "description": "Số tiểu khoản", + "required": true, + "schema": { + "type": "string", + "example": "0001170730" + } + }, + { + "name": "symbol", + "in": "path", + "description": "Mã chứng khoán", + "required": true, + "schema": { + "type": "string", + "example": "FPT" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Response" + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/aion/v1/accounts/{accountNo}/ppse/{symbol}/{price}": { + "get": { + "operationId": "get_purchasing_power_symbol_price", + "tags": [ + "purchasing_power_stock_normal" + ], + "summary": "5.5.3. Lấy sức mua theo mã, giá", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountNo", + "in": "path", + "description": "Số tiểu khoản", + "required": true, + "schema": { + "type": "string", + "example": "0001170730" + } + }, + { + "name": "symbol", + "in": "path", + "description": "Mã chứng khoán", + "required": true, + "schema": { + "type": "string", + "example": "FPT" + } + }, + { + "name": "price", + "in": "path", + "description": "Giá tính sức mua", + "required": true, + "schema": { + "type": "string", + "example": "52000" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Response" + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/aion/v1/customers/{custodyId}/accounts": { + "get": { + "operationId": "customer_quota_margin", + "tags": [ + "purchasing_power_stock_normal" + ], + "summary": "5.5.4. Hạn mức margin", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "custodyId", + "in": "path", + "description": "Số tài khoản", + "required": true, + "schema": { + "type": "string", + "example": "105C738764" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MarginQuotaResponse" + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/hydros/v1/account/{accountNo}/risk": { + "get": { + "operationId": "margin_account_infor", + "tags": [ + "purchasing_power_stock_normal" + ], + "summary": "5.5.5. Tổng nợ gốc, Tổng nợ lãi, Rtt thực tế, Tỷ lệ ký quỹ ban đầu, Tỷ lệ duy trì, Tỷ lệ cảnh báo", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountNo", + "in": "path", + "description": "Số tài khoản margin", + "required": true, + "schema": { + "type": "string", + "example": "0001G75216" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MarginAccountInforResponse" + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/campaign-management/v1/margin/subscription/{accountNo}/addons/detail": { + "get": { + "operationId": "supplementary_loan_package", + "tags": [ + "purchasing_power_stock_normal" + ], + "summary": "5.5.6. Gói vay bổ trợ", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountNo", + "in": "path", + "description": "Số tài khoản margin", + "required": true, + "schema": { + "type": "string", + "example": "0001G75216" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SupplementaryLoanPackageResponse" + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/khaos/v1/loan/{accountNo}": { + "get": { + "operationId": "loan_list", + "tags": [ + "purchasing_power_stock_normal" + ], + "summary": "5.5.7. Danh sách khoản vay", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountNo", + "in": "path", + "description": "Số tài khoản margin", + "required": true, + "schema": { + "type": "string", + "example": "0001G75216" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LoanResponse" + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/aion/v1/accounts/{accountNo}/se": { + "get": { + "operationId": "get_asset", + "tags": [ + "get_asset_stock_normal" + ], + "summary": "5.6.1. Tra cứu tài sản cổ phiếu theo tiểu khoản", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountNo", + "in": "path", + "description": "Số tiểu khoản", + "required": true, + "schema": { + "type": "string", + "example": "0001170730" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SeInfoDTO" + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/aion/v1/accounts/{accountNo}/cashInvestments": { + "get": { + "operationId": "get_cash_investment", + "tags": [ + "get_asset_stock_normal" + ], + "summary": "5.6.2. Lấy thông tin số dư tiền", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountNo", + "in": "path", + "description": "Số tiểu khoản", + "required": true, + "schema": { + "type": "string", + "example": "0001170730" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CashInvestmentResponse" + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/erebos/v2/digital/trans-hist-cashStatements": { + "get": { + "operationId": "trans_hist_cash_statements", + "tags": [ + "get_asset_stock_normal" + ], + "summary": "5.6.3. Thông tin sao kê tiền", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountNo", + "in": "path", + "description": "Số tiểu khoản", + "required": true, + "schema": { + "type": "string", + "example": "0001170730" + } + }, + { + "name": "fromDate", + "in": "path", + "description": "Từ ngày giao dịch", + "required": true, + "schema": { + "type": "string", + "example": "2025-01-01" + } + }, + { + "name": "toDate", + "in": "path", + "description": "đến ngày giao dịch", + "required": true, + "schema": { + "type": "string", + "example": "2025-01-15" + } + }, + { + "name": "pageSize", + "in": "path", + "description": "Page size", + "required": true, + "schema": { + "type": "string", + "example": "25" + } + }, + { + "name": "pageIndex", + "in": "path", + "description": "Page no", + "required": true, + "schema": { + "type": "string", + "example": "1" + } + }, + { + "name": "transactionCode", + "in": "path", + "description": "Loại giao dịch", + "required": true, + "schema": { + "type": "string", + "example": "1153" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TransHistCashStatementsResponse" + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/erebos/v2/digital/margin-info": { + "get": { + "operationId": "margin_info", + "tags": [ + "get_asset_stock_normal" + ], + "summary": "5.6.4. Tra cứu nợ", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "acctno", + "in": "path", + "description": "Số tiểu khoản", + "required": true, + "schema": { + "type": "string", + "example": "0001170730" + } + }, + { + "name": "fromdate", + "in": "path", + "description": "Từ ngày", + "required": true, + "schema": { + "type": "string", + "example": "2025-01-01" + } + }, + { + "name": "toDate", + "in": "path", + "description": "đến ngày", + "required": true, + "schema": { + "type": "string", + "example": "2025-01-15" + } + }, + { + "name": "page", + "in": "path", + "description": "Page No", + "required": true, + "schema": { + "type": "string", + "example": "1" + } + }, + { + "name": "size", + "in": "path", + "description": "Page size", + "required": true, + "schema": { + "type": "string", + "example": "25" + } + }, + { + "name": "custodycd", + "in": "path", + "description": "Số tài khoản", + "required": true, + "schema": { + "type": "string", + "example": "105C209414" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MarginInfoResponse" + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/eros/v2/get-profile/by-username/{custodyCode}": { + "get": { + "operationId": "get_sub_account_information", + "tags": [ + "account" + ], + "summary": "3.1.1. Lấy thông tin tiểu khoản", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "custodyCode", + "in": "path", + "description": "Số tài khoản", + "required": true, + "schema": { + "type": "string", + "example": "105C334455" + } + }, + { + "name": "fields", + "in": "query", + "description": "Danh sách thông tin cần lấy", + "required": true, + "schema": { + "type": "string", + "example": "basicInfo,personalInfo,bankSubAccounts,bankAccounts" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccountInformationResponse" + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/khronos/v1/account/status": { + "get": { + "operationId": "total_cash_derivative", + "tags": [ + "total_cash_derivative" + ], + "summary": "6.1.1. Tổng quan tiền, ký quỹ của phái sinh", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "số tài khoản lưu kí", + "required": true, + "schema": { + "type": "string", + "example": "105C031402" + } + }, + { + "name": "subAccountId", + "in": "query", + "description": "Tiểu khoản phái sinh", + "required": true, + "schema": { + "type": "string", + "example": "105C031402A" + } + }, + { + "name": "getType", + "in": "query", + "description": "- `0`: Lấy toàn bộ\n- `1`: Chỉ lấy tiền\n", + "required": true, + "schema": { + "type": "string", + "example": "1" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "cmd": { + "type": "string", + "example": "Web.Portfolio.AccountStatus", + "description": "Loại bút toán" + }, + "rc": { + "type": "string", + "example": "1", + "description": "1: success, < 0: error" + }, + "rs": { + "type": "string", + "example": null, + "description": "Chi tiết lỗi" + }, + "oID": { + "type": "string", + "example": "" + }, + "data": { + "$ref": "#/components/schemas/TotalCashDerivativeResponse" + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/khronos/v1/account/portfolio/position/close": { + "get": { + "operationId": "asset_position_close_derivative", + "tags": [ + "asset_derivative" + ], + "summary": "6.2.1. Tài sản, vị thế đóng", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "số tài khoản lưu kí", + "required": true, + "schema": { + "type": "string", + "example": "105C031402" + } + }, + { + "name": "subAccountId", + "in": "query", + "description": "Tiểu khoản phái sinh", + "required": true, + "schema": { + "type": "string", + "example": "105C031402A" + } + }, + { + "name": "symbol", + "in": "query", + "description": "Mã chứng khoán", + "required": false, + "schema": { + "type": "string", + "example": "" + } + }, + { + "name": "pageNo", + "in": "query", + "description": "Số trang", + "required": true, + "schema": { + "type": "number", + "example": "1" + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Số dòng", + "required": true, + "schema": { + "type": "number", + "example": 20 + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "cmd": { + "type": "string", + "example": "Web.Portfolio.PositionClose", + "description": "Loại bút toán" + }, + "rc": { + "type": "string", + "example": "1", + "description": "1: success, < 0: error" + }, + "rs": { + "type": "string", + "example": null, + "description": null + }, + "oID": { + "type": "string", + "example": "Chi tiết lỗi" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AssetPositionCloseDerivativeResponse" + }, + "example": [ + { + "symbol": "TOTAL", + "side": "", + "openPrice": 0, + "closePrice": 0, + "closePosition": 0, + "fee": 11400, + "tax": 15275, + "closeVM": 500000, + "unrealize": 500000, + "closePC": 0, + "time": "" + }, + { + "symbol": "VN30F2103", + "side": "B", + "openPrice": 1175, + "closePrice": 0, + "closePosition": "0/1", + "fee": 5700, + "tax": 7637.5, + "closeVM": 0, + "unrealize": 500000, + "closePC": 0, + "time": "" + }, + { + "symbol": "VN30F2103", + "side": "S", + "openPrice": 1180, + "closePrice": 1175, + "closePosition": "1/1", + "fee": 5700, + "tax": 7637.5, + "closeVM": 500000, + "unrealize": 0, + "closePC": 3.26, + "time": "11:56:24" + } + ] + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/khronos/v1/account/portfolio/status": { + "get": { + "operationId": "asset_position_open_derivative", + "tags": [ + "asset_derivative" + ], + "summary": "6.2.2. Tài sản, vị thế mở", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "số tài khoản lưu kí", + "required": true, + "schema": { + "type": "string", + "example": "105C031402" + } + }, + { + "name": "subAccountId", + "in": "query", + "description": "Tiểu khoản phái sinh", + "required": true, + "schema": { + "type": "string", + "example": "105C031402A" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "cmd": { + "type": "string", + "example": "Web.Portfolio.PortfolioStatus2", + "description": "Loại bút toán" + }, + "rc": { + "type": "string", + "example": "1" + }, + "rs": { + "type": "string", + "example": null + }, + "oID": { + "type": "string", + "example": "" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AssetPositionOpenDerivativeResponse" + }, + "example": [ + { + "symbol": "VN30F2303", + "im": "13%", + "deliver": "4", + "receive": "11", + "net": 7, + "side": "L", + "account": "000111A", + "wasp": 1120, + "wapb": 1159.2, + "lastPrice": 1198.4, + "imValue": 109054400, + "vmValue": 70560000, + "mrValue": 109054400, + "duedate": "29/06/2021", + "netoffvol": 7, + "avg_remain": 1120, + "vm_remain": 54880000, + "pc_remain": "53.85", + "stoploss": "", + "takeprofit": "" + } + ] + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/khronos/v1/order/in-day": { + "get": { + "operationId": "list_order_normal_derivative", + "tags": [ + "get_order_derivative" + ], + "summary": "6.3.1. Tra cứu sổ lệnh thường", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "pageNo", + "in": "query", + "description": "Trang số", + "required": true, + "schema": { + "type": "number", + "example": "1" + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Số phần tử trong trang", + "required": true, + "schema": { + "type": "number", + "example": "20" + } + }, + { + "name": "accountId", + "in": "query", + "description": "số tài khoản lưu kí", + "required": true, + "schema": { + "type": "string", + "example": "105C031402" + } + }, + { + "name": "symbol", + "in": "query", + "description": "filter theo mã hợp đồng và theo vị thế:\n- `ALL,ALL`: Lọc ALL\n- `VN30F2303,B`: Lọc theo mã\n- `ALL,B`: Lọc theo L/S\n", + "required": true, + "schema": { + "type": "string", + "example": "ALL,ALL" + } + }, + { + "name": "refId", + "in": "query", + "description": "Ref id của lệnh", + "required": false, + "schema": { + "type": "string", + "example": "H.7387641765855363489" + } + }, + { + "name": "orderType", + "in": "query", + "description": "filter theo Loại lệnh:\n- ``: Tất cả\n- `3`: Arbitrage\n- `4`: SL/TP\n- `5`: ForceClose\n- `6`: Thường\n", + "required": true, + "schema": { + "type": "string", + "example": "" + } + }, + { + "name": "status", + "in": "query", + "description": "filter theo trạng thái:\n- `0`: Tất cả\n- `1`: Chờ khớp\n- `2`: Đã khớp\n", + "required": true, + "schema": { + "type": "string", + "example": "0" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "cmd": { + "type": "string", + "example": "Web.Order.IndayOrder", + "description": "Loại bút toán" + }, + "rc": { + "type": "string", + "example": "1", + "description": "1: success, < 0: error" + }, + "rs": { + "type": "string", + "example": null, + "description": "Chi tiết lỗi" + }, + "oID": { + "type": "string", + "example": "" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ListOrderNormalDerivativeResponse" + }, + "example": [ + { + "orderNo": "37", + "pk_orderNo": "7625908", + "refId": "H.7387641765855363489", + "orderTime": "13:34:47", + "accountCode": "000112A", + "side": "S", + "symbol": "VN30F2303", + "volume": "1", + "showPrice": "MTL (1198)", + "matchVolume": "1", + "status": "PM", + "orderStatus": "4", + "channel": "I", + "group": "FU", + "cancelTime": "", + "isCancel": "0", + "isAmend": "0", + "info": "", + "maxPrice": "0", + "matchValue": "119800", + "quote": "Y", + "autoType": "", + "product": "", + "orderType": "N", + "source": "SYS" + } + ] + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/khronos/v1/order/condition/detail": { + "get": { + "operationId": "list_order_condition_derivative", + "tags": [ + "get_order_derivative" + ], + "summary": "6.3.2. Tra cứu sổ lệnh điều kiện", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "pageNo", + "in": "query", + "description": "Trang số", + "required": true, + "schema": { + "type": "string", + "example": "1" + } + }, + { + "name": "PageSize", + "in": "query", + "description": "Số phần tử trong trang", + "required": true, + "schema": { + "type": "string", + "example": "25" + } + }, + { + "name": "accountId", + "in": "query", + "description": "số tài khoản lưu kí", + "required": true, + "schema": { + "type": "string", + "example": "105C031402" + } + }, + { + "name": "subAccountID", + "in": "query", + "description": "Số tài khoản phái sinh", + "required": true, + "schema": { + "type": "string", + "example": "105C031402A" + } + }, + { + "name": "orderStatus", + "in": "query", + "description": "filter theo trạng thái:\n- `0`: Tất cả\n- `1`: Chờ kích hoạt\n- `2`: Đã kích hoạt\n- `3`: Từ chối\n", + "required": true, + "schema": { + "type": "string", + "example": "0" + } + }, + { + "name": "orderType", + "in": "query", + "description": "filter theo loại lệnh:\n- ``: Tất cả\n- `3`: Arbitrage\n- `4`: SL/TP\n- `5`: stopOrder\n", + "required": true, + "schema": { + "type": "string", + "example": "ALL,ALL" + } + }, + { + "name": "Symbol", + "in": "query", + "description": "filter theo mã HĐTL và theo vị thế:\n- `ALL,ALL`: Lọc ALL\n- `VN30F2303,B`: Lọc theo mã\n- `ALL,B`: Lọc theo L/S\n", + "required": true, + "schema": { + "type": "string", + "example": "" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "cmd": { + "type": "string", + "example": "Web.Order.ConditionOrder", + "description": "Loại bút toán" + }, + "rc": { + "type": "string", + "example": "1", + "description": "1: success, < 0: error" + }, + "rs": { + "type": "string", + "example": null, + "description": "Chi tiết lỗi" + }, + "oID": { + "type": "string", + "example": "" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ListOrderConditionDerivativeResponse" + }, + "example": [ + { + "orderNo": "1", + "groupOrder": "463502", + "pk_orderNo": "463504", + "accountCode": "000112A", + "side": "B", + "symbol": "VN30F2303", + "showPrice": "1190.5", + "volume": "2", + "condition": "", + "result": "0", + "active_time": "", + "send_time": "14:01:01", + "cancel_time": "", + "group": "FU", + "channel": "I", + "maxPrice": "", + "soPrice": "1190.5", + "orderType": "SL", + "from_time": "29/04/2021", + "exp_time": "29/04/2021", + "status": "0", + "details": "", + "notes": "SL/TP" + } + ] + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/ws/nesoi": { + "get": { + "operationId": "get_command_match_information_derivative_wss", + "tags": [ + "get_order_derivative" + ], + "summary": "6.3.3. Lấy thông tin khớp lệnh (realtime)", + "x-hideTryItPanel": false, + "security": [ + null + ], + "description": "File hướng dẫn kết nối: [Websocket_thay_doi_thong_tin_lenh_phai_sinh_1.0.0.pdf](/file/Websocket_thay_doi_thong_tin_lenh_phai_sinh_1.0.0.pdf)\n" + } + }, + "/khronos/v1/order/place": { + "post": { + "operationId": "order_normal_derivative", + "tags": [ + "order_derivative" + ], + "summary": "6.4.1. Đặt lệnh thường", + "x-hideTryItPanel": false, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OrderNormalDerivativeRequestDTO" + } + } + } + }, + "description": "", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "cmd": { + "type": "string", + "example": "Web.newOrder", + "description": "Loại bút toán" + }, + "rc": { + "type": "string", + "example": "1", + "description": "1: success, < 0: error" + }, + "rs": { + "type": "string", + "example": null, + "description": "Chi tiết lỗi" + }, + "oID": { + "type": "string", + "example": "" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/OrderNormalDerivativeResponse" + }, + "example": [ + { + "symbol": "VN30F2104", + "shareStatus": "", + "status": "P", + "msg_type": "1I", + "showPrice": "1198.7", + "orderTime": "15:52:48", + "type": "I", + "accountCode": "170929A", + "orderNo": "17", + "market": "", + "matchVolume": "0", + "side": "B", + "volume": "1", + "pk_orderNo": "7625320", + "channel": "I", + "refID": "17", + "group": "FU", + "accType": "C", + "quote": "G", + "autoType": "" + } + ] + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/khronos/v1/order/condition/place": { + "post": { + "operationId": "order_condition_derivative", + "tags": [ + "order_derivative" + ], + "summary": "6.4.2. Đặt lệnh điều kiện", + "x-hideTryItPanel": false, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OrderConditionDerivativeRequestDTO" + } + } + } + }, + "description": "", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "cmd": { + "type": "string", + "example": "Web.newOrder", + "description": "Loại bút toán" + }, + "rc": { + "type": "string", + "example": "1", + "description": "1: success, < 0: error" + }, + "rs": { + "type": "string", + "example": null, + "description": "Chi tiết lỗi" + }, + "oID": { + "type": "string", + "example": "" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/OrderConditionDerivativeResponseDTO" + }, + "example": [ + { + "symbol": "VN30F2110", + "shareStatus": "", + "status": "P", + "msg_type": "1I", + "showPrice": "1504.4", + "orderTime": "20:16:57", + "type": "I", + "accountCode": "100159A", + "orderNo": 1, + "market": "", + "matchVolume": 0, + "side": "B", + "volume": "1", + "pk_orderNo": "7843961", + "channel": "D", + "refID": "1", + "group": "FU", + "accType": "C", + "quote": "G", + "autoType": "", + "product": "" + } + ] + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/khronos/v1/order/change": { + "post": { + "operationId": "edit_order_normal_derivative", + "tags": [ + "edit_order_derivative" + ], + "summary": "6.5.1. Sửa lệnh thường", + "x-hideTryItPanel": false, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EditOrderNormalDerivativeRequestDTO" + } + } + } + }, + "description": "", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "cmd": { + "type": "string", + "example": "Web.changeOrder", + "description": "Loại bút toán" + }, + "rc": { + "type": "string", + "example": "1", + "description": "1: success, < 0: error" + }, + "rs": { + "type": "string", + "example": null, + "description": "Chi tiết lỗi" + }, + "oID": { + "type": "string", + "example": "" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EditOrderNormalDerivativeResponseDTO" + }, + "example": [ + { + "orderNo": 9, + "msg_type": "1P", + "status": "PC", + "showPrice": "1290.0", + "volume": "4", + "pk_orderNo": 20029858 + } + ] + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/khronos/v2/order/condition/change": { + "post": { + "operationId": "edit_order_condition_derivative", + "tags": [ + "edit_order_derivative" + ], + "summary": "6.5.2. Sửa lệnh điều kiện", + "x-hideTryItPanel": false, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EditOrderConditionDerivativeRequestDTO" + } + } + } + }, + "description": "", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "cmd": { + "type": "string", + "example": "Web.Order.ChangeConditionOrder", + "description": "Loại bút toán" + }, + "rc": { + "type": "string", + "example": "1", + "description": "1: success, < 0: error" + }, + "rs": { + "type": "string", + "example": null, + "description": "Chi tiết lỗi" + }, + "oID": { + "type": "string", + "example": "" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EditOrderConditionDerivativeResponseDTO" + }, + "example": [ + { + "showPrice": "1453.9", + "price": "1362.2", + "volume": "1", + "pkOrderNo": "901943", + "notes": "Stop order" + } + ] + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/khronos/v1/order/cancel": { + "post": { + "operationId": "cancel_order_normal_derivative", + "tags": [ + "cancel_order_derivative" + ], + "summary": "6.6.1. Huỷ lệnh thường", + "x-hideTryItPanel": false, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CancelOrderNormalDerivativeRequestDTO" + } + } + } + }, + "description": "", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "cmd": { + "type": "string", + "example": "Web.changeOrder", + "description": "Loại bút toán" + }, + "rc": { + "type": "string", + "example": "1", + "description": "1: success, < 0: error" + }, + "rs": { + "type": "string", + "example": null, + "description": "Chi tiết lỗi" + }, + "oID": { + "type": "string", + "example": "" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CancelOrderNormalDerivativeResponseDTO" + }, + "example": [ + { + "orderNo": 1, + "msg_type": "1C", + "status": "PW", + "pk_orderNo": 7625368, + "cancelTime": "16:20:15" + } + ] + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/khronos/v1/order/condition/cancel": { + "post": { + "operationId": "cancel_order_condition_derivative", + "tags": [ + "cancel_order_derivative" + ], + "summary": "6.6.2. Huỷ lệnh điều kiện", + "x-hideTryItPanel": false, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CancelOrderConditionDerivativeRequestDTO" + } + } + } + }, + "description": "", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "cmd": { + "type": "string", + "example": "Web.cancelActivatedOrder", + "description": "Loại bút toán" + }, + "rc": { + "type": "string", + "example": "1", + "description": "1: success, < 0: error" + }, + "rs": { + "type": "string", + "example": null, + "description": "Chi tiết lỗi" + }, + "oID": { + "type": "string", + "example": "" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CancelOrderConditionDerivativeResponseDTO" + }, + "example": [] + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/physis/v1/stock/transfer": { + "post": { + "operationId": "transfer_between_subaccount", + "tags": [ + "money" + ], + "summary": "4.1.1. Chuyển tiền nội bộ", + "x-hideTryItPanel": false, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TransferBetweenSubaccountRequestDTO" + } + } + } + }, + "description": "", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string", + "example": "200", + "description": "Code trả về, 200 là thành công, khác 200 là lỗi" + }, + "message": { + "type": "string", + "example": "OK", + "description": "Nội dung trả về" + } + }, + "example": { + "code": "200", + "message": "OK" + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/khronos/v1/cash/withdraw/update": { + "post": { + "operationId": "withdrawal_derivative", + "tags": [ + "money" + ], + "summary": "4.2.1. Rút ký quỹ", + "x-hideTryItPanel": false, + "description": "", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WithdrawalDerivativeRequestDTO" + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "cmd": { + "type": "string", + "example": "", + "description": "Loại bút toán" + }, + "rc": { + "type": "string", + "example": "1", + "description": "1: success, < 0: error" + }, + "rs": { + "type": "string", + "example": null, + "description": "Chi tiết lỗi" + }, + "oID": { + "type": "string", + "example": "" + }, + "data": { + "type": "array", + "example": null + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/khronos/v1/cash/deposit/update": { + "post": { + "operationId": "deposit_derivative", + "tags": [ + "money" + ], + "summary": "4.2.2. Nộp ký quỹ", + "x-hideTryItPanel": false, + "description": "", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DepositDerivativeRequestDTO" + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "cmd": { + "type": "string", + "example": "", + "description": "Loại bút toán" + }, + "rc": { + "type": "string", + "example": "1", + "description": "1: success, < 0: error" + }, + "rs": { + "type": "string", + "example": null, + "description": "Chi tiết lỗi" + }, + "oID": { + "type": "string", + "example": "" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DepositDerivativeResponseDTO" + }, + "example": { + "transactionId": "CA330E033D3BD113E053EE02070AED89" + } + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/tartarus/v1/derivatives": { + "get": { + "operationId": "get_order", + "tags": [ + "market_information_derivative" + ], + "summary": "6.7.1. Thông tin mã, giá", + "x-hideTryItPanel": false, + "description": "", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MarketInformationDerivativeResponseDTO", + "example": { + "symbol": "VN30F2412", + "ceilPrice": 1614.6, + "floorPrice": 1403.4, + "refPrice": 1509, + "bidPrice01": 1499.5, + "bidPrice02": 1499.3, + "bidPrice03": 1499.2, + "bidQtty01": 1, + "bidQtty02": 3, + "bidQtty03": 1, + "offerPrice01": 1500.5, + "offerPrice02": 1500.7, + "offerPrice03": 1500.8, + "offerQtty01": 1, + "offerQtty02": 1, + "offerQtty03": 1, + "matchPrice": 1500.6, + "matchQtty": 1, + "change": -8.4, + "changePercent": -0.5566600397614314, + "open": 1508, + "high": 1509.4, + "low": 1497, + "totalVol": 370, + "openVol": 897, + "buyForeignQtty": 30, + "sellForeignQtty": 58, + "expiryDate": "18/11/2021", + "avg": 150417189.189189 + } + } + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/tartarus/v1/tickerCommons": { + "get": { + "operationId": "get_order", + "tags": [ + "market_information_stock_normal" + ], + "summary": "5.7.1. Thông tin mã, giá", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "tickers", + "in": "query", + "description": "Danh sách mã cổ phiếu (Không dùng kết hợp với query param index)", + "required": false, + "schema": { + "type": "string", + "example": "FPT,MWG,VNM" + } + }, + { + "name": "index", + "in": "query", + "description": "Rổ chứng khoán: \n- `1`: Hose\n- `2`: VN30\n- `3`: HNX\n- `4`. HNX30\n- `5`: Upcom\n- `10`:Midcap\n- `11`:Vn100\n- `12`:Vnallshare\n- `13`:VNsmallcap\n- `14`:VNxallshare\n- `15`:Vn50\n- `16`:Vnsi\n", + "required": false, + "schema": { + "type": "number", + "example": 1 + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MarketInformationStockNormalResponseDTO", + "example": { + "symbol": "FPT", + "ceilPrice": 106100, + "floorPrice": 92300, + "refPrice": 99200, + "bidPrice01": 98700, + "bidPrice02": 98600, + "bidPrice03": 98500, + "bidQtty01": 11300, + "bidQtty02": 56800, + "bidQtty03": 45600, + "offerPrice01": 98800, + "offerPrice02": 98900, + "offerPrice03": 99000, + "offerQtty01": 100, + "offerQtty02": 23200, + "offerQtty03": 56100, + "matchPrice": 98800, + "matchQtty": 100, + "change": -400, + "changePercent": -0.4032258064516129, + "open": 99200, + "avg": 98800, + "high": 99200, + "low": 98500, + "totalVol": 833900, + "totalVal": 82409370000, + "buyForeignQtty": 647300, + "sellForeignQtty": 648500, + "room": 84, + "indexNumber": 1 + } + } + }, + "tradingDate": { + "type": "string", + "example": "29/10/2024" + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/ws/thesis/v1/stream/normal": { + "get": { + "operationId": "websocket_stock_price_normal", + "tags": [ + "market_information_stock_normal" + ], + "summary": "5.7.2. Bảng giá cơ sở", + "x-hideTryItPanel": false, + "security": [ + null + ], + "description": "File hướng dẫn kết nối: [Websocket_bang_gia_1.0.0.pdf](/file/Websocket_bang_gia_1.0.0.pdf)\n" + } + }, + "/tartarus/v1/tickerSnaps": { + "get": { + "operationId": "information_foreign_index", + "tags": [ + "market_information_stock_normal" + ], + "summary": "5.7.3. Thông tin room nước ngoài", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "index", + "in": "query", + "description": "Rổ chứng khoán: \n- `1`: Hose\n- `2`: VN30\n- `3`: HNX\n- `4`. HNX30\n- `5`: Upcom\n- `10`:Midcap\n- `11`:Vn100\n- `12`:Vnallshare\n- `13`:VNsmallcap\n- `14`:VNxallshare\n- `15`:Vn50\n- `16`:Vnsi\n", + "required": false, + "schema": { + "type": "number", + "example": 1 + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MarketInformationForeignIndexResponseDTO", + "example": { + "symbol": "CRE", + "ceilPrice": "30850", + "floorPrice": "26850", + "refPrice": "28850", + "bidPrice01": "28750", + "bidPrice02": "28700", + "bidPrice03": "28650", + "bidQtty01": "8700", + "bidQtty02": "16200", + "bidQtty03": "17500", + "offerPrice01": "28800", + "offerPrice02": "28850", + "offerPrice03": "28900", + "offerQtty01": "2200", + "offerQtty02": "8600", + "offerQtty03": "8900", + "matchPrice": "28800", + "matchQtty": "400", + "change": -50, + "changePercent": -0.17331, + "avg": 28850, + "high": "29100", + "low": "28700", + "totalValue": "17916500000", + "totalVolume": "620700", + "buyForeignQtty": "3400", + "sellForeignQtty": "40500", + "room": "44386227", + "open": "28900" + } + } + }, + "tradingDate": { + "type": "string", + "example": "07/08/2025" + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/tartarus/v1/putThroughSnaps": { + "get": { + "operationId": "information_put_through_snaps", + "tags": [ + "market_information_stock_normal" + ], + "summary": "5.7.4. Thông tin thỏa thuận", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "floor", + "in": "query", + "description": "Rổ chứng khoán: \n- `1`: Hose\n- `2`: HNX\n- `3`: Upcom\n", + "required": false, + "schema": { + "type": "number", + "example": 1 + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "buyAdv": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PTAdvertisementResponseDTO", + "example": { + "symbol": "DHT", + "price": 24300, + "vol": 50, + "time": "20231220-02:16:13.588", + "status": 1, + "color": 3, + "orderId": "DHT00000000000036", + "side": "B" + } + } + }, + "sellAdv": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PTAdvertisementResponseDTO", + "example": { + "symbol": "TCB", + "price": 24300, + "vol": 50, + "time": "20231220-02:16:13.588", + "status": 1, + "color": 3, + "orderId": "TCB00000000000036", + "side": "S" + } + } + }, + "match": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PTMatchResponseDTO", + "example": { + "symbol": "TCB", + "price": 23455.5, + "vol": 5000, + "val": 117275000, + "time": "20:00:03", + "accumulatedValue": 254440000 + } + } + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/nyx/v1/intraday/{ticker}/his/paging": { + "get": { + "operationId": "price_matching_history", + "tags": [ + "market_information_stock_normal" + ], + "summary": "5.7.5. Lịch sử giá khớp", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "ticker", + "in": "path", + "description": "Mã cổ phiếu", + "required": true, + "schema": { + "type": "string", + "example": "TCB" + } + }, + { + "name": "page", + "in": "query", + "description": "Số trang", + "required": false, + "schema": { + "type": "number", + "min": 0, + "example": "0" + } + }, + { + "name": "size", + "in": "query", + "description": "Số dòng", + "required": false, + "schema": { + "type": "number", + "min": 1, + "max": 100, + "example": 20 + } + }, + { + "name": "headIndex", + "in": "query", + "description": "Chỉ số đầu để phân trang ngược", + "required": false, + "schema": { + "type": "number", + "example": -1, + "default": -1 + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "page": { + "type": "number", + "example": 0 + }, + "size": { + "type": "number", + "example": 20 + }, + "headIndex": { + "type": "number", + "example": 3974 + }, + "numberOfItems": { + "type": "number", + "example": 10 + }, + "total": { + "type": "number", + "example": 3975 + }, + "ticker": { + "type": "string", + "example": "TCB", + "description": "Mã cổ phiếu" + }, + "d": { + "type": "string", + "example": "05/08", + "description": "Ngày" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PriceMatchingHistoryResponse" + }, + "example": [ + { + "p": 33850, + "v": 100, + "cp": -650, + "rcp": 0, + "a": "", + "ba": 6034800, + "sa": 10320100, + "hl": false, + "pcp": 0, + "t": "14:45:00" + }, + { + "p": 33850, + "v": 10000, + "cp": -650, + "rcp": 0, + "a": "", + "ba": 6034800, + "sa": 10320100, + "hl": false, + "pcp": 0, + "t": "14:45:00" + } + ] + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/nyx/v1/intraday/{ticker}/bsa-ext": { + "get": { + "operationId": "bsa_ext", + "tags": [ + "market_information_stock_normal" + ], + "summary": "5.7.6. Cung cầu theo ngày (15m)", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "ticker", + "in": "path", + "description": "Mã cổ phiếu", + "required": true, + "schema": { + "type": "string", + "example": "TCB" + } + }, + { + "name": "timeWindow", + "in": "query", + "description": "Khung thời gian tính bằng phút:\n- 15\n- 60\n", + "required": true, + "schema": { + "type": "string", + "example": "15" + } + }, + { + "name": "tWindow", + "in": "query", + "description": "Khung thời gian tính bằng phút:\n- 15\n", + "required": true, + "schema": { + "type": "string", + "example": "15" + } + }, + { + "name": "type", + "in": "query", + "description": "Loại nhà đầu tư:\n- sheep (Nhà đầu tư cá nhân nhỏ lẻ)\n- wolf (Nhà đầu tư tổ chức vừa)\n- shark (Nhà đầu tư lớn/tổ chức lớn)\n- all (Tất cả loại nhà đầu tư)\n", + "required": false, + "schema": { + "type": "string", + "example": "all", + "default": "all" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "ticker": { + "type": "string", + "example": "TCB", + "description": "Mã cổ phiếu" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SupplyAndDemand15mResponse" + }, + "example": [ + { + "bu": 1000000, + "bms": 5000000, + "bup": 0.65, + "sd": 800000, + "sms": 3000000, + "sdp": 0.35, + "bsr": 1.25, + "t": "09:15:00", + "s": 1640995200000 + } + ] + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/nyx/v1/intraday/{ticker}/bsa": { + "get": { + "operationId": "bsa", + "tags": [ + "market_information_stock_normal" + ], + "summary": "5.7.7. Cung cầu theo ngày", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "ticker", + "in": "path", + "description": "Mã cổ phiếu", + "required": true, + "schema": { + "type": "string", + "example": "TCB" + } + }, + { + "name": "type", + "in": "query", + "description": "Loại nhà đầu tư:\n- sheep (Nhà đầu tư cá nhân nhỏ lẻ)\n- wolf (Nhà đầu tư tổ chức vừa)\n- shark (Nhà đầu tư lớn/tổ chức lớn)\n- all (Tất cả loại nhà đầu tư)\n", + "required": false, + "schema": { + "type": "string", + "example": "all", + "default": "all" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "ticker": { + "type": "string", + "example": "TCB", + "description": "Mã cổ phiếu" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SupplyAndDemandResponse" + }, + "example": [ + { + "bup": 0.65, + "sdp": 0.35, + "bsr": 1.25, + "t": "09:15" + } + ] + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/nyx/v1/intraday/{ticker}/bsa-month": { + "get": { + "operationId": "bsa_month", + "tags": [ + "market_information_stock_normal" + ], + "summary": "5.7.8. Cung cầu theo tháng", + "x-hideTryItPanel": false, + "description": "", + "parameters": [ + { + "name": "ticker", + "in": "path", + "description": "Mã cổ phiếu", + "required": true, + "schema": { + "type": "string", + "example": "TCB" + } + }, + { + "name": "timeWindow", + "in": "query", + "description": "Khung thời gian:\n- 1M\n" + }, + { + "name": "type", + "in": "query", + "description": "Loại nhà đầu tư:\n- sheep (Nhà đầu tư cá nhân nhỏ lẻ)\n- wolf (Nhà đầu tư tổ chức vừa)\n- shark (Nhà đầu tư lớn/tổ chức lớn)\n- all (Tất cả loại nhà đầu tư)\n", + "required": false, + "schema": { + "type": "string", + "example": "all", + "default": "all" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "ticker": { + "type": "string", + "example": "TCB", + "description": "Mã cổ phiếu" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SupplyAndDemandResponse" + }, + "example": [ + { + "bup": 0.65, + "sdp": 0.35, + "bsr": 1.25, + "t": "07/05" + } + ] + } + } + } + } + } + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + } + } + } + }, + "/ws/ouranos/v1/stream": { + "get": { + "operationId": "get_wscenter", + "tags": [ + "market_information_stock_normal" + ], + "summary": "5.7.9. Lấy thông tin lịch sử giá khớp, cung cầu (realtime)", + "x-hideTryItPanel": false, + "security": [ + null + ], + "description": "File hướng dẫn kết nối: [Websocket_lich-su-gia_cung-cau_1.0.0.pdf](/file/Websocket_lich-su-gia_cung-cau_1.0.0.pdf)\n" + } + }, + "/ws/thesis/v1/stream/derivative": { + "get": { + "operationId": "websocket_stock_price_derivative", + "tags": [ + "market_information_derivative" + ], + "summary": "6.7.2. Bảng giá phái sinh", + "x-hideTryItPanel": false, + "security": [ + null + ], + "description": "File hướng dẫn kết nối: [Websocket_bang_gia_1.0.0.pdf](/file/Websocket_bang_gia_1.0.0.pdf)\n" + } + } + }, + "components": { + "schemas": { + "TokenRequestDto": { + "type": "object", + "required": [ + "otp", + "apiKey" + ], + "properties": { + "otp": { + "type": "string", + "example": "111111", + "description": "Mã OTP" + }, + "apiKey": { + "type": "string", + "example": "310ebe1b-07a7-463a-860d-773dcaa31591", + "description": "API Key được gen trên tcinvest" + } + }, + "title": "TokenRequestDto" + }, + "TokenResponseDto": { + "type": "object", + "properties": { + "token": { + "type": "string", + "example": "eyJ4NXQiOiJaaWpkaFpqVmlNamMwWmdfUlMyNTYiLCJhbGciOiJSUzI1NiJ9", + "description": "Token sau khi trao đồi từ API Key" + } + }, + "title": "TokenResponseDto" + }, + "TokenResponseErrorDto": { + "type": "object", + "properties": { + "code": { + "type": "string", + "example": "203074", + "description": "Mã lỗi" + }, + "message": { + "type": "string", + "example": "The API Key is invalid", + "description": "Nội dung lỗi" + } + }, + "title": "TokenResponseErrorDto" + }, + "PlaceOrderExternalDto": { + "type": "object", + "required": [ + "execType", + "price", + "priceType", + "quantity", + "symbol" + ], + "properties": { + "execType": { + "type": "string", + "pattern": "^(NS|NB)$", + "example": "NS", + "description": "Chiều giao dịch", + "enum": [ + "NS", + "NB" + ] + }, + "price": { + "type": "integer", + "format": "int64", + "example": 10000, + "description": "Giá giao dịch" + }, + "priceType": { + "type": "string", + "example": "LO", + "description": "Loại giá giao dịch", + "enum": [ + "LO", + "ATO", + "ATC", + "PLO", + "MP", + "MTL", + "MOK", + "MAK" + ] + }, + "quantity": { + "type": "integer", + "format": "int64", + "example": 100, + "description": "Khối lượng giao dịch" + }, + "symbol": { + "type": "string", + "example": "VNM", + "description": "Mã chứng khoán" + } + }, + "title": "PlaceOrderExternalDto" + }, + "PlaceOrderResponse": { + "type": "object", + "properties": { + "error": { + "type": "string", + "example": "0", + "description": "Mã lỗi" + }, + "message": { + "type": "string", + "example": "Đặt lệnh thành công!", + "description": "Message lỗi" + }, + "orderId": { + "type": "string", + "example": "9202205230000324355", + "description": "Số hiệu lệnh phản hồi về" + } + }, + "title": "PlaceOrderResponse" + }, + "UpdateOrderRequestDto": { + "type": "object", + "required": [ + "price", + "quantity" + ], + "properties": { + "price": { + "type": "integer", + "format": "int64", + "example": 10000, + "description": "Giá giao dịch" + }, + "quantity": { + "type": "integer", + "format": "int64", + "example": 100, + "description": "Khối lượng giao dịch" + } + }, + "title": "UpdateOrderRequestDto" + }, + "UpdateOrderResponse": { + "type": "object", + "properties": { + "error": { + "type": "string", + "example": "0", + "description": "Mã lỗi" + }, + "message": { + "type": "string", + "example": "Đặt lệnh thành công!", + "description": "Message lỗi" + }, + "orderId": { + "type": "string", + "example": "9202205230000324355", + "description": "Số hiệu lệnh phản hồi về" + } + }, + "title": "UpdateOrderResponse" + }, + "CancelOrderRequestDto": { + "type": "object", + "required": [ + "ordersList" + ], + "properties": { + "ordersList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/OrderIDResponse" + }, + "example": [ + { + "orderID": "9202205230000324355" + } + ] + } + }, + "title": "CancelOrderRequestDto" + }, + "CancelOrderResponse": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DataX" + } + }, + "object": { + "type": "string", + "example": "deleteOrderList" + }, + "pageIndex": { + "type": "integer", + "format": "int32", + "example": 1 + }, + "pageSize": { + "type": "integer", + "format": "int32", + "example": 20 + }, + "totalCount": { + "type": "integer", + "format": "int32", + "example": 20 + } + }, + "title": "CancelOrderResponse" + }, + "Detail": { + "type": "object", + "properties": { + "deleted": { + "type": "string", + "enum": [ + "Y", + "N" + ] + }, + "errorCode": { + "type": "string", + "example": "0" + }, + "errorMesage": { + "type": "string", + "example": "Giao dịch thực hiện thành công" + }, + "orderID": { + "type": "string", + "example": "9202205230000324355" + } + }, + "title": "Detail" + }, + "DataX": { + "type": "object", + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Detail" + } + }, + "object": { + "type": "string" + } + }, + "title": "DataX" + }, + "OrderIDResponse": { + "type": "object", + "properties": { + "orderID": { + "type": "string" + } + }, + "title": "OrderID" + }, + "OrderSearchResponse": { + "type": "object", + "properties": { + "object": { + "type": "string", + "example": "List", + "description": "Mặc định = 'List'" + }, + "pageSize": { + "type": "integer", + "format": "int64", + "description": "Kích thước trang", + "example": "10" + }, + "pageIndex": { + "type": "integer", + "format": "int64", + "description": "Index trang", + "example": "1" + }, + "totalCount": { + "type": "integer", + "format": "int64", + "description": "Tổng số bản ghi thỏa mãn điều kiện filter", + "example": 1 + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/OrderInfo" + } + } + } + }, + "OrderInfo": { + "type": "object", + "properties": { + "object": { + "type": "string", + "example": "order", + "description": "" + }, + "accountNo": { + "type": "string", + "example": "0001008918", + "description": "Số tiểu khoản" + }, + "orderID": { + "type": "string", + "example": "9202110200000060280", + "description": "Số hiệu lệnh" + }, + "execType": { + "type": "string", + "example": "NB", + "description": "Loại lệnh" + }, + "orderQtty": { + "type": "number", + "format": "double", + "example": "2500.0", + "description": "Khối lượng đặt" + }, + "execQtty": { + "type": "number", + "format": "double", + "example": "0.0", + "description": "Khối lượng khớp" + }, + "codeID": { + "type": "string", + "example": null, + "description": "" + }, + "symbol": { + "type": "string", + "example": "HPG", + "description": "Mã chứng khoán" + }, + "priceType": { + "type": "string", + "example": "LO", + "description": "Loại giá" + }, + "txtime": { + "type": "string", + "example": "14:15:34", + "description": "Giờ đặt lệnh" + }, + "txdate": { + "type": "string", + "example": "2021-08-19T00:00:00.000+07:00", + "description": "Ngày đặt lệnh. định dạng RFC 3339 " + }, + "expDate": { + "type": "string", + "example": "2021-08-19T00:00:00.000+07:00", + "description": "Ngày hết hạn. định dạng RFC 3339 " + }, + "timeType": { + "type": "string", + "example": "T", + "description": "Loại thời gian hiệu lực:\n- `T`: Trong ngày\n- `G`: Nhiều ngày\n", + "enum": [ + "T", + "G" + ] + }, + "orStatus": { + "type": "string", + "example": "11", + "description": "Trạng thái lệnh hiển thị:\n- `0`: Từ chối\n- `2`: Đã gửi\n- `3`: Đã hủy\n- `4`: Đã khớp\n- `5`: Hết hiệu lực\n- `8`: Chờ gửi\n- `10`: Đã sửa\n- `11`: Đang gửi\n- `12`: Khớp hết\n- `A`: Đang sửa\n- `C`: Đang hủy\n- `S`: Hoàn tất\n", + "enum": [ + "0", + "2", + "3", + "4", + "5", + "8", + "10", + "11", + "12", + "A", + "C", + "S" + ] + }, + "feeAcr": { + "type": "number", + "example": "0.0", + "description": "Phí" + }, + "limitPrice": { + "type": "number", + "example": "25000.0", + "description": "Giá đặt lệnh" + }, + "cancelQtty": { + "type": "number", + "format": "double", + "example": "0.0", + "description": "Khối lượng hủy" + }, + "remainQtty": { + "type": "number", + "format": "double", + "example": "2500.0", + "description": "" + }, + "via": { + "type": "string", + "example": "O", + "description": "\"Kênh giao dịch\"\n- `T`: \"Call margin\"\n- `M`: \"Tổng đài\"\n- `O`: 'Online'\n", + "enum": [ + "T", + "M", + "O" + ] + }, + "quotePrice": { + "type": "number", + "example": "25000.0", + "description": "Giá đặt lệnh" + }, + "matchPrice": { + "type": "number", + "example": "0.0", + "description": "Giá khớp trung bình của lệnh, làm tròn đến 2 số sau dấu phẩy" + }, + "tradePlace": { + "type": "string", + "example": "005", + "description": "\"Board đặt lệnh\"\n- `005`: \"UPCOM\"\n- `002`: \"HNX\"\n- `001`: \"HOSE\"\n- `000`: \"BOND\"\n", + "enum": [ + "005", + "002", + "001", + "000" + ] + }, + "matchType": { + "type": "string", + "example": "P", + "description": "Loại khớp\n- `P`: \"Thỏa thuận\"\n- `N`: \"Bình thường\"\n", + "enum": [ + "P", + "N" + ] + }, + "isDisposal": { + "type": "string", + "example": "Y", + "description": "là lệnh bán xử lý?", + "enum": [ + "Y", + "N" + ] + }, + "isCancel": { + "type": "string", + "example": "Y", + "description": "Cho phép hủy?\n- `Y`: \"Có\"\n- `N`: \"Không\"\n", + "enum": [ + "Y", + "N" + ] + }, + "isAmend": { + "type": "string", + "example": "Y", + "enum": [ + "Y", + "N" + ], + "description": "Cho phép sửa?\n- `Y`: \"Có\"\n- `N`: \"Không\"\n" + }, + "userName": { + "type": "string", + "example": "6868", + "enum": [ + "6868", + "8686" + ], + "description": "userID đặt lệnh\n- `6868`: \"Online\"\n- `8686`: \"Lệnh điều kiện, icopy\"\n" + }, + "orsOrderID": { + "type": "string", + "example": "9202110200000060280", + "description": "Số hiệu lệnh" + }, + "sectype": { + "type": "string", + "enum": [ + "001", + "002", + "003", + "005", + "006", + "007", + "008", + "009", + "011" + ], + "example": "001", + "description": "- `001`: \"Cổ phiếu thường\"\n- `002`: \"Cổ phiếu ưu đãi\"\n- `003`: \"Trái phiếu chuyển đổi\"\n- `005`: \"Tương lai\"\n- `006`: \"Trái phiếu\"\n- `007`: \"Chứng chỉ ủy thác\"\n- `008`: \"Chứng chỉ quỹ\"\n- `009`: \"Giấy chứng nhận TG\"\n- `011`: \"Chứng quyền\"\n" + }, + "isFOOrder": { + "type": "string", + "example": "Y", + "description": "Lệnh FO?\n- `Y`: \"Lệnh sinh từ FO\"\n- `N`: \"Lệnh sinh từ BO\"\n", + "enum": [ + "Y", + "N" + ] + }, + "odTimeStamp": { + "type": "string", + "example": "2021-10-20 14:15:34.000000", + "description": "Thời gian sinh lệnh" + }, + "matchAmount": { + "type": "number", + "example": 0, + "description": "Giá trị khớp của lệnh." + }, + "mmType": { + "type": "string", + "example": null + }, + "bRatio": { + "type": "number", + "example": 100.03, + "description": "Tỷ lệ ký quỹ (bao gồm phí)" + }, + "taxSellAmout": { + "type": "number", + "example": 0 + } + } + }, + "MarginQuotaResponse": { + "type": "object", + "properties": { + "custodyID": { + "type": "string", + "description": "Số tài khoản lưu ký của khách hàng", + "example": "105C738764" + }, + "accountNo": { + "type": "string", + "description": "Số tiểu khoản của khách hàng", + "example": "0001000075" + }, + "aftype": { + "type": "string", + "description": "Loại hình hợp đồng mà tiểu khoản khách hàng đang được áp dụng", + "example": "0075" + }, + "vsdStatus": { + "type": "string", + "description": "Trạng thái active VSD của khách hàng", + "example": "Y" + }, + "accountStatus": { + "type": "string", + "description": "- `A`: Được phép đặt lệnh \n- `P`: Không được phép đặt lệnh\n- `C`: Đã đóng \n- `B`: Phong tỏa\n- `N`: Chờ đóng \n- `R`: Từ chối\n- `T`: Chờ cập nhật\n", + "example": "A" + }, + "marginLimit": { + "type": "number", + "description": "Hạn mức margin của tiểu khoản. Chỉ có giá trị với loại tiểu khoản là margin", + "example": 0 + }, + "isIA": { + "type": "string", + "description": "Tài khoản có kết nối IA hay không\n- `Y`: Có \n- `N`: Không\n", + "example": "Y" + }, + "bankName": { + "type": "string", + "description": "Tên ngân hàng kết nối IA", + "example": "TCB" + }, + "bankAccount": { + "type": "string", + "description": "Số tài khoản kết nối IA", + "example": "11520154590019" + }, + "accountType": { + "type": "string", + "description": "Loại tiểu khoản\n- `normal`: Tiểu khoản Thường\n- `margin`: Tiểu khoản Ký quỹ\n- `copier`: Tiểu khoản copier\n- `trader`: Tiểu khoản trader\n- `CHILD`: Tiểu khoản con\n- `CW`: Tiểu khoản CW dành cho tự doanh\n- `SPW`: Tiểu khoản eBond dành cho wealthtech\n- `SPT`: Tiểu khoản eBond dành cho tự doanh\n", + "example": "normal" + } + } + }, + "MarginAccountInforResponse": { + "type": "object", + "properties": { + "accountNo": { + "type": "string", + "description": "Số tiểu khoản", + "example": "0001I97267" + }, + "riskPolicy": { + "type": "object", + "properties": { + "maintenanceMargin": { + "type": "number", + "description": "Tỷ lệ duy trì", + "example": 80 + }, + "initialMargin": { + "type": "number", + "description": "Tỷ lệ ký quỹ ban đầu", + "example": 100 + }, + "liquidationMargin": { + "type": "number", + "description": "Tỷ lệ cảnh báo", + "example": 30 + } + } + }, + "rtt": { + "type": "number", + "description": "Rtt thực tế", + "example": 99.95 + }, + "outstanding": { + "type": "number", + "description": "Tổng nợ gốc", + "example": 8858766677 + }, + "accruedInterest": { + "type": "number", + "description": "Tổng nợ lãi", + "example": 18638724 + }, + "dueAmount": { + "type": "number", + "description": "Nợ đến hạn", + "example": 34621881 + }, + "overdueAmount": { + "type": "number", + "description": "Nợ quá hạn", + "example": 34621881 + }, + "riskStatus": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "Trạng thái RTT", + "example": "SAFE" + }, + "description": { + "type": "string", + "description": "Mô tả trạng thái RTT", + "example": "An toàn" + } + } + }, + "totalFeeDebt": { + "type": "number", + "description": "Tổng nợ phí (Phí marginsure)", + "example": 8885876 + } + } + }, + "SupplementaryLoanPackageResponse": { + "type": "object", + "properties": { + "marginSureViews": { + "type": "array", + "items": { + "properties": { + "id": { + "type": "number", + "description": "Id gói marginsure", + "example": 37 + }, + "name": { + "type": "string", + "description": "Tên gói marginsure", + "example": "Phòng ngự_E2E" + }, + "code": { + "type": "string", + "description": "Mã gói marginsure", + "example": "MRX_INSURANCE_PREMIUM" + }, + "subscriptionFee": { + "type": "number", + "description": "Phí tham gia", + "example": 0.12 + }, + "status": { + "type": "string", + "description": "Trạng thái khách hàng đang đăng ký gói nào", + "example": "INACTIVE" + }, + "proposals": { + "type": "array", + "items": { + "properties": { + "id": { + "type": "number", + "description": "Id điều khoản gói marginsure", + "example": 82 + }, + "marginInsuranceId": { + "type": "number", + "description": "Id gói marginsure", + "example": 37 + }, + "interestAdjustmentValue": { + "type": "number", + "description": "Ngưỡng tăng/ giảm giá vốn của khoản vay theo điều khoản gói marginsure", + "example": -2.5 + }, + "interestPercentThreshold": { + "type": "number", + "description": "Ngưỡng tăng/ giảm lãi suất của khoản vay theo điều khoản của gói marignsure", + "example": -3 + }, + "thresholdType": { + "type": "string", + "description": "Loại điều chỉnh lãi", + "example": "LOWER" + } + } + } + }, + "default": { + "type": "bool", + "description": "", + "example": true + } + } + } + }, + "tplus": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "properties": { + "firstRate": { + "type": "number", + "description": "Lãi suất bậc 1 của gói T+", + "example": 5 + }, + "id": { + "type": "number", + "description": "ID gói T+", + "example": 153 + }, + "name": { + "type": "string", + "description": "Tên gói T+", + "example": "E2E MARGIN T5" + }, + "status": { + "type": "string", + "description": "Trạng thái khách haàng đang đăng ký gói T+", + "example": "ACTIVE" + }, + "undueInterestType": { + "type": "string", + "description": "Loại lãi suất của gói T+", + "example": "LADDER" + }, + "undueLadderValue": { + "type": "array", + "items": { + "properties": { + "id": { + "type": "number", + "description": "id của bậc lãi suất T+", + "example": 199 + }, + "rate": { + "type": "number", + "description": "Lãi suất bậc 1/ bậc 2 của gói T+", + "example": 5 + }, + "startDate": { + "type": "number", + "description": "Ngày bắt đầu lãi suất bậc 1/ bậc 2", + "example": 1 + }, + "dueDate": { + "type": "number", + "description": "Ngày kết thúc lãi suất bậc 1", + "example": 5 + } + } + } + }, + "overdueInterest": { + "type": "number", + "description": "Lãi suất quá hạn", + "example": 150 + }, + "extensionInterest": { + "type": "number", + "description": "Lãi suất gia hạn khi thanh toán lãi", + "example": 0 + }, + "extensionInterestBeforeInterestSettlement": { + "type": "number", + "description": "Lãi suất gia hạn khi chưa thanh toán lãi", + "example": 0 + }, + "iwealthPartnerInterest": { + "type": "number", + "description": "Lãi suất của iwealth partner", + "example": 0 + }, + "interestCalculationBasis": { + "type": "number", + "description": "Cơ sở tính lãi", + "example": 354 + }, + "undueFee": { + "type": "number", + "description": "Phí giải ngân", + "example": 0 + }, + "overdueFee": { + "type": "number", + "description": "Phí quá hạn", + "example": 0 + }, + "extensionFee": { + "type": "number", + "description": "Phí gia hạn", + "example": 0 + }, + "debtCollectionFee": { + "type": "number", + "description": "Phí thu nợ", + "example": 0 + }, + "description": { + "type": "string", + "description": "Mô tả", + "example": "Chính sách giá cho chương trình T5" + }, + "validFrom": { + "type": "string", + "description": "Ngày hiệu lực gói", + "example": "2024-05-06" + }, + "createdAt": { + "type": "string", + "description": "Ngày tạo gói", + "example": "2022-10-05 14:07:20" + }, + "updatedAt": { + "type": "string", + "description": "Ngày cập nhật gói", + "example": "2024-05-06 11:40:52" + }, + "discountable": { + "type": "bool", + "description": "Chính sách có được discount không", + "example": false + }, + "minRateConstraint": { + "type": "bool", + "description": "Chính sách có check mới lãi suất tối thiểu không", + "example": false + } + } + } + } + } + } + } + }, + "LoanResponse": { + "type": "object", + "properties": { + "size": { + "type": "number", + "description": "", + "example": 10 + }, + "content": { + "type": "array", + "items": { + "type": "object", + "properties": { + "openingDate": { + "type": "string", + "description": "", + "example": "2024-09-06" + }, + "dueDate": { + "type": "string", + "description": "", + "example": "2024-12-04" + }, + "renewTime": { + "type": "number", + "description": "Số lần đã gia hạn nợ", + "example": 0 + }, + "maxRenewTime": { + "type": "number", + "description": "Giới hạn số lần gia hạn nợ", + "example": 1 + }, + "isRenewable": { + "type": "boolean", + "description": "Có được gia hạn nợ không\n - true: có\n - false: không\n", + "example": false + }, + "reasonList": { + "type": "array", + "description": "Lý do không được gia hạn nợ", + "items": { + "type": "string", + "example": "Chưa đến ngày xin gia hạn" + } + }, + "addons": { + "type": "array", + "items": { + "type": "object", + "properties": { + "loanId": { + "type": "number", + "description": "Mã khoản vay", + "example": 10000902 + }, + "discounts": { + "type": "array", + "items": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "Mã chương trình Dynamic margin", + "example": "DYNAMIC_MARGIN" + }, + "origDiscountLoanAmt": { + "type": "number", + "description": "Gốc tính lãi Dynamic margin", + "example": 9090909090 + }, + "remainDiscountLoanAmt": { + "type": "number", + "description": "Gốc còn lại tính lãi Dynamic margin", + "example": 9090909 + }, + "preferentialRate": { + "type": "number", + "description": "Lãi suất Dynamic margin", + "example": 12 + }, + "startDate": { + "type": "string", + "description": "Ngày bắt đầu ưu đãi Dynamic margin", + "example": "2023-10-10" + }, + "endDate": { + "type": "string", + "description": "Ngày kết thúc ưu đãi Dynamic margin", + "example": "2023-10-30" + } + } + } + }, + "others": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Tên chính sách giá ưu đãi", + "example": "MRX_HYPERDISCOUNT" + }, + "code": { + "type": "string", + "description": "Mã chính sách giá ưu đãi", + "example": "MRX_HYPERDISCOUNT" + }, + "symbols": { + "type": "array", + "description": "Mã chứng khoán gán với khoản vay", + "items": { + "type": "string", + "example": "VNM" + } + }, + "rate": { + "type": "number", + "description": "Lãi suất ưu đãi", + "example": -3 + }, + "description": { + "type": "string", + "description": "Mô tả chính sách ưu đãi", + "example": null + } + } + } + } + } + } + }, + "insurance": { + "type": "object", + "properties": { + "insuranceName": { + "type": "string", + "description": "Tên gói marginsure", + "example": "Phòng ngự" + }, + "insuranceCode": { + "type": "string", + "description": "Mã gói marginsure", + "example": "MRX_INSURANCE_PREMIUM_1" + }, + "insuranceFee": { + "type": "number", + "description": "Phí marginsure", + "example": 0.15 + }, + "interestPercentageUpperThreshold": { + "type": "number", + "description": "Ngưỡng tăng giá vốn của khoản vay theo điều khoản gói marginsure", + "example": null + }, + "interestPercentageLowerThreshold": { + "type": "number", + "description": "Ngưỡng giảm giá vốn của khoản vay theo điều khoản gói marginsure", + "example": -3 + }, + "interestRateUpperAdjustmentValue": { + "type": "number", + "description": "Ngưỡng tăng lãi suất của khoản vay theo điều khoản của gói marignsure", + "example": null + }, + "interestRateLowerAdjustmentValue": { + "type": "number", + "description": "Ngưỡng giảm lãi suất của khoản vay theo điều khoản của gói marignsure", + "example": -3 + }, + "originalInterest": { + "type": "number", + "description": "Lãi suất gốc của khoản vay", + "example": 9 + }, + "loanId": { + "type": "number", + "description": "Mã khoản vay", + "example": 10000902 + }, + "accountNo": { + "type": "string", + "description": "Số tiểu khoản", + "example": "0001H91219" + }, + "symbol": { + "type": "string", + "description": "Mã chứng khoán được marignsure gán với khoản vay", + "example": "VNM" + }, + "adjustStrikePrice": { + "type": "number", + "description": "Giá vốn đã điều chỉnh", + "example": 96300 + }, + "startDate": { + "type": "string", + "description": "Ngày bắt đầu marginsure", + "example": "2024-09-06" + }, + "endDate": { + "type": "string", + "description": "Ngày kết thúc marginsure", + "example": "2024-12-04" + }, + "increasePrice": { + "type": "number", + "description": "Giá chặn trên theo điều khoản của gói marginsure", + "example": 96300 + }, + "decreasedPrice": { + "type": "number", + "description": "Giá chặn dưới theo điều khoản của gói marginsure", + "example": 93411 + }, + "increasedInterest": { + "type": "number", + "description": "Lãi suất của khoản vay nếu giá tăng đạt ngưỡng giá chặn trên", + "example": 9 + }, + "decreasedInterest": { + "type": "number", + "description": "Lãi suất của khoản vay nếu giá giảm đạt ngưỡng giá chặn dưới", + "example": 6 + } + } + }, + "symbol": { + "type": "string", + "description": "Mã chứng khoán gán với khoản vay", + "example": "VNM" + }, + "id": { + "type": "number", + "description": "Mã khoản vay", + "example": 10000902 + }, + "accountNo": { + "type": "string", + "description": "Số tiểu khoản", + "example": "0001H91219" + }, + "principal": { + "type": "number", + "description": "Gốc giải ngân", + "example": 264006454 + }, + "remainingPrincipal": { + "type": "number", + "description": "Nợ gốc hiện tại", + "example": 264006454 + }, + "interest": { + "type": "number", + "description": "Nợ lãi", + "example": 303793 + }, + "rate": { + "type": "number", + "description": "Lãi suất (%)", + "example": 9 + }, + "status": { + "type": "string", + "description": "Trạng thái khoản vay", + "example": "OPEN" + }, + "loanDays": { + "type": "number", + "description": "Kỳ hạn món vay còn lại", + "example": 7 + }, + "mrxLoanId": { + "type": "number", + "description": "Mã món vay", + "example": 10000902 + }, + "fee": { + "type": "number", + "description": "Nợ phí", + "example": 396010 + }, + "undueLoanFee": { + "type": "number", + "description": "Phí marginsure", + "example": 396010 + }, + "pricingPolicyType": { + "type": "string", + "description": "Loại khoản vay (T+)", + "example": "T_PLUS" + } + } + } + } + } + }, + "Response": { + "type": "object", + "properties": { + "accountNo": { + "type": "string", + "description": "Số tiểu khoản của khách hàng", + "example": "0001170730" + }, + "custodyID": { + "type": "string", + "description": "Số lưu ký của khách hàng", + "example": "105C336398" + }, + "symbol": { + "type": "string", + "description": "Mã chứng khoán tính sức mua", + "example": "FPT" + }, + "price": { + "type": "number", + "description": "Giá tính sức mua", + "example": "120000" + }, + "pp0": { + "type": "number", + "description": "Sức mua cơ bản", + "example": "50000000001" + }, + "ppse": { + "type": "number", + "description": "Sức mua theo mã chưa bao gồm số dư bank với tk kết nối IA", + "example": "50000000001" + }, + "ppseref": { + "type": "number", + "description": "Sức mua theo mã đã bao gồm số dư bank với tk kết nối IA", + "example": "50000000001" + }, + "maxBuyQuantity": { + "type": "number", + "description": "Số lượng chứng khoán được mua tối đa đã làm tròn xuống theo lô", + "example": "458600" + }, + "realMaxBuyQuantity": { + "type": "number", + "description": "Số lượng chứng khoán được mua tối đa không làm tròn theo lô", + "example": "458678" + }, + "minBuyQuantity": { + "type": "number", + "description": "Số lượng chứng khoán được mua tối thiểu đã làm tròn xuống theo lô", + "example": "375200" + }, + "marginRatioLoan": { + "type": "number", + "description": "Tỷ lệ margin của mã", + "example": "50" + }, + "marginPriceLoan": { + "type": "number", + "description": "Giá tính margin của mã", + "example": "24000" + }, + "rateBrkS": { + "type": "string", + "description": "Tỷ lệ phí GD cổ phiếu (chưa chia 100)", + "example": "0.03" + }, + "rateBrkB": { + "type": "string", + "description": "Tỷ lệ phí GD trái phiếu (chưa chia 100)", + "example": "0.03" + } + } + }, + "SeInfoDTO": { + "type": "object", + "properties": { + "object": { + "type": "string" + }, + "accountNo": { + "type": "string", + "example": "0001170730", + "description": "Số tiểu khoản" + }, + "custodyID": { + "type": "string", + "example": "105C354675", + "description": "Số tài khoản lưu ký (105C)" + }, + "fullName": { + "type": "string", + "example": "Nguyen Van Nam", + "description": "Tên khách hàng" + }, + "stock": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StockHoldingInfo" + } + } + } + }, + "StockHoldingInfo": { + "type": "object", + "properties": { + "symbol": { + "type": "string", + "description": "Mã chứng khoán", + "example": "FPT" + }, + "secType": { + "type": "string", + "example": "001", + "enum": [ + "001", + "002", + "003", + "005", + "006", + "008", + "011", + "012", + "555" + ] + }, + "secTypeName": { + "type": "string", + "description": "Tên loại chứng khoán", + "example": null + }, + "availableTrading": { + "type": "number", + "description": "Số dư có thể giao dịch", + "example": "1000" + }, + "mortgaged": { + "type": "number", + "description": "SL chứng khoán cầm cố", + "example": null + }, + "t0": { + "type": "number", + "description": "SL chứng khoán khớp lệnh mua hôm nay (T0)", + "example": 0 + }, + "t1": { + "type": "number", + "description": "SL chứng khoán khớp lệnh mua T-1", + "example": 0 + }, + "t2": { + "type": "number", + "description": "SL chứng khoán khớp lệnh mua T-2", + "example": 0 + }, + "blocked": { + "type": "number", + "description": "CK bị phong tỏa đầu ngày", + "example": 0 + }, + "securedQuantity": { + "type": "number", + "description": "Số dư ký quỹ bán trong ngày (gồm chờ khớp + đã khớp)", + "example": 0 + }, + "sellRemain": { + "type": "number", + "description": "Số chứng bán chưa khớp", + "example": 0 + }, + "exercisedCA": { + "type": "number", + "description": "Quyền mua đã đăng ký", + "example": 0 + }, + "unexercisedCA": { + "type": "number", + "description": "Quyền mua chưa đăng ký", + "example": 0 + }, + "stockDividend": { + "type": "number", + "description": "Cổ tức bằng cổ phiếu, tách cổ phiếu,...", + "example": 0 + }, + "cashDividend": { + "type": "number", + "description": "Cổ tức bằng tiền", + "example": 0 + }, + "waitForTrade": { + "type": "number", + "description": "SL chứng khoán chờ giao dịch", + "example": 0 + }, + "waitForTransfer": { + "type": "number", + "description": "SL chứng khoán chờ chuyển rút", + "example": 0 + }, + "waitForWithdraw": { + "type": "number", + "description": "SL chứng khoán chờ rút", + "example": 0 + }, + "currentPrice": { + "type": "number", + "description": "Giá tham chiếu", + "example": 44000 + }, + "costPrice": { + "type": "number", + "description": "Giá vốn", + "example": 52906 + }, + "sellExec": { + "type": "number", + "description": "SL chứng khoán bán khớp", + "example": 0 + }, + "onHold": { + "type": "number", + "description": "Số lượng chứng khoán tạm giữ từ VSD", + "example": 0 + }, + "totalQtty": { + "type": "number", + "description": "Tổng KL chứng khoán", + "example": 0 + }, + "settlement": { + "type": "number", + "description": "Mô hình thanh toán của mã CK", + "example": 0 + } + } + }, + "CashInvestmentResponse": { + "type": "object", + "properties": { + "object": { + "type": "string" + }, + "totalCount": { + "type": "integer", + "format": "int32", + "description": "Tổng số bản ghi trả ra", + "example": 20 + }, + "pageSize": { + "type": "integer", + "format": "int32", + "description": "Mặc định = 20", + "example": 20 + }, + "pageIndex": { + "type": "integer", + "format": "int32", + "description": "Mặc định =1", + "example": 1 + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CashInvestmentInfo" + } + } + } + }, + "TransHistCashStatementsResponse": { + "type": "object", + "properties": { + "response": { + "type": "object", + "properties": { + "pageIndex": { + "type": "integer", + "description": "Page index", + "example": 1 + }, + "pageSize": { + "type": "integer", + "description": "Page size", + "example": 25 + }, + "totalCreditAmount": { + "type": "integer", + "description": "Tổng phát sinh giảm", + "example": 9545594 + }, + "totalDebitAmount": { + "type": "integer", + "description": "Tổng phát sinh tăng", + "example": 10715 + }, + "totalCount": { + "type": "integer", + "description": "Tổng số bản ghi", + "example": 8 + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TransHistCashStatementsResponseArray" + } + } + } + } + } + }, + "MarginInfoResponse": { + "type": "object", + "properties": { + "response": { + "type": "object", + "properties": { + "totalRow": { + "type": "integer", + "description": "Số bản ghi", + "example": 1 + }, + "totalPage": { + "type": "integer", + "description": "Số trang", + "example": 6 + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MarginInfoResponseArray" + } + } + } + } + } + }, + "CashInvestmentInfo": { + "type": "object", + "properties": { + "object": { + "type": "string" + }, + "iaInfos": { + "type": "array", + "items": { + "$ref": "#/components/schemas/IAInfo" + } + }, + "pp0forBF": { + "type": "number", + "description": "Sức mua cơ bản cho sản phẩm BOND/FUND", + "example": 2057323960 + }, + "bankAvlBalanceBF": { + "type": "number", + "description": "Tổng số dư khả dụng của các nguồn IA cho sp BOND/FUND", + "example": 6500000 + }, + "bodBalance": { + "type": "number", + "description": "Tiền mặt tại TCBS", + "example": 918000000 + }, + "cashBalance": { + "type": "number", + "description": "Tiền mặt", + "example": 918000000 + }, + "accountNo": { + "type": "string", + "description": "Số tiểu khoản", + "example": "0001170730" + }, + "custodyID": { + "type": "string", + "description": "Số tài khoản (105C)", + "example": "105C447239" + }, + "fullName": { + "type": "string", + "description": "Tên khách hàng", + "example": "Nguyen Van Nam" + }, + "balance": { + "type": "number", + "description": "Số dư tiền mặt tại TCBS = Tiền mặt - ký quỹ mua lệnh đã khớp", + "example": 2000050090 + }, + "avlAdvanceAmount": { + "type": "number", + "description": "Số dư có thể ứng trước", + "example": 0 + }, + "buyingAmount": { + "type": "number", + "description": "Ký quỹ mua chưa khớp (đã tính phí tạm tính)", + "example": 0 + }, + "blockAmount": { + "type": "number", + "description": "Số dư tiền bị phong tỏa", + "example": 0 + }, + "cashDevident": { + "type": "number", + "description": "Cổ tức bằng tiền", + "example": 0 + }, + "bankAvlBalance": { + "type": "number", + "description": "Tổng số dư khả dụng của các nguồn IA", + "example": 106500000 + }, + "bankBlockAmount": { + "type": "number", + "description": "Số dư phong tỏa tại ngân hàng", + "example": 5000000 + }, + "avlWithdraw": { + "type": "number", + "description": "Số dư có thể rút/chuyển", + "example": 1781124410 + }, + "pp0": { + "type": "number", + "description": "Sức mua cơ bản", + "example": 2057323960 + }, + "secureAmtPO": { + "type": "number", + "description": "Số tiền ký quỹ mua Bond niêm yết PO", + "example": 0 + }, + "bondBlockAmount": { + "type": "number", + "description": "Số dư phong tỏa mua BOND", + "example": 0 + }, + "mBlockAmount": { + "type": "number", + "description": "Tiền phong toả do lệnh bán ck cầm cố + cổ tức, trái tức bị phong toả do cầm cố", + "example": 0 + }, + "fundBlockAmount": { + "type": "number", + "description": "Tổng số tiền phong tỏa mua FUND", + "example": 0 + }, + "avalBondBlockAmount": { + "type": "number", + "description": "Số dư phong tỏa mua BOND khả dụng", + "example": 0 + }, + "depoFee": { + "type": "number", + "description": "Tổng nợ phí lưu ký", + "example": 0 + }, + "bCashDividend": { + "type": "number", + "description": "Trái tức niêm yết sẽ nhận (bao gồm cả số bị phong tỏa-nếu có) & là số đã trừ đi phí/ thuế", + "example": 0 + }, + "sCashDividend": { + "type": "number", + "description": "Tiền cổ tức chờ về (bao gồm cả số bị phong tỏa-nếu có) & là số đã trừ đi phí/ thuế", + "example": 0 + }, + "dsecured": { + "type": "number", + "description": "Tổng tiền mua trong ngày", + "example": 0 + }, + "adused": { + "type": "number", + "description": "Dự kiến ứng tiền tự động", + "example": 0 + }, + "mrused": { + "type": "number", + "description": "Dự kiến giải ngân margin", + "example": 0 + } + } + }, + "TransHistCashStatementsResponseArray": { + "type": "object", + "properties": { + "custodyID": { + "type": "string", + "description": "Số tài khoản", + "example": "105C209414" + }, + "transactionCode": { + "type": "string", + "description": "Loại giao dịch", + "example": "1153" + }, + "debitAmount": { + "type": "number", + "description": "Số tiền phát sinh tăng", + "example": 0 + }, + "transactionName": { + "type": "string", + "description": "Tên loại giao dịch", + "example": "Ứng truớc tiền bán" + }, + "descriptions": { + "type": "string", + "description": "Mô tả", + "example": "UTTB ngày GD 16-DEC-22, ngày TT 20/12/2022 Ung truoc tien lenh ban ngay:16-DEC-22 (online)" + }, + "businessDate": { + "type": "string", + "description": "Ngày làm việc", + "example": "2022-12-16" + }, + "transactionNum": { + "type": "string", + "description": "Mã giao dịch", + "example": "6800124310" + }, + "accountNo": { + "type": "string", + "description": "Số tiểu khoản", + "example": "0001490922" + }, + "transationDate": { + "type": "string", + "description": "Ngày giao dịch", + "example": "2022-12-16" + }, + "creditAmount": { + "type": "number", + "description": "Số tiền phát sinh giảm", + "example": 2814359 + } + } + }, + "MarginInfoResponseArray": { + "type": "object", + "properties": { + "remainingInterestFee": { + "type": "number", + "description": "Tổng Nợ lãi và phí hiện tại", + "example": 0 + }, + "releasedDay": { + "type": "number", + "description": "Số ngày vay", + "example": 4 + }, + "printAmount": { + "type": "number", + "description": "Nợ gốc hiện tại", + "example": "0E-10" + }, + "paidInterestFee": { + "type": "number", + "description": "Tổng lãi và phí đã trả", + "example": 18205 + }, + "intAmount": { + "type": "number", + "description": "Nợ lãi và phí hiện tại", + "example": "0E-10" + }, + "releaseDate": { + "type": "string", + "description": "Ngày giải ngân", + "example": "2022-07-11" + }, + "rate2": { + "type": "number", + "description": "Lãi suất", + "example": 11.5 + }, + "overDueDate": { + "type": "string", + "description": "Ngày đáo hạn", + "example": "2022-10-10" + }, + "paidFee": { + "type": "number", + "description": "Phí đã trả", + "example": 0 + }, + "releasedAmount": { + "type": "number", + "description": "Gốc giải ngân", + "example": 14444940 + }, + "remainingFee": { + "type": "number", + "description": "Nợ phí hiện tại", + "example": 0 + }, + "intPaid": { + "type": "number", + "description": "Lãi và phí đã trả", + "example": 18205 + }, + "prinPaid": { + "type": "number", + "description": "Gốc đã trả", + "example": 14444940 + } + } + }, + "IAInfo": { + "type": "object", + "properties": { + "partner": { + "type": "string", + "description": "Tên nguồn IA", + "example": "CTG" + }, + "available": { + "type": "number", + "description": "Số dư khả dụng", + "example": 6500000 + }, + "hold": { + "type": "number", + "description": "Số dư phong tỏa", + "example": 5000000 + } + } + }, + "BasicInfo": { + "type": "object", + "properties": { + "tcbsId": { + "type": "string", + "description": "Số định danh của user tại TCBS", + "example": "0001738764" + }, + "code105C": { + "type": "string", + "description": "Tên đăng nhập", + "example": "105C334455" + }, + "status": { + "type": "string", + "description": "Trạng thái tài khoản\n- `ACTIVE`: \"Đang hoạt động\"\n- `BLOCK`: \"Tạm khóa do user tự thao tác / panna tác động / sai BMNC\"\n- `BLOCK_BY_OPS`: \"Tạm khóa do Ops\"\n- `LOCK`: \"Khóa (không sử dụng)\"\n- `INACTIVE`: \"Đóng\"\n- `EXCEPTION`: \"Ngoại lệ (không sử dụng)\"\n- `LOCK_WAITING_TO_CLOSE`: \"Khóa chờ đóng\"\n- `RESTRICTED_ACCESS`: \"Giới hạn truy cập (chỉ được phép gọi GET)\"\n- `WAITING_CONFIRM_EM`: \"Chờ xác thực để mở khóa\"\n- `WAITING_FOR_UNLOCK`: \"Chờ mở khóa\"\n- `LOCKDOWN`: \"Phong tỏa bởi KSNB\"\n", + "example": "ACTIVE" + }, + "type": { + "type": "string", + "description": "Loại hình tài khoản\n- `INDIVIDUAL`: \"Cá nhân\"\n- `CORPORATE`: \"Tổ chức\"\n", + "example": "INDIVIDUAL" + }, + "depository": { + "type": "boolean", + "description": "Có phải tài khoản lưu kí tại VSD hay không", + "example": true + } + } + }, + "PersonalInfo": { + "type": "object", + "properties": { + "fullName": { + "type": "string", + "description": "họ tên", + "example": "Nguyễn Văn Nam" + }, + "fullNameNoAccent": { + "type": "string", + "description": "họ tên không dấu", + "example": "Nguyen Van Nam" + }, + "firstName": { + "type": "string", + "description": "tên", + "example": "Nam" + }, + "lastName": { + "type": "string", + "description": "họ và tên đệm", + "example": "Nguyen Van" + }, + "email": { + "type": "string", + "description": "email", + "example": "namnv@email.com" + }, + "phoneNumber": { + "type": "string", + "description": "số điện thoại", + "example": "0367611245" + }, + "gender": { + "type": "string", + "description": "giới tính\n- `MALE`: \"Nam\"\n- `FEMALE`: \"Nữ\"\n", + "example": "MALE" + }, + "birthday": { + "type": "string", + "description": "ngày sinh", + "example": "1996-05-24T00:00:00.000Z" + }, + "contactAddress": { + "type": "string", + "description": "địa chỉ liên hệ", + "example": "117 Trần Duy Hưng, Cầu Giấy, Hà Nội" + }, + "permanentAddress": { + "type": "string", + "description": "địa chỉ thường trú", + "example": "117 Trần Duy Hưng, Cầu Giấy, Hà Nội" + }, + "nationality": { + "type": "string", + "description": "mã quốc tịch", + "example": "VN" + }, + "nationalityName": { + "type": "string", + "description": "tên quốc tịch ", + "example": "Việt Nam" + }, + "taxIdNumber": { + "type": "string", + "description": "mã số thuế", + "example": "6477273733" + }, + "acronym": { + "type": "string", + "description": "tên viết tắt", + "example": null + }, + "createdDate": { + "type": "string", + "description": "thời điểm tạo tài khoaản", + "example": "2019-06-27T09:56:19.000Z" + }, + "updatedDate": { + "type": "string", + "description": "thời điểm cuối cập nhật thông tin tài khoản", + "example": "2024-07-05T08:07:35.000Z" + }, + "flowOpenAccount": { + "type": "string", + "description": "kênh mở tài khoản\n- `null`: \"không xác định\"\n- `0`: \"online\"\n- `1`: \"quầy\"\n- `2`: \"app techcombank\"\n- `3`: \"app vinid\"\n", + "example": "2" + }, + "avatarUrl": { + "type": "string", + "description": "link avatar", + "example": "" + }, + "businessType": { + "type": "string", + "description": "loại hình doanh nghiệp", + "example": null + }, + "ppBusinessType": { + "type": "string", + "description": "mã loại hình kinh doanh", + "example": null + }, + "ppBusinessField": { + "type": "string", + "description": "mã lĩnh vực hoạt động", + "example": null + }, + "ppBusinessTypeName": { + "type": "string", + "description": "tên loại hình kinh doanh", + "example": null + }, + "ppBusinessFieldName": { + "type": "string", + "description": "tên lĩnh vực hoạt động", + "example": null + }, + "identityCard": { + "$ref": "#/components/schemas/IdentityCard" + } + } + }, + "AccountInformationResponse": { + "type": "object", + "properties": { + "basicInfo": { + "$ref": "#/components/schemas/BasicInfo" + }, + "personalInfo": { + "$ref": "#/components/schemas/PersonalInfo" + }, + "bankAccounts": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BankAccounts" + } + }, + "bankSubAccounts": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BankSubAccounts" + } + } + } + }, + "BankAccounts": { + "type": "object", + "properties": { + "accountNo": { + "type": "string", + "description": "số tài khoản", + "example": "02848283883" + }, + "accountName": { + "type": "string", + "description": "tên chủ tài khoản", + "example": "Nguyễn Văn Nam" + }, + "accountNameNoAccent": { + "type": "string", + "description": "tên chủ tài khoản không dấu", + "example": "Nguyen Van Nam" + }, + "bankCode": { + "type": "string", + "description": "mã chi nhánh ", + "example": "01310001" + }, + "bankName": { + "type": "string", + "description": "tên ngân hàng", + "example": "Ngân hàng TMCP Kỹ Thương Việt Nam" + }, + "branchCode": { + "type": "string", + "description": "tên chi nhánh", + "example": "NH TMCP KY THUONG VN HOI SO CHINH" + }, + "bankType": { + "type": "string", + "description": "loại chi nhánh\n- `CENTRALIZED_PAYMENT`: \"tập trung\"\n- `DECENTRALIZED_PAYMENT`: \"phi tập trung\"\n", + "example": "CENTRALIZED_PAYMENT" + }, + "bankSys": { + "type": "string", + "description": "mã ngân hàng", + "example": "310" + }, + "authorized": { + "type": "string", + "description": "tài khoản có chính chủ hay không\n- `null`: \"tài khoản cũ bỏ qua check chính chủ\"\n- `0`: \"không chính chủ\"\n- `1`: \"chính chủ\"\n- `2`: \"tài khoản chưa được xác minh\"\n- `3`: \"tài khoản không cần xác minh\"\n", + "example": "1" + }, + "bankAccountType": { + "type": "string", + "description": "phạm vi áp dụng\n- `STOCK_FUND`: \"tài khoản chính (áp dụng cả quỹ và chứng khoán)\"\n- `FUND`: \"tài khoản áp dụng cho quỹ\"\n- `STOCK`: \"tài khoản áp dụng cho chứng khoán\"\n", + "example": "STOCK_FUND" + } + } + }, + "BankSubAccounts": { + "type": "object", + "properties": { + "accountNo": { + "type": "string", + "description": "số tiểu khoản", + "example": "0001170730" + }, + "accountName": { + "type": "string", + "description": "tên tiểu khoản", + "example": "Nguyen Van Nam" + }, + "accountType": { + "type": "string", + "description": "mã loại tiểu khoản", + "example": "NORMAL" + }, + "accountTypeName": { + "type": "string", + "description": "tên loại tiểu khoản", + "example": "Thường" + }, + "status": { + "type": "string", + "description": "trạng thái\n- `0`: \"không hoạt động\" \n- `1`: \"đang hoạt động\"\n", + "example": "1" + }, + "isDefault": { + "type": "string", + "description": "có phải tiểu khoản mặc định không\n- `N`: \"không\"\n- `Y`: \"có\"\n", + "example": "Y" + } + } + }, + "IdentityCard": { + "type": "object", + "properties": { + "object": { + "type": "string" + }, + "idNumner": { + "type": "string", + "description": "số giấy tờ định danh", + "example": "024561782211" + }, + "idPlace": { + "type": "string", + "description": "nơi cấp", + "example": "Cục CS QLHC về TTXH" + }, + "idDate": { + "type": "string", + "description": "ngày cấp", + "example": "2023-09-25T00:00:00.000+07:00" + }, + "expireDate": { + "type": "string", + "description": "ngày hết hạn", + "example": "2026-10-12" + }, + "idType": { + "type": "string", + "description": "loại giấy tờ\n- `0` - \"CMND/CCCD\"\n- `1` - \"Hộ chiếu\"\n- `2` - \"Tradding code\"\n- `3` - \"Đăng kí kinh doanh\"\n- `4` - \"Giấy chứng nhận thành viên lưu kí\" \n- `5` - \"Giấy thành lập doanh nghiệp\"\n", + "example": "0" + } + } + }, + "CommandMatchInformationResponse": { + "type": "object", + "properties": { + "object": { + "type": "string" + }, + "totalCount": { + "type": "integer", + "format": "int32", + "description": "Tổng số bản ghi trả ra", + "example": 25 + }, + "pageSize": { + "type": "integer", + "format": "int32", + "description": "Số lượng phần tử 1 trang", + "example": 25 + }, + "pageIndex": { + "type": "integer", + "format": "int32", + "description": "Mục lục trang", + "example": 0 + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommandMatchInformationDetailResponse" + } + } + } + }, + "CommandMatchInformationDetailResponse": { + "type": "object", + "properties": { + "orderId": { + "type": "string", + "description": "Số hiệu lệnh phản hồi về", + "example": 9202407170000281000 + }, + "side": { + "type": "string", + "description": "Chiều lệnh\n- `S`: \"Bán\"\n- `B`: \"Mua\"\n", + "example": "B" + }, + "symbol": { + "type": "string", + "description": "Mã chứng khoán", + "example": "FPT" + }, + "quoteQtty": { + "type": "number", + "description": "Khối lượng đặt", + "example": 800 + }, + "quotePrice": { + "type": "number", + "description": "Giá đặt", + "example": 54000 + }, + "tradeId": { + "type": "string", + "description": "Id lệnh khớp", + "example": 202409160000220380 + }, + "qtty": { + "type": "number", + "description": "Khối lượng khớp", + "example": 200 + }, + "price": { + "type": "number", + "description": "Giá khớp", + "example": 53000 + }, + "timeExec": { + "type": "number", + "description": "Thời điểm khớp", + "example": "2024-09-16T17:05:20" + } + } + }, + "TotalCashDerivativeResponse": { + "type": "object", + "properties": { + "cash": { + "type": "number", + "description": "Tiền ký quỹ tại VSD", + "example": "600089123" + }, + "stock": { + "type": "number", + "description": "Giá trị CK tại VSD", + "example": "0" + }, + "collateral": { + "type": "number", + "description": "Tài sản đảm bảo hợp lệ", + "example": "600089123" + }, + "type": { + "type": "string", + "description": "Loại tài khoản VSD:\n- `CA_NHAN`: cá nhân\n- `TO_CHUC`: tổ chức\n- `CHUYEN_NGHIEP`: chuyên nghiệp\n", + "example": "CA_NHAN" + }, + "net": { + "type": "string", + "description": "Loại Tài khoản\n- `NO - Netted`: Netted\n- `YES- Non netted`: Non netted\n", + "example": "NO" + }, + "tyle": { + "type": "string", + "description": "Tỷ lệ sử dụng TSKQ", + "example": "54.46" + }, + "im": { + "type": "number", + "description": "Ký quỹ ban đầu (IM)", + "example": "322140000" + }, + "vm": { + "type": "number", + "description": "Lãi lỗ (VM)", + "example": "-4200000" + }, + "dm": { + "type": "number", + "description": "Ký quỹ chuyển giao (DM)", + "example": "0" + }, + "mr": { + "type": "number", + "description": "Ký quỹ yêu cầu(MR)", + "example": "326819003" + }, + "avaiCash": { + "type": "number", + "description": "Tiền mặt (Tiền mặt tại công ty chứng khoán chưa trừ các nghĩa vụ của tài khoản)", + "example": "0" + }, + "avaiColla": { + "type": "number", + "description": "Sức mua", + "example": "170341311" + }, + "vmunpay": { + "type": "number", + "description": "Tiền chưa thanh toán (VM lỗ + các nghĩa vụ phí thuế chưa thanh toán ngày T-1)", + "example": "0" + }, + "info": { + "type": "string", + "description": "Thông tin thêm", + "example": "" + }, + "color": { + "type": "string", + "description": "Màu của tỷ lệ", + "example": "green" + }, + "vm_eod": { + "type": "string", + "description": "VM eod (hiện không sử dụng)", + "example": "0" + }, + "others": { + "type": "number", + "description": "Phí thuế treo trên TCI3 (Tổng cộng các loại phí GD + Phí giao dịch HNX + thuế + phí quản lý TSKQ + Phí QLVT, chưa thu tính đến đến thời điểm xem)", + "example": "479003" + }, + "tax": { + "type": "number", + "description": "Tổng thuế trong ngày", + "example": "" + }, + "feeCTCK": { + "type": "number", + "description": "Tổng Phí giao dịch trong ngày", + "example": "" + }, + "feeHNX": { + "type": "number", + "description": "Tổng phí HNX trong ngày", + "example": "" + }, + "cashWithdraw": { + "type": "number", + "description": "Tiền ký quỹ VSD có thể rút", + "example": "172989123" + }, + "tienbosung": { + "type": "number", + "description": "Tiền bổ sung để đưa tỷ lệ sử dụng tài sản ký quỹ <= tỷ lệ an toàn theo chính sách được gán cho tài khoản hiện tại", + "example": "0" + }, + "cashavaiwithdraw": { + "type": "number", + "description": "Tiền mặt KH có thể chuyển tại công ty, sau khi trừ các nghĩa vụ của tài khoản", + "example": "0" + }, + "assets": { + "type": "number", + "description": "Tổng tài sản", + "example": "595090120" + }, + "nav": { + "type": "number", + "description": "Tài sản ròng", + "example": "595090120" + }, + "cashOut": { + "type": "number", + "description": "Tiền chờ out hoặc in tại VSD", + "example": "0" + }, + "unrelizeVM": { + "type": "number", + "description": "Lãi lỗ chưa đóng", + "example": "0" + }, + "feePos": { + "type": "number", + "description": "Tổng Phí quản lý vị thế đến hiện tại", + "example": "0" + }, + "feeMan": { + "type": "number", + "description": "Tổng Phí quản lý tài sản ký quỹ đến hiện tại", + "example": "320000" + }, + "product": { + "type": "string", + "description": "Nhóm chính sách tại công ty (thường, VIP)", + "example": "NORMAL" + }, + "status": { + "type": "string", + "description": "Trạng thái tài khoản", + "example": "" + }, + "debt": { + "type": "string", + "description": "Nợ (TCBS chưa triển khai dịch vụ này)", + "example": "" + }, + "w1": { + "type": "number", + "description": "Tỉ lệ an toàn", + "example": "" + }, + "w2": { + "type": "number", + "description": "Tỉ lệ xử lý", + "example": "" + }, + "limit": { + "type": "number", + "description": "Tỉ lệ cảnh báo", + "example": "" + }, + "package": { + "type": "string", + "description": "Gói phí", + "example": "" + } + } + }, + "AssetPositionCloseDerivativeResponse": { + "type": "object", + "properties": { + "symbol": { + "type": "string", + "description": "Mã chứng khoán" + }, + "side": { + "type": "string", + "description": "Loại giao dịch" + }, + "openPrice": { + "type": "string", + "description": "Giá mở TB" + }, + "closePrice": { + "type": "string", + "description": "Giá đóng TB" + }, + "closePosition": { + "type": "string", + "description": "Số vị thế/ total" + }, + "fee": { + "type": "string", + "description": "Phí giao dịch + Phí giao dịch trả HNX" + }, + "tax": { + "type": "string", + "description": "Thuế" + }, + "closeVM": { + "type": "string", + "description": "Lãi lỗ đã đóng" + }, + "unrealize": { + "type": "string", + "description": "Lãi lỗ chưa đóng" + }, + "closePC": { + "type": "string", + "description": "% lãi/lỗ đã đóng" + }, + "time": { + "type": "string", + "description": "Thời gian đóng cuối cùng" + } + } + }, + "AssetPositionOpenDerivativeResponse": { + "type": "object", + "properties": { + "symbol": { + "type": "string", + "description": "Mã hợp đồng" + }, + "im": { + "type": "string", + "description": "Tỷ lệ ký quỹ" + }, + "deliver": { + "type": "integer", + "description": "Số đã SHORT" + }, + "receive": { + "type": "integer", + "description": "Số đã LONG" + }, + "net": { + "type": "integer", + "description": "net là vị thế mở, nếu: net > 0 là LONG, net < 0 là SHORT" + }, + "side": { + "type": "string", + "description": "- `L`: Long\n- `S`: Short\n" + }, + "account": { + "type": "string", + "description": "Số tài khoản" + }, + "wasp": { + "type": "number", + "format": "float", + "description": "Trung bình bán" + }, + "wapb": { + "type": "number", + "format": "float", + "description": "Trung bình mua" + }, + "lastPrice": { + "type": "number", + "format": "float", + "description": "Giá thị trường" + }, + "imValue": { + "type": "number", + "format": "integer", + "description": "Giá trị ký quỹ ban đầu" + }, + "vmValue": { + "type": "number", + "format": "integer", + "description": "Lãi/lỗ" + }, + "mrValue": { + "type": "number", + "format": "integer", + "description": "Giá trị ký quỹ yêu cầu" + }, + "duedate": { + "type": "string", + "format": "date", + "description": "Ngày đáo hạn" + }, + "netoffvol": { + "type": "integer", + "description": "Số cần netoff, sẽ tính cả các lệnh đặt chưa khớp" + }, + "avg_remain": { + "type": "number", + "format": "float", + "description": "Giá trung bình phần còn lại" + }, + "vm_remain": { + "type": "number", + "format": "integer", + "description": "Giá trị VM chưa đóng" + }, + "pc_remain": { + "type": "number", + "description": "% lãi/lỗ vị thế mở" + }, + "stoploss": { + "type": "string", + "description": "Là mức giá cắt lỗ có thể chạm sớm nhất" + }, + "takeprofit": { + "type": "string", + "description": "Là mức chốt lãi có thể chạm sớm nhất" + } + } + }, + "ListOrderNormalDerivativeResponse": { + "type": "object", + "properties": { + "orderNo": { + "type": "string", + "description": "Số hiệu lệnh" + }, + "pk_orderNo": { + "type": "string", + "description": "Key" + }, + "refId": { + "type": "string", + "description": "Ref id của lệnh" + }, + "orderTime": { + "type": "string", + "description": "Thời gian đặt lênh" + }, + "accountCode": { + "type": "string", + "description": "Số tài khoản phái sinh" + }, + "side": { + "type": "string", + "description": "LONG/SHORT" + }, + "symbol": { + "type": "string", + "description": "Mã hợp đồng" + }, + "volume": { + "type": "number", + "description": "Khối lượng đặt" + }, + "showPrice": { + "type": "number", + "description": "Giá đặt" + }, + "matchVolume": { + "type": "number", + "description": "Khối lượng khớp" + }, + "matchPriceBQ": { + "type": "number", + "description": "Giá khớp" + }, + "status": { + "type": "string", + "description": "Trạng thái lệnh" + }, + "orderStatus": { + "type": "string", + "description": "Chi tiết trạng thái" + }, + "channel": { + "type": "string", + "description": "Kênh đặt" + }, + "group": { + "type": "string", + "description": "Lệnh phái sinh" + }, + "cancelTime": { + "type": "string", + "description": "Thời gian hủy" + }, + "isCancel": { + "type": "number", + "description": "Có được hủy hay không: 0/ 1 - Không/ Có" + }, + "isAmend": { + "type": "number", + "description": "Có được sửa hay không: 0/ 1 - Không/ Có" + }, + "info": { + "type": "string", + "description": "Thông báo" + }, + "maxPrice": { + "type": "number", + "description": "Giá cao nhất" + }, + "matchValue": { + "type": "number", + "description": "Giá trị khớp" + }, + "quote": { + "type": "string", + "description": "Trạng thái vào sở" + }, + "autoType": { + "type": "string", + "description": "Arbitrage --> lệnh Arbitrage" + }, + "product": { + "type": "string", + "description": "SL/TP --> lệnh SL/TP" + }, + "orderType": { + "type": "string", + "description": "- `F`: lệnh Force Close \n- `N`: lệnh thường\n" + }, + "source": { + "type": "string", + "description": "Check phân biệt lệnh:\n - `USER`: Lệnh user đặt\n - `SYS`: Lệnh hệ thống tự sinh (trường hợp lệnh sinh ra từ lệnh ĐK được kích hoạt)\n" + } + } + }, + "ListOrderConditionDerivativeResponse": { + "type": "object", + "properties": { + "orderNo": { + "type": "string", + "description": "Số hiệu lệnh" + }, + "groupOrder": { + "type": "string", + "description": "Nhóm lệnh (không sử dụng)" + }, + "pk_orderNo": { + "type": "string", + "description": "Key" + }, + "accountCode": { + "type": "string", + "description": "Số tài khoản" + }, + "side": { + "type": "string", + "description": "Loại vị thế\n- `B`: Long\n- `S`: Short\n" + }, + "symbol": { + "type": "string", + "description": "Mã hợp đồng" + }, + "showPrice": { + "type": "number", + "description": "Giá đặt" + }, + "volume": { + "type": "number", + "description": "khối lượng đặt" + }, + "condition": { + "type": "string", + "description": "(Không sử dụng)" + }, + "result": { + "type": "string", + "description": "Mã nếu trả về khi kích hoạt lệnh" + }, + "active_time": { + "type": "string", + "description": "thời gian kích hoạt" + }, + "send_time": { + "type": "string", + "description": "thời gian đặt" + }, + "cancel_time": { + "type": "string", + "description": "Thời gian hủy" + }, + "group": { + "type": "string", + "description": "Lệnh phái sinh" + }, + "channel": { + "type": "string", + "description": "Kênh" + }, + "maxPrice": { + "type": "string", + "description": "" + }, + "soPrice": { + "type": "number", + "description": "Giá stop price" + }, + "orderType": { + "type": "string", + "description": "Loại lệnh điều kiện\n`SU`: giá <=\n`SL`: giá >=\n" + }, + "from_time": { + "type": "string", + "description": "Có giá trị từ ngày" + }, + "exp_time": { + "type": "string", + "description": "Đến ngày" + }, + "status": { + "type": "string", + "description": "- `0`: Chờ kích hoạt\n- `1`: Đã kích hoạt\n- `2`: Đã hủy\n- `3`: Từ chối\n" + }, + "details": { + "type": "string", + "description": "- Nếu trường \"Notes\" = \"SL/TP\" hoặc Stop order thì hiển thị: Giá TT {orderType}{soPrice}\n\n orderType = SL\" \">=\"\n\n orderType = SU\" \"=<\"\n\n- Nếu trường \"Notes\"=\"Arbitrage\" thi hiển thị \"details\": \"VN30F2304\"\n" + }, + "notes": { + "type": "string", + "description": "Loại Lệnh: SL/TP; Stop order; Arbittrage" + } + } + }, + "OrderNormalDerivativeRequestDTO": { + "type": "object", + "required": [ + "subAccountId", + "accountId", + "side", + "symbol", + "price", + "volume", + "orderType", + "refId" + ], + "properties": { + "accountId": { + "type": "string", + "example": "105C031402", + "description": "Số tài khoản lưu ký" + }, + "subAccountId": { + "type": "string", + "example": "105C031402A", + "description": "Số tiểu khoản phái sinh" + }, + "side": { + "type": "string", + "example": "B", + "description": "Chiều mua (Buy) và bán (Sell)\n- `B`: mua\n- `S`: bán\n" + }, + "symbol": { + "type": "string", + "example": "VN30F2103", + "description": "Mã phái sinh" + }, + "price": { + "type": "number", + "format": "float", + "example": "1198.7", + "description": "Giá đặt (chặn trong khoảng trần sàn)\n\nBáo lỗi: Giá phải nằm trong khoảng trần sàn\n" + }, + "volume": { + "type": "integer", + "example": "10", + "description": "Số lượng" + }, + "advance": { + "type": "string", + "example": "", + "description": "Chưa dùng" + }, + "refId": { + "type": "string", + "example": "H.OWsC4418qYN59HXcvGtD3z", + "description": "Số ngẫu nhiên duy nhất xác định kênh đặt lệnh\n\nTheo định dạng: H.số tự sinh theo thứ tự\n" + }, + "orderType": { + "type": "string", + "example": "0", + "description": "- `0`: đặt lệnh thường\n- `SLP=1.0,0.8`: stop loss khi giá lệch 1.0, take profit khi giá lệch 0.8 \n- `ABI=mã HĐTL`: đặt lệnh đối ứng, mã HĐTL là mã user chọn tại trường \"Chọn hợp đồng\"\n" + }, + "pin": { + "type": "string", + "example": "H", + "description": "Kênh đặt lệnh" + } + }, + "title": "OrderNormalDerivativeRequestDTO" + }, + "EditOrderNormalDerivativeRequestDTO": { + "type": "object", + "required": [ + "accountId", + "subAccountId", + "orderNo", + "refId", + "nvol", + "nprice" + ], + "properties": { + "accountId": { + "type": "string", + "example": "105C031402", + "description": "Số TK lưu ký" + }, + "subAccountId": { + "type": "string", + "example": "105C031402A", + "description": "Số tiểu khoản phái sinh" + }, + "orderNo": { + "type": "string", + "example": "17", + "description": "truyền giá trị trường orderNo của api đặt lệnh thường" + }, + "refId": { + "type": "string", + "example": "000123.H.HH2104062", + "description": "Số tham chiếu" + }, + "nvol": { + "type": "number", + "example": "300", + "description": "Khối lượng mới, lớn hơn 0" + }, + "nprice": { + "type": "float", + "example": "56000.5", + "description": "Giá mới" + } + }, + "title": "EditOrderNormalDerivativeRequestDTO" + }, + "EditOrderConditionDerivativeRequestDTO": { + "type": "object", + "required": [ + "accountId", + "pkOrderNo", + "type", + "refId", + "soPrice" + ], + "properties": { + "accountId": { + "type": "string", + "example": "105C031402", + "description": "Số tài khoản lưu ký" + }, + "pkOrderNo": { + "type": "string", + "example": "901938", + "description": "Truyền giá trị trường “OrderNo” của api tra cứu sổ lệnh" + }, + "type": { + "type": "string", + "example": "", + "description": "" + }, + "refId": { + "type": "string", + "example": "000123.H.HH2104062", + "description": "Số tham chiếu" + }, + "soPrice": { + "type": "number", + "example": "1453.9", + "description": "Giá mới" + }, + "cmd": { + "type": "string", + "example": "Web.Order.ChangeCondition", + "description": "Loại bút toán" + } + }, + "title": "EditOrderConditionDerivativeRequestDTO" + }, + "OrderConditionDerivativeRequestDTO": { + "type": "object", + "required": [ + "subAccountId", + "accountId", + "side", + "symbol", + "price", + "volume", + "orderType", + "callbackPoint", + "activationPrice", + "soPrice" + ], + "properties": { + "accountId": { + "type": "string", + "example": "105C031402", + "description": "Số tài khoản lưu ký" + }, + "subAccountId": { + "type": "string", + "example": "105C031402A", + "description": "Số tiểu khoản phái sinh" + }, + "side": { + "type": "string", + "example": "B", + "description": "Chiều mua (Buy) và bán (Sell), chỉ nhận giá trị B/S" + }, + "symbol": { + "type": "string", + "example": "VN30F2110", + "description": "Mã phái sinh" + }, + "price": { + "type": "number", + "example": "117000", + "description": "Giá đặt" + }, + "volume": { + "type": "number", + "example": "300", + "description": "Số lượng, lớn hơn 0" + }, + "advance": { + "type": "string", + "example": "", + "description": "Chưa dùng" + }, + "refId": { + "type": "string", + "example": "", + "description": "Số chống trùng theo từng lệnh" + }, + "orderType": { + "type": "string", + "example": "SOL", + "description": "Lệnh điều kiện Stoporder: \n- `SOU`: Đặt lệnh khi giá thị trường <= \"gia thi truong\"\n- `SOL`: Đặt lệnh khi giá thị trường >= \"gia thi truong\"\n\nLệnh TrailingStop: TSO\n" + }, + "pin": { + "type": "string", + "example": "", + "description": "Kênh đặt lệnh" + }, + "type": { + "type": "string", + "example": "", + "description": "" + }, + "cmd": { + "type": "string", + "example": "", + "description": "Loại bút toán" + }, + "callbackPoint": { + "type": "number", + "example": "0.1", + "description": "Note: Sử dụng trong lệnh điều kiện Stop order\n\nChỉ hiển thị khi orderType ='TSO'\n\nBiên trượt (Ví dụ 0/1)\n" + }, + "activationPrice": { + "type": "number", + "example": "1505.7", + "description": "Note: Sử dụng trong lệnh điều kiện Stop order\n\nChỉ hiển thị khi orderType ='TSO'\n\nGiá kích hoạt\n" + }, + "soPrice": { + "type": "number", + "example": "1505.7", + "description": "Note: Sử dụng trong lệnh trailing Stop\n\nGiá kích hoạt\n" + } + }, + "title": "OrderConditionDerivativeRequestDTO" + }, + "OrderNormalDerivativeResponse": { + "type": "object", + "properties": { + "symbol": { + "type": "string", + "description": "Mã chứng khoán" + }, + "shareStatus": { + "type": "string", + "description": "" + }, + "status": { + "type": "string", + "description": "Trạng thái lệnh" + }, + "msg_type": { + "type": "string", + "description": "Loại event update" + }, + "showPrice": { + "type": "number", + "description": "Giá đặt" + }, + "orderTime": { + "type": "string", + "description": "Thời gian đặt" + }, + "type": { + "type": "string", + "description": "Loại update" + }, + "accountCode": { + "type": "string", + "description": "Số tài khoản" + }, + "orderNo": { + "type": "string", + "description": "Số hiệu lệnh" + }, + "market": { + "type": "string", + "description": "" + }, + "matchVolume": { + "type": "number", + "description": "Số lượng khớp" + }, + "side": { + "type": "string", + "description": "LONG/SHORT" + }, + "volume": { + "type": "number", + "description": "Số lượng đặt" + }, + "pk_orderNo": { + "type": "string", + "description": "Key lệnh (để hủy sửa)" + }, + "channel": { + "type": "string", + "description": "Kênh đặt" + }, + "refID": { + "type": "string", + "description": "" + }, + "group": { + "type": "string", + "description": "Nhóm" + }, + "accType": { + "type": "string", + "description": "" + }, + "quote": { + "type": "string", + "description": "Trạng thái GW" + }, + "autoType": { + "type": "string", + "description": "Loại lệnh" + }, + "product": { + "type": "string", + "description": "SL/TP" + } + } + }, + "EditOrderNormalDerivativeResponseDTO": { + "type": "object", + "properties": { + "orderNo": { + "type": "string", + "description": "Số hiệu lệnh" + }, + "msg_type": { + "type": "string", + "description": "Message" + }, + "status": { + "type": "string", + "description": "Trạng thái" + }, + "pk_orderNo": { + "type": "string", + "description": "Key" + }, + "volume": { + "type": "number", + "description": "Giá sửa" + }, + "showPrice": { + "type": "number", + "description": "Khối lượng sửa" + } + } + }, + "EditOrderConditionDerivativeResponseDTO": { + "type": "object", + "properties": { + "showPrice": { + "type": "string", + "description": "Giá kích hoạt" + }, + "price": { + "type": "string", + "description": "Giá đặt" + }, + "volume": { + "type": "string", + "description": "Khối lượng" + }, + "pkOrderNo": { + "type": "string", + "description": "Số hiệu lệnh" + }, + "notes": { + "type": "string", + "description": "Loại lệnh điều kiện" + } + } + }, + "OrderConditionDerivativeResponseDTO": { + "type": "object", + "properties": { + "symbol": { + "type": "string", + "description": "Mã chứng khoán" + }, + "shareStatus": { + "type": "string", + "description": "" + }, + "status": { + "type": "string", + "description": "Trạng thái lệnh" + }, + "msg_type": { + "type": "string", + "description": "Loại event update" + }, + "showPrice": { + "type": "number", + "description": "Giá đặt" + }, + "orderTime": { + "type": "string", + "description": "Thời gian đặt" + }, + "type": { + "type": "string", + "description": "Loại update" + }, + "accountCode": { + "type": "string", + "description": "Số tài khoản" + }, + "orderNo": { + "type": "integer", + "description": "Số hiệu lệnh" + }, + "market": { + "type": "string", + "description": "" + }, + "matchVolume": { + "type": "number", + "description": "Số lượng khớp" + }, + "side": { + "type": "string", + "description": "LONG/SHORT" + }, + "volume": { + "type": "number", + "description": "Số lượng đặt" + }, + "pk_orderNo": { + "type": "string", + "description": "Key lệnh (để hủy sửa)" + }, + "channel": { + "type": "string", + "description": "Kênh đặt" + }, + "refID": { + "type": "string", + "description": "" + }, + "group": { + "type": "string", + "description": "Nhóm" + }, + "accType": { + "type": "string", + "description": "" + }, + "quote": { + "type": "string", + "description": "Trạng thái GW" + }, + "autoType": { + "type": "string", + "description": "Loại lệnh đăng ký" + }, + "product": { + "type": "string", + "description": "SL/TP" + } + } + }, + "CancelOrderNormalDerivativeResponseDTO": { + "type": "object", + "properties": { + "orderNo": { + "type": "string", + "description": "Số hiệu lệnh" + }, + "msg_type": { + "type": "string", + "description": "Message" + }, + "status": { + "type": "string", + "description": "Trạng thái lệnh" + }, + "pk_orderNo": { + "type": "string", + "description": "Key" + }, + "cancelTime": { + "type": "string", + "description": "Thời gian hủy ghi nhận trên hệ thống" + } + } + }, + "CancelOrderConditionDerivativeResponseDTO": { + "type": "object" + }, + "CancelOrderNormalDerivativeRequestDTO": { + "type": "object", + "required": [ + "accountId", + "orderNo" + ], + "properties": { + "accountId": { + "type": "string", + "example": "105C031402", + "description": "Số tài khoản lưu ký" + }, + "orderNo": { + "type": "string", + "example": "1", + "description": "lấy orderNo trong API sổ lệnh thường" + }, + "cmd": { + "type": "string", + "example": "Web.cancelOrder", + "description": "Loại bút toán" + }, + "pin": { + "type": "string", + "example": "", + "description": "" + }, + "refId": { + "type": "string", + "example": "", + "description": "" + } + }, + "title": "CancelOrderNormalDerivativeRequestDTO" + }, + "CancelOrderConditionDerivativeRequestDTO": { + "type": "object", + "required": [ + "accountId", + "orderNo" + ], + "properties": { + "accountId": { + "type": "string", + "example": "105C031402", + "description": "Số tài khoản lưu kí" + }, + "subAccountId": { + "type": "string", + "example": "105C031402A", + "description": "Số tiểu khoản phái sinh" + }, + "orderNo": { + "type": "string", + "example": "1", + "description": "truyền giá trị pk_orderNo trong API sổ lệnh điều kiện" + } + }, + "title": "CancelOrderConditionDerivativeRequestDTO" + }, + "TransferBetweenSubaccountRequestDTO": { + "type": "object", + "required": [ + "sourceAccountNumber", + "destinationAccountNumber", + "amount", + "description" + ], + "properties": { + "sourceAccountNumber": { + "type": "string", + "example": "0001170730", + "description": "Tiểu khoản nguồn" + }, + "destinationAccountNumber": { + "type": "string", + "example": "105C738764A", + "description": "Tiểu khoản đích" + }, + "amount": { + "type": "number", + "example": "90000", + "description": "Số tiền chuyển" + }, + "description": { + "type": "number", + "example": "CHUYEN TIEN PHAI SINH", + "description": "Nội dung chuyển tiền" + } + }, + "title": "TransferBetweenSubaccountRequestDTO" + }, + "WithdrawalDerivativeRequestDTO": { + "type": "object", + "required": [ + "accountId", + "subAccountId", + "amount" + ], + "properties": { + "accountId": { + "type": "string", + "example": "105C000113", + "description": "Số tài khoản lưu kí" + }, + "subAccountId": { + "type": "string", + "example": "105C000113A", + "description": "Số tài khoản phái sinh" + }, + "amount": { + "type": "number", + "example": 1500000, + "description": "Số tiền rút ký quỹ" + }, + "paymentContent": { + "type": "number", + "example": "RUT TIEN KY QUY", + "description": "Nội dung rút tiền" + } + }, + "title": "WithdrawalDerivativeRequestDTO" + }, + "DepositDerivativeRequestDTO": { + "type": "object", + "required": [ + "accountId", + "subAccountId", + "amount" + ], + "properties": { + "accountId": { + "type": "string", + "example": "105C000113", + "description": "Số tài khoản lưu kí" + }, + "subAccountId": { + "type": "string", + "example": "105C000113A", + "description": "Số tài khoản phái sinh" + }, + "amount": { + "type": "number", + "example": 1500000, + "description": "Số tiền nộp ký quỹ" + }, + "paymentContent": { + "type": "number", + "example": "NAP TIEN KY QUY", + "description": "Nội dung nộp tiền" + } + }, + "title": "DepositDerivativeRequestDTO" + }, + "DepositDerivativeResponseDTO": { + "type": "object", + "properties": { + "transactionId": { + "type": "string", + "description": "Mã giao dịch" + } + } + }, + "MarketInformationDerivativeResponseDTO": { + "type": "object", + "properties": { + "symbol": { + "type": "string", + "description": "Mã Hợp đồng", + "example": "VN30F2412" + }, + "ceilPrice": { + "type": "number", + "description": "Giá trần", + "example": 1614.6 + }, + "floorPrice": { + "type": "number", + "description": "Giá sàn", + "example": 1403.4 + }, + "refPrice": { + "type": "number", + "description": "Giá tham chiếu", + "example": 1509 + }, + "bidPrice01": { + "type": "number", + "description": "Dư mua/giá 1", + "example": 1499.5 + }, + "bidPrice02": { + "type": "number", + "description": "Dư mua/giá 2", + "example": 1499.3 + }, + "bidPrice03": { + "type": "number", + "description": "Dư mua/giá 3", + "example": 1499.2 + }, + "bidQtty01": { + "type": "number", + "description": "Dư mua/khối lượng 1", + "example": 1 + }, + "bidQtty02": { + "type": "number", + "description": "Dư mua/khối lượng 2", + "example": 3 + }, + "bidQtty03": { + "type": "number", + "description": "Dư mua/khối luượng 3", + "example": 1 + }, + "offerPrice01": { + "type": "number", + "description": "Dư bán/giá 1", + "example": 1500.5 + }, + "offerPrice02": { + "type": "number", + "description": "Dư bán/giá 2", + "example": 1500.7 + }, + "offerPrice03": { + "type": "number", + "description": "Dư bán/giá 3", + "example": 1500.8 + }, + "offerQtty01": { + "type": "number", + "description": "Dư bán/khối lượng 1", + "example": 1 + }, + "offerQtty02": { + "type": "number", + "description": "Dư bán/khối lượng 2", + "example": 1 + }, + "offerQtty03": { + "type": "number", + "description": "Dư bán/khối lượng 3", + "example": 1 + }, + "matchPrice": { + "type": "number", + "description": "Giá khớp", + "example": 1500.6 + }, + "matchQtty": { + "type": "number", + "description": "Khối lượng khớp", + "example": 1 + }, + "change": { + "type": "number", + "description": "Thay đổi", + "example": -8.4 + }, + "changePercent": { + "type": "number", + "description": "% thay đổi", + "example": -0.5566600397614314 + }, + "open": { + "type": "number", + "description": "Giá mở cửa ", + "example": 1508 + }, + "high": { + "type": "number", + "description": "Giá cao ", + "example": 1509.4 + }, + "low": { + "type": "number", + "description": "Giá thấp ", + "example": 1497 + }, + "totalVol": { + "type": "number", + "description": "Tổng khối lượng", + "example": 370 + }, + "openVol": { + "type": "number", + "description": "Khối lượng mở", + "example": 897 + }, + "buyForeignQtty": { + "type": "number", + "description": "Nhà đầu tư nước ngoài mua", + "example": 30 + }, + "sellForeignQtty": { + "type": "number", + "description": "Nhà đầu tư nước ngoài bán", + "example": 58 + }, + "expiryDate": { + "type": "string", + "description": "Ngày đáo hạn", + "example": "18/11/2021" + }, + "avg": { + "type": "number", + "description": "Giá trung bình", + "example": 150417189.189189 + } + } + }, + "MarketInformationStockNormalResponseDTO": { + "type": "object", + "properties": { + "symbol": { + "type": "string", + "description": "Mã cổ phiếu", + "example": "FPT" + }, + "ceilPrice": { + "type": "number", + "description": "Giá trần", + "example": 1614.6 + }, + "floorPrice": { + "type": "number", + "description": "Giá sàn", + "example": 1403.4 + }, + "refPrice": { + "type": "number", + "description": "Giá tham chiếu", + "example": 1509 + }, + "bidPrice01": { + "type": "number", + "description": "Dư mua/giá 1", + "example": 1499.5 + }, + "bidPrice02": { + "type": "number", + "description": "Dư mua/giá 2", + "example": 1499.3 + }, + "bidPrice03": { + "type": "number", + "description": "Dư mua/giá 3", + "example": 1499.2 + }, + "bidQtty01": { + "type": "number", + "description": "Dư mua/khối lượng 1", + "example": 1 + }, + "bidQtty02": { + "type": "number", + "description": "Dư mua/khối lượng 2", + "example": 3 + }, + "bidQtty03": { + "type": "number", + "description": "Dư mua/khối luượng 3", + "example": 1 + }, + "offerPrice01": { + "type": "number", + "description": "Dư bán/giá 1", + "example": 1500.5 + }, + "offerPrice02": { + "type": "number", + "description": "Dư bán/giá 2", + "example": 1500.7 + }, + "offerPrice03": { + "type": "number", + "description": "Dư bán/giá 3", + "example": 1500.8 + }, + "offerQtty01": { + "type": "number", + "description": "Dư bán/khối lượng 1", + "example": 1 + }, + "offerQtty02": { + "type": "number", + "description": "Dư bán/khối lượng 2", + "example": 1 + }, + "offerQtty03": { + "type": "number", + "description": "Dư bán/khối lượng 3", + "example": 1 + }, + "matchPrice": { + "type": "number", + "description": "Giá khớp", + "example": 1500.6 + }, + "matchQtty": { + "type": "number", + "description": "Khối lượng khớp", + "example": 1 + }, + "change": { + "type": "number", + "description": "Thay đổi", + "example": -8.4 + }, + "changePercent": { + "type": "number", + "description": "% thay đổi", + "example": -0.5566600397614314 + }, + "open": { + "type": "number", + "description": "Giá mở cửa ", + "example": 1508 + }, + "high": { + "type": "number", + "description": "Giá cao ", + "example": 1509.4 + }, + "low": { + "type": "number", + "description": "Giá thấp ", + "example": 1497 + }, + "totalVol": { + "type": "number", + "description": "Tổng khối lượng", + "example": 370 + }, + "totalVal": { + "type": "number", + "description": "Tổng gi trị", + "example": 370 + }, + "openVol": { + "type": "number", + "description": "Khối lượng mở", + "example": 897 + }, + "buyForeignQtty": { + "type": "number", + "description": "Nhà đầu tư nước ngoài mua", + "example": 30 + }, + "sellForeignQtty": { + "type": "number", + "description": "Nhà đầu tư nước ngoài bán", + "example": 58 + }, + "room": { + "type": "string", + "description": "Room nước ngoài", + "example": "84" + }, + "avg": { + "type": "number", + "description": "Giá trung bình", + "example": 150417189.189189 + }, + "indexNumber": { + "type": "number", + "description": "Rổ chứng khoán: \n- `1`: Hose\n- `2`: VN30\n- `3`: HNX\n- `4`. HNX30\n- `5`: Upcom\n- `10`:Midcap\n- `11`:Vn100\n- `12`:Vnallshare\n- `13`:VNsmallcap\n- `14`:VNxallshare\n- `15`:Vn50\n- `16`:Vnsi\n", + "example": 1 + } + } + }, + "MarketInformationForeignIndexResponseDTO": { + "type": "object", + "properties": { + "symbol": { + "type": "string", + "description": "Mã cổ phiếu", + "example": "FPT" + }, + "ceilPrice": { + "type": "number", + "description": "Giá trần", + "example": 1614.6 + }, + "floorPrice": { + "type": "number", + "description": "Giá sàn", + "example": 1403.4 + }, + "refPrice": { + "type": "number", + "description": "Giá tham chiếu", + "example": 1509 + }, + "bidPrice01": { + "type": "number", + "description": "Dư mua/giá 1", + "example": 1499.5 + }, + "bidPrice02": { + "type": "number", + "description": "Dư mua/giá 2", + "example": 1499.3 + }, + "bidPrice03": { + "type": "number", + "description": "Dư mua/giá 3", + "example": 1499.2 + }, + "bidQtty01": { + "type": "number", + "description": "Dư mua/khối lượng 1", + "example": 1 + }, + "bidQtty02": { + "type": "number", + "description": "Dư mua/khối lượng 2", + "example": 3 + }, + "bidQtty03": { + "type": "number", + "description": "Dư mua/khối luượng 3", + "example": 1 + }, + "offerPrice01": { + "type": "number", + "description": "Dư bán/giá 1", + "example": 1500.5 + }, + "offerPrice02": { + "type": "number", + "description": "Dư bán/giá 2", + "example": 1500.7 + }, + "offerPrice03": { + "type": "number", + "description": "Dư bán/giá 3", + "example": 1500.8 + }, + "offerQtty01": { + "type": "number", + "description": "Dư bán/khối lượng 1", + "example": 1 + }, + "offerQtty02": { + "type": "number", + "description": "Dư bán/khối lượng 2", + "example": 1 + }, + "offerQtty03": { + "type": "number", + "description": "Dư bán/khối lượng 3", + "example": 1 + }, + "matchPrice": { + "type": "number", + "description": "Giá khớp", + "example": 1500.6 + }, + "matchQtty": { + "type": "number", + "description": "Khối lượng khớp", + "example": 1 + }, + "change": { + "type": "number", + "description": "Thay đổi", + "example": -8.4 + }, + "changePercent": { + "type": "number", + "description": "% thay đổi", + "example": -0.5566600397614314 + }, + "open": { + "type": "number", + "description": "Giá mở cửa ", + "example": 1508 + }, + "high": { + "type": "number", + "description": "Giá cao ", + "example": 1509.4 + }, + "low": { + "type": "number", + "description": "Giá thấp ", + "example": 1497 + }, + "totalVolume": { + "type": "number", + "description": "Tổng khối lượng", + "example": 370 + }, + "totalValue": { + "type": "number", + "description": "Tổng gi trị", + "example": 370 + }, + "buyForeignQtty": { + "type": "number", + "description": "Nhà đầu tư nước ngoài mua", + "example": 30 + }, + "sellForeignQtty": { + "type": "number", + "description": "Nhà đầu tư nước ngoài bán", + "example": 58 + }, + "room": { + "type": "string", + "description": "Room nước ngoài", + "example": "84" + }, + "avg": { + "type": "number", + "description": "Giá trung bình", + "example": 150417189.189189 + } + } + }, + "PTAdvertisementResponseDTO": { + "type": "object", + "properties": { + "symbol": { + "type": "string", + "description": "Mã cổ phiếu", + "example": "FPT" + }, + "price": { + "type": "number", + "description": "Giá", + "example": 1614.6 + }, + "vol": { + "type": "number", + "description": "Khối lượng", + "example": 1403.4 + }, + "time": { + "type": "string", + "description": "Thời gian", + "example": "20231220-02:16:13.588" + }, + "status": { + "type": "number", + "description": "Trạng thái", + "example": 1 + }, + "color": { + "type": "number", + "description": "\"Màu\":\n Giá khớp = giá Sàn: 1\n Giá khớp = giá Tham chiếu: 2\n Giá khớp = Trần: 3\n Giá Sàn 200M" + }, + "pcp": { + "type": "number", + "description": "Thay đổi so với lệnh khớp trước" + }, + "t": { + "type": "string", + "description": "thời gian nhận lệnh từ sở" + } + } + }, + "SupplyAndDemand15mResponse": { + "type": "object", + "properties": { + "bu": { + "type": "number", + "description": "Khối lượng mua tích cực" + }, + "bms": { + "type": "number", + "description": "Tổng tích lũy mua" + }, + "bup": { + "type": "number", + "description": "Tỷ lệ % mua tích cực" + }, + "sd": { + "type": "number", + "description": "Khối lượng bán tiêu cực" + }, + "sms": { + "type": "string", + "description": "Tổng tích lũy bán" + }, + "sdp": { + "type": "number", + "description": "Tỷ lệ % bán tiêu cực" + }, + "bsr": { + "type": "number", + "description": "Tỷ lệ mua/bán" + }, + "t": { + "type": "string", + "description": "Thời gian giao dịch (HH:mm:ss GMT+7)" + }, + "s": { + "type": "number", + "description": "Thời gian giao dịch (dạng number)" + } + } + }, + "SupplyAndDemandResponse": { + "type": "object", + "properties": { + "bup": { + "type": "number", + "description": "Tỷ lệ % mua tích cực" + }, + "sdp": { + "type": "number", + "description": "Tỷ lệ % bán tiêu cực" + }, + "bsr": { + "type": "number", + "description": "Tỷ lệ mua/bán" + }, + "t": { + "type": "string", + "description": "Thời gian giao dịch" + } + } + } + }, + "securitySchemes": { + "BearerAuth": { + "type": "http", + "scheme": "bearer", + "bearerFormat": "JWT" + } + } + }, + "tags": [ + { + "name": "workflow_diagram", + "description": "![Sequence Diagram](../image/openapi.png)\n### Đăng ký sử dụng iFlash Open API\n- Đối tác vui lòng liên hệ TCBS để đăng ký dịch vụ và nhận cặp khóa bí mật Client Id và Client Secret. (Liên hệ TCBS để biết thêm chi tiết).\n### Đăng ký lấy API Key\n- Menu trái --> Tiện ích --> iFlash Open API\n- URL: https://tcinvest.tcbs.com.vn/iflash-open-api\n![Register API Key](../image/register_apikey.png)\n![Show API Key](../image/show_apikey.png)\n### Lấy Token\n- Khách hàng sử dụng API Key đã lấy ở mục 1.1 + iOTP để lấy Token sử dụng khi call các API nghiệp vụ\n### Thời gian hiệu lực của Mã truy cập (Access Token) là bao lâu?\n- Mã truy cập (Access Token) có hiệu lực tối đa 8 giờ kể từ khi nhận được xác thực iOTP từ ứng dụng TCInvest. Khi Mã truy cập hết hạn, Quý khách cần lấy Mã truy cập mới để đảm bảo việc sử dụng không bị gián đoạn.\n### Huỷ API Key\n![Show API Key](../image/revoke_apikey.png)\n", + "x-displayName": "1.1. Sơ đồ hoạt động" + }, + { + "name": "authen", + "x-displayName": "2.1. Xác thực" + }, + { + "name": "account", + "x-displayName": "3.1 Thông tin tài khoản" + }, + { + "name": "money", + "x-displayName": "4.1. Tiền" + }, + { + "name": "order_stock_normal", + "x-displayName": "5.1. Đặt lệnh" + }, + { + "name": "update_order_stock_normal", + "x-displayName": "5.2. Sửa lệnh" + }, + { + "name": "cancel_order_stock_normal", + "x-displayName": "5.3. Huỷ lệnh" + }, + { + "name": "get_order_stock_normal", + "x-displayName": "5.4. Tra cứu sổ lệnh" + }, + { + "name": "purchasing_power_stock_normal", + "x-displayName": "5.5. Sức mua" + }, + { + "name": "get_asset_stock_normal", + "x-displayName": "5.6. Tài sản cổ phiếu" + }, + { + "name": "market_information_stock_normal", + "x-displayName": "5.7. Thông tin thị trường" + }, + { + "name": "total_cash_derivative", + "x-displayName": "6.1. Tra cứu thông tin tiền" + }, + { + "name": "asset_derivative", + "x-displayName": "6.2. Tra cứu tài sản phái sinh" + }, + { + "name": "get_order_derivative", + "x-displayName": "6.3. Tra cứu sổ lệnh" + }, + { + "name": "order_derivative", + "x-displayName": "6.4. Đặt lệnh" + }, + { + "name": "edit_order_derivative", + "x-displayName": "6.5. Sửa lệnh" + }, + { + "name": "cancel_order_derivative", + "x-displayName": "6.6. Huỷ lệnh" + }, + { + "name": "market_information_derivative", + "x-displayName": "6.7. Thông tin thị trường" + } + ], + "x-tagGroups": [ + { + "name": "workflow_diagram_level1", + "x-displayName": "1. Sơ đồ hoạt động", + "tags": [ + "workflow_diagram" + ] + }, + { + "name": "authen_level1", + "x-displayName": "2. Xác thực", + "tags": [ + "authen" + ] + }, + { + "name": "account_level1", + "x-displayName": "3. Tài khoản", + "tags": [ + "account" + ] + }, + { + "name": "money_level1", + "x-displayName": "4. Tiền", + "tags": [ + "money" + ] + }, + { + "name": "stock_normal_level1", + "x-displayName": "5. Chứng khoán cơ sở", + "tags": [ + "order_stock_normal", + "update_order_stock_normal", + "cancel_order_stock_normal", + "get_order_stock_normal", + "purchasing_power_stock_normal", + "get_asset_stock_normal", + "market_information_stock_normal" + ] + }, + { + "name": "derivative_level1", + "x-displayName": "6. Phái sinh", + "tags": [ + "total_cash_derivative", + "asset_derivative", + "get_order_derivative", + "order_derivative", + "edit_order_derivative", + "cancel_order_derivative", + "market_information_derivative" + ] + } + ], + "security": [ + { + "BearerAuth": [] + } + ] +} \ No newline at end of file