tcbs-api 1.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
tcbs_api/__init__.py ADDED
@@ -0,0 +1,6 @@
1
+ """Python client library for the TCBS Open API.
2
+
3
+ See the official API documentation at https://developers.tcbs.com.vn/.
4
+ """
5
+
6
+ __version__ = "1.0.0"
File without changes
@@ -0,0 +1 @@
1
+ from .account_information_response import *
@@ -0,0 +1,71 @@
1
+ from dataclasses import dataclass, field
2
+ from typing import List, Optional
3
+
4
+
5
+ @dataclass
6
+ class BasicInfo:
7
+ tcbsId: Optional[str] = None
8
+ code105C: Optional[str] = None
9
+ status: Optional[str] = None
10
+ type: Optional[str] = None
11
+ depository: Optional[bool] = None
12
+
13
+
14
+ @dataclass
15
+ class PersonalInfo:
16
+ fullName: Optional[str] = None
17
+ fullNameNoAccent: Optional[str] = None
18
+ firstName: Optional[str] = None
19
+ lastName: Optional[str] = None
20
+ email: Optional[str] = None
21
+ phoneNumber: Optional[str] = None
22
+ gender: Optional[str] = None
23
+ birthday: Optional[str] = None
24
+ contactAddress: Optional[str] = None
25
+ permanentAddress: Optional[str] = None
26
+ nationality: Optional[str] = None
27
+ nationalityName: Optional[str] = None
28
+ taxIdNumber: Optional[str] = None
29
+ acronym: Optional[str] = None
30
+ createdDate: Optional[str] = None
31
+ updatedDate: Optional[str] = None
32
+ flowOpenAccount: Optional[str] = None
33
+ avatarUrl: Optional[str] = None
34
+ businessType: Optional[str] = None
35
+ ppBusinessType: Optional[str] = None
36
+ ppBusinessField: Optional[str] = None
37
+ ppBusinessTypeName: Optional[str] = None
38
+ ppBusinessFieldName: Optional[str] = None
39
+ identityCard: Optional[dict] = None
40
+
41
+
42
+ @dataclass
43
+ class BankAccount:
44
+ accountNo: Optional[str] = None
45
+ accountName: Optional[str] = None
46
+ accountNameNoAccent: Optional[str] = None
47
+ bankCode: Optional[str] = None
48
+ bankName: Optional[str] = None
49
+ branchCode: Optional[str] = None
50
+ bankType: Optional[str] = None
51
+ bankSys: Optional[str] = None
52
+ authorized: Optional[bool] = None
53
+ bankAccountType: Optional[str] = None
54
+
55
+
56
+ @dataclass
57
+ class BankSubAccount:
58
+ accountNo: Optional[str] = None
59
+ accountName: Optional[str] = None
60
+ accountType: Optional[str] = None
61
+ accountTypeName: Optional[str] = None
62
+ status: Optional[str] = None
63
+ isDefault: Optional[str] = None
64
+
65
+
66
+ @dataclass
67
+ class AccountInformationResponse:
68
+ basicInfo: Optional[BasicInfo] = None
69
+ personalInfo: Optional[PersonalInfo] = None
70
+ bankAccounts: Optional[List[BankAccount]] = field(default_factory=list)
71
+ bankSubAccounts: Optional[List[BankSubAccount]] = field(default_factory=list)
@@ -0,0 +1 @@
1
+ from .token_response_dto import *
@@ -0,0 +1,7 @@
1
+ from dataclasses import dataclass
2
+ from typing import Optional
3
+
4
+
5
+ @dataclass
6
+ class TokenResponseDto:
7
+ token: Optional[str] = None
@@ -0,0 +1 @@
1
+ from .derivative_dto import *
@@ -0,0 +1,352 @@
1
+ from dataclasses import dataclass
2
+ from typing import Generic, List, Optional, TypeVar
3
+
4
+ from dataclasses_json import dataclass_json
5
+
6
+ T = TypeVar("T")
7
+
8
+
9
+ @dataclass_json
10
+ @dataclass
11
+ class DerivativeResponse(Generic[T]):
12
+ cmd: str
13
+ rc: str
14
+ rs: str
15
+ oID: str
16
+ data: T
17
+
18
+
19
+ @dataclass_json
20
+ @dataclass
21
+ class TotalCashDerivativeResponse:
22
+ cash: Optional[float]
23
+ stock: Optional[float]
24
+ collateral: Optional[float]
25
+ type: Optional[str]
26
+ net: Optional[float]
27
+ tyle: Optional[float]
28
+ im: Optional[float]
29
+ vm: Optional[float]
30
+ dm: Optional[float]
31
+ mr: Optional[float]
32
+ avaiCash: Optional[float]
33
+ avaiColla: Optional[float]
34
+ vmunpay: Optional[float]
35
+ info: Optional[str]
36
+ color: Optional[str]
37
+ vm_eod: Optional[float]
38
+ others: Optional[float]
39
+ tax: Optional[float]
40
+ feeCTCK: Optional[float]
41
+ feeHNX: Optional[float]
42
+ cashWithdraw: Optional[float]
43
+ tienbosung: Optional[float]
44
+ cashavaiwithdraw: Optional[float]
45
+ assets: Optional[float]
46
+ nav: Optional[float]
47
+ cashOut: Optional[float]
48
+ unrelizeVM: Optional[float]
49
+ feePos: Optional[float]
50
+ feeMan: Optional[float]
51
+ product: Optional[str]
52
+ status: Optional[str]
53
+ debt: Optional[float]
54
+ w1: Optional[float]
55
+ w2: Optional[float]
56
+ limit: Optional[float]
57
+ package: Optional[str]
58
+
59
+
60
+ @dataclass_json
61
+ @dataclass
62
+ class AssetPositionCloseDerivativeResponse:
63
+ symbol: str
64
+ side: str
65
+ openPrice: float
66
+ closePrice: float
67
+ closePosition: str
68
+ fee: float
69
+ tax: float
70
+ closeVM: float
71
+ unrealize: float
72
+ closePC: float
73
+ time: str
74
+
75
+
76
+ @dataclass_json
77
+ @dataclass
78
+ class AssetPositionOpenDerivativeResponse:
79
+ symbol: str
80
+ im: str
81
+ deliver: str
82
+ receive: str
83
+ net: int
84
+ side: str
85
+ account: str
86
+ wasp: float
87
+ wapb: float
88
+ lastPrice: float
89
+ imValue: float
90
+ vmValue: float
91
+ mrValue: float
92
+ duedate: str
93
+ netoffvol: int
94
+ avg_remain: float
95
+ vm_remain: float
96
+ pc_remain: str
97
+ stoploss: Optional[str]
98
+ takeprofit: Optional[str]
99
+
100
+
101
+ @dataclass_json
102
+ @dataclass
103
+ class ListOrderNormalDerivativeResponse:
104
+ orderNo: str
105
+ pk_orderNo: str
106
+ orderTime: str
107
+ accountCode: str
108
+ side: str
109
+ symbol: str
110
+ volume: int
111
+ showPrice: float
112
+ matchVolume: int
113
+ matchPriceBQ: float
114
+ status: str
115
+ orderStatus: str
116
+ channel: str
117
+ group: str
118
+ cancelTime: Optional[str]
119
+ isCancel: bool
120
+ isAmend: bool
121
+ info: Optional[str]
122
+ maxPrice: Optional[float]
123
+ matchValue: Optional[float]
124
+ quote: Optional[str]
125
+ autoType: Optional[str]
126
+ product: Optional[str]
127
+ orderType: Optional[str]
128
+ source: Optional[str]
129
+
130
+
131
+ @dataclass_json
132
+ @dataclass
133
+ class ListOrderConditionDerivativeResponse:
134
+ orderNo: str
135
+ groupOrder: str
136
+ pk_orderNo: str
137
+ accountCode: str
138
+ side: str
139
+ symbol: str
140
+ showPrice: float
141
+ volume: int
142
+ condition: str
143
+ result: str
144
+ active_time: str
145
+ send_time: str
146
+ cancel_time: Optional[str]
147
+ group: str
148
+ channel: str
149
+ maxPrice: Optional[float]
150
+ soPrice: float
151
+ orderType: str
152
+ from_time: str
153
+ exp_time: str
154
+ status: str
155
+ details: str
156
+ notes: str
157
+
158
+
159
+ @dataclass_json
160
+ @dataclass
161
+ class OrderNormalDerivativeResponse:
162
+ symbol: str
163
+ status: str
164
+ msg_type: str
165
+ showPrice: float
166
+ orderTime: str
167
+ type: str
168
+ accountCode: str
169
+ orderNo: str
170
+ matchVolume: float
171
+ side: str
172
+ volume: float
173
+ pk_orderNo: str
174
+ channel: str
175
+ group: str
176
+ quote: str
177
+ accType: Optional[str] = None
178
+ shareStatus: Optional[str] = None
179
+ market: Optional[str] = None
180
+ refID: Optional[str] = None
181
+ autoType: Optional[str] = None
182
+ product: Optional[str] = None
183
+
184
+
185
+ @dataclass
186
+ class PlaceOrderDto:
187
+ accountId: str
188
+ subAccountId: str
189
+ side: str
190
+ symbol: str
191
+ price: float
192
+ volume: int
193
+ refId: str
194
+ orderType: str
195
+ advance: Optional[int] = None
196
+ pin: Optional[str] = None
197
+
198
+
199
+ @dataclass
200
+ class OrderConditionDerivativeRequestDTO:
201
+ subAccountId: str
202
+ accountId: str
203
+ side: str
204
+ symbol: str
205
+ price: float
206
+ volume: float
207
+ orderType: str
208
+ callbackPoint: float
209
+ activationPrice: float
210
+ soPrice: float
211
+ advance: Optional[str] = None
212
+ refId: Optional[str] = None
213
+ pin: Optional[str] = None
214
+ type: Optional[str] = None
215
+ cmd: Optional[str] = None
216
+
217
+
218
+ @dataclass_json
219
+ @dataclass
220
+ class OrderConditionDerivativeResponseDTO:
221
+ symbol: str
222
+ status: str
223
+ msg_type: str
224
+ showPrice: float
225
+ orderTime: str
226
+ type: str
227
+ accountCode: str
228
+ orderNo: int
229
+ matchVolume: float
230
+ side: str
231
+ volume: float
232
+ pk_orderNo: str
233
+ channel: str
234
+ group: str
235
+ quote: str
236
+ shareStatus: Optional[str] = None
237
+ market: Optional[str] = None
238
+ refID: Optional[str] = None
239
+ accType: Optional[str] = None
240
+ autoType: Optional[str] = None
241
+ product: Optional[str] = None
242
+
243
+
244
+ @dataclass
245
+ class EditOrderNormalDerivativeRequestDTO:
246
+ accountId: str
247
+ subAccountId: str
248
+ orderNo: str
249
+ refId: str
250
+ nvol: float
251
+ nprice: float
252
+
253
+
254
+ @dataclass_json
255
+ @dataclass
256
+ class EditOrderNormalDerivativeResponseDTO:
257
+ orderNo: str
258
+ msg_type: str
259
+ status: str
260
+ pk_orderNo: str
261
+ volume: float
262
+ showPrice: float
263
+
264
+
265
+ @dataclass
266
+ class EditOrderConditionDerivativeRequestDTO:
267
+ accountId: str
268
+ pkOrderNo: str
269
+ type: str
270
+ refId: str
271
+ soPrice: float
272
+ cmd: Optional[str] = None
273
+
274
+
275
+ @dataclass_json
276
+ @dataclass
277
+ class EditOrderConditionDerivativeResponseDTO:
278
+ showPrice: str
279
+ price: str
280
+ volume: str
281
+ pkOrderNo: str
282
+ notes: str
283
+
284
+
285
+ @dataclass
286
+ class CancelOrderNormalDerivativeRequestDTO:
287
+ accountId: str
288
+ orderNo: str
289
+ cmd: Optional[str] = None
290
+ pin: Optional[str] = None
291
+ refId: Optional[str] = None
292
+
293
+
294
+ @dataclass_json
295
+ @dataclass
296
+ class CancelOrderNormalDerivativeResponseDTO:
297
+ orderNo: str
298
+ msg_type: Optional[str] = None
299
+ status: Optional[str] = None
300
+ pk_orderNo: Optional[str] = None
301
+ cancelTime: Optional[str] = None
302
+
303
+
304
+ @dataclass
305
+ class CancelOrderConditionDerivativeRequestDTO:
306
+ accountId: str
307
+ orderNo: str
308
+ subAccountId: Optional[str] = None
309
+
310
+
311
+ @dataclass_json
312
+ @dataclass
313
+ class CancelOrderConditionDerivativeResponseDTO:
314
+ pass
315
+
316
+
317
+ @dataclass
318
+ class MarketInformationDerivativeResponseDTO:
319
+ symbol: Optional[str] = None
320
+ ceilPrice: Optional[float] = None
321
+ floorPrice: Optional[float] = None
322
+ refPrice: Optional[float] = None
323
+ bidPrice01: Optional[float] = None
324
+ bidPrice02: Optional[float] = None
325
+ bidPrice03: Optional[float] = None
326
+ bidQtty01: Optional[float] = None
327
+ bidQtty02: Optional[float] = None
328
+ bidQtty03: Optional[float] = None
329
+ offerPrice01: Optional[float] = None
330
+ offerPrice02: Optional[float] = None
331
+ offerPrice03: Optional[float] = None
332
+ offerQtty01: Optional[float] = None
333
+ offerQtty02: Optional[float] = None
334
+ offerQtty03: Optional[float] = None
335
+ matchPrice: Optional[float] = None
336
+ matchQtty: Optional[float] = None
337
+ change: Optional[float] = None
338
+ changePercent: Optional[float] = None
339
+ open: Optional[float] = None
340
+ high: Optional[float] = None
341
+ low: Optional[float] = None
342
+ totalVol: Optional[float] = None
343
+ openVol: Optional[float] = None
344
+ buyForeignQtty: Optional[float] = None
345
+ sellForeignQtty: Optional[float] = None
346
+ expiryDate: Optional[str] = None
347
+ avg: Optional[float] = None
348
+
349
+
350
+ @dataclass
351
+ class MarketInformationResponseDTO:
352
+ data: List[MarketInformationDerivativeResponseDTO]
@@ -0,0 +1 @@
1
+ from .money import *
@@ -0,0 +1,55 @@
1
+ from dataclasses import dataclass
2
+ from typing import List
3
+
4
+
5
+ @dataclass
6
+ class TransferBetweenSubaccountRequestDTO:
7
+ sourceAccountNumber: str
8
+ destinationAccountNumber: str
9
+ amount: float
10
+ description: str
11
+
12
+
13
+ @dataclass
14
+ class TransferBetweenSubaccountResponseDTO:
15
+ code: str
16
+ message: str
17
+
18
+
19
+ @dataclass
20
+ class WithdrawalDerivativeRequestDTO:
21
+ accountId: str
22
+ subAccountId: str
23
+ amount: float
24
+ paymentContent: str
25
+
26
+
27
+ @dataclass
28
+ class WithdrawalDerivativeResponseDTO:
29
+ cmd: str
30
+ rc: str
31
+ rs: str
32
+ oID: str
33
+ data: list
34
+
35
+
36
+ @dataclass
37
+ class DepositDerivativeRequestDTO:
38
+ accountId: str
39
+ subAccountId: str
40
+ amount: float
41
+ paymentContent: str
42
+
43
+
44
+ @dataclass
45
+ class DepositDerivativeResponseDTO:
46
+ transactionId: str
47
+
48
+
49
+ @dataclass
50
+ class DepositDerivativeMarginResponseDTO:
51
+ cmd: str
52
+ rc: str
53
+ rs: str
54
+ oID: str
55
+ data: List[DepositDerivativeResponseDTO]
@@ -0,0 +1 @@
1
+ from .stock_normal_dto import *