1use clap::Args;
4
5#[derive(Args)]
6pub struct FundsArgs {
7 #[arg(short, long)]
14 pub(crate) market: Option<String>,
15
16 #[arg(long)]
18 pub(crate) acc_id: Option<u64>,
19
20 #[arg(long = "card-num")]
22 pub(crate) card_num: Option<String>,
23
24 #[arg(short, long, default_value = "real")]
26 pub(crate) env: String,
27
28 #[arg(long)]
32 pub(crate) currency: Option<String>,
33}
34
35#[derive(Args)]
36pub struct PositionArgs {
37 #[arg(short, long)]
38 pub(crate) market: String,
39
40 #[arg(long)]
41 pub(crate) acc_id: Option<u64>,
42
43 #[arg(long = "card-num")]
45 pub(crate) card_num: Option<String>,
46
47 #[arg(short, long, default_value = "real")]
48 pub(crate) env: String,
49}
50
51#[derive(Args)]
52pub struct OrderArgs {
53 #[arg(short, long)]
54 pub(crate) market: String,
55
56 #[arg(long)]
57 pub(crate) acc_id: Option<u64>,
58
59 #[arg(long = "card-num")]
61 pub(crate) card_num: Option<String>,
62
63 #[arg(short, long, default_value = "real")]
64 pub(crate) env: String,
65}
66
67#[derive(Args)]
68pub struct DealArgs {
69 #[arg(short, long)]
70 pub(crate) market: String,
71
72 #[arg(long)]
73 pub(crate) acc_id: Option<u64>,
74
75 #[arg(long = "card-num")]
77 pub(crate) card_num: Option<String>,
78
79 #[arg(short, long, default_value = "real")]
80 pub(crate) env: String,
81}
82
83#[derive(Args)]
84pub struct HistoryOrdersArgs {
85 #[arg(short, long)]
86 pub(crate) market: String,
87
88 #[arg(long)]
89 pub(crate) acc_id: Option<u64>,
90
91 #[arg(long = "card-num")]
93 pub(crate) card_num: Option<String>,
94
95 #[arg(short, long, default_value = "real")]
96 pub(crate) env: String,
97
98 #[arg(long)]
100 pub(crate) codes: Option<String>,
101
102 #[arg(long)]
104 pub(crate) begin: Option<String>,
105
106 #[arg(long)]
108 pub(crate) end: Option<String>,
109}
110
111#[derive(Args)]
112pub struct HistoryDealsArgs {
113 #[arg(short, long)]
114 pub(crate) market: String,
115
116 #[arg(long)]
117 pub(crate) acc_id: Option<u64>,
118
119 #[arg(long = "card-num")]
121 pub(crate) card_num: Option<String>,
122
123 #[arg(short, long, default_value = "real")]
124 pub(crate) env: String,
125
126 #[arg(long)]
127 pub(crate) codes: Option<String>,
128
129 #[arg(long)]
130 pub(crate) begin: Option<String>,
131
132 #[arg(long)]
133 pub(crate) end: Option<String>,
134}
135
136#[derive(Args)]
137pub struct MaxQtysArgs {
138 #[arg(short, long)]
139 pub(crate) market: String,
140
141 #[arg(long)]
142 pub(crate) acc_id: Option<u64>,
143
144 #[arg(long = "card-num")]
146 pub(crate) card_num: Option<String>,
147
148 #[arg(short, long, default_value = "real")]
149 pub(crate) env: String,
150
151 #[arg(long, default_value = "NORMAL")]
153 pub(crate) order_type: String,
154
155 #[arg(long)]
156 pub(crate) code: String,
157
158 #[arg(long)]
160 pub(crate) price: f64,
161}
162
163#[derive(Args)]
164pub struct MarginRatioArgs {
165 #[arg(short, long)]
167 pub(crate) market: String,
168
169 #[arg(long)]
171 pub(crate) acc_id: Option<u64>,
172
173 #[arg(long = "card-num")]
175 pub(crate) card_num: Option<String>,
176
177 #[arg(short, long, default_value = "real")]
179 pub(crate) env: String,
180
181 #[arg(index = 1, value_name = "SYMBOLS")]
183 pub(crate) symbols: Option<String>,
184
185 #[arg(long = "code", visible_alias = "symbols", conflicts_with = "symbols")]
187 pub(crate) symbols_arg: Option<String>,
188}
189
190#[derive(Args)]
191pub struct OrderFeeArgs {
192 #[arg(short, long)]
194 pub(crate) market: String,
195
196 #[arg(long)]
198 pub(crate) acc_id: Option<u64>,
199
200 #[arg(long = "card-num")]
202 pub(crate) card_num: Option<String>,
203
204 #[arg(short, long, default_value = "real")]
206 pub(crate) env: String,
207
208 pub(crate) order_ids: String,
210}
211
212#[derive(Args)]
213pub struct AccCashFlowArgs {
214 #[arg(index = 1, value_name = "ACC_ID")]
216 pub(crate) acc_id: Option<u64>,
217
218 #[arg(long = "acc-id", conflicts_with = "acc_id")]
220 pub(crate) acc_id_arg: Option<u64>,
221
222 #[arg(long = "card-num")]
224 pub(crate) card_num: Option<String>,
225
226 #[arg(long, conflicts_with = "date_range")]
228 pub(crate) date: Option<String>,
229
230 #[arg(long, conflicts_with = "date")]
232 pub(crate) date_range: Option<String>,
233
234 #[arg(long, default_value = "real")]
236 pub(crate) env: String,
237
238 #[arg(long, default_value = "HK")]
240 pub(crate) market: String,
241
242 #[arg(long)]
244 pub(crate) direction: Option<i32>,
245}