futucli/cli/commands/
trade_write.rs1use clap::Args;
4
5#[derive(Args)]
6pub struct ComboOrderArgs {
7 #[arg(long = "c2s-json", value_name = "JSON")]
13 pub(crate) c2s_json: String,
14
15 #[arg(long)]
17 pub(crate) confirm: bool,
18
19 #[arg(long)]
21 pub(crate) idempotency_key: Option<String>,
22}
23
24#[derive(Args)]
25pub struct PlaceOrderArgs {
26 #[arg(short, long)]
27 pub(crate) market: String,
28
29 #[arg(long)]
30 pub(crate) acc_id: Option<u64>,
31
32 #[arg(long = "card-num")]
34 pub(crate) card_num: Option<String>,
35
36 #[arg(short, long, default_value = "simulate")]
38 pub(crate) env: String,
39
40 #[arg(long)]
42 pub(crate) side: String,
43
44 #[arg(long, default_value = "NORMAL")]
46 pub(crate) order_type: String,
47
48 #[arg(long)]
50 pub(crate) code: String,
51
52 #[arg(long)]
54 pub(crate) qty: f64,
55
56 #[arg(long)]
58 pub(crate) price: Option<f64>,
59
60 #[arg(long = "time-in-force")]
62 pub(crate) time_in_force: Option<String>,
63
64 #[arg(long = "fill-outside-rth")]
66 pub(crate) fill_outside_rth: bool,
67
68 #[arg(long)]
70 pub(crate) session: Option<String>,
71
72 #[arg(long = "expire-time")]
74 pub(crate) expire_time: Option<String>,
75
76 #[arg(long = "jp-acc-type")]
78 pub(crate) jp_acc_type: Option<i32>,
79
80 #[arg(long)]
82 pub(crate) confirm: bool,
83
84 #[arg(long)]
88 pub(crate) idempotency_key: Option<String>,
89
90 #[arg(long)]
93 pub(crate) stop_price: Option<f64>,
94
95 #[arg(long)]
97 pub(crate) trail_type: Option<i32>,
98
99 #[arg(long)]
101 pub(crate) trail_value: Option<f64>,
102
103 #[arg(long)]
105 pub(crate) trail_spread: Option<f64>,
106}
107
108#[derive(Args)]
109pub struct ModifyOrderArgs {
110 #[arg(short, long)]
111 pub(crate) market: String,
112
113 #[arg(long)]
114 pub(crate) acc_id: Option<u64>,
115
116 #[arg(long = "card-num")]
118 pub(crate) card_num: Option<String>,
119
120 #[arg(short, long, default_value = "simulate")]
121 pub(crate) env: String,
122
123 #[arg(long)]
124 pub(crate) order_id: String,
125
126 #[arg(long)]
128 pub(crate) op: String,
129
130 #[arg(long)]
132 pub(crate) qty: Option<f64>,
133
134 #[arg(long)]
136 pub(crate) price: Option<f64>,
137
138 #[arg(long = "jp-acc-type")]
140 pub(crate) jp_acc_type: Option<i32>,
141
142 #[arg(long)]
143 pub(crate) confirm: bool,
144
145 #[arg(long)]
147 pub(crate) idempotency_key: Option<String>,
148}
149
150#[derive(Args)]
151pub struct CancelOrderArgs {
152 #[arg(short, long)]
153 pub(crate) market: String,
154
155 #[arg(long)]
156 pub(crate) acc_id: Option<u64>,
157
158 #[arg(long = "card-num")]
160 pub(crate) card_num: Option<String>,
161
162 #[arg(short, long, default_value = "simulate")]
163 pub(crate) env: String,
164
165 #[arg(long)]
166 pub(crate) order_id: String,
167
168 #[arg(long = "jp-acc-type")]
170 pub(crate) jp_acc_type: Option<i32>,
171
172 #[arg(long)]
174 pub(crate) idempotency_key: Option<String>,
175
176 #[arg(long)]
177 pub(crate) confirm: bool,
178}
179
180#[derive(Args)]
181pub struct ReconfirmOrderArgs {
182 #[arg(short, long)]
183 pub(crate) market: String,
184
185 #[arg(long)]
186 pub(crate) acc_id: Option<u64>,
187
188 #[arg(long = "card-num")]
190 pub(crate) card_num: Option<String>,
191
192 #[arg(short, long, default_value = "simulate")]
193 pub(crate) env: String,
194
195 #[arg(long)]
197 pub(crate) order_id: String,
198
199 #[arg(long)]
201 pub(crate) reason: i32,
202
203 #[arg(long = "jp-acc-type")]
205 pub(crate) jp_acc_type: Option<i32>,
206
207 #[arg(long)]
209 pub(crate) confirm: bool,
210}