Skip to main content

futu_rest/routes/
trd.rs

1//! 交易 REST API 路由
2
3use axum::Json;
4use axum::http::StatusCode;
5use serde_json::Value;
6
7type ApiResult = Result<Json<Value>, (StatusCode, Json<Value>)>;
8type RawApiResult = Result<crate::adapter::RawJson, (StatusCode, Json<Value>)>;
9mod account;
10mod algo_order;
11mod cancel_all;
12mod card_num;
13mod flow_summary;
14mod group_order;
15mod order_preview;
16mod order_relations;
17mod performance;
18mod position_action;
19mod position_corporate_actions;
20mod read;
21mod sub_acc_push;
22mod tier_m;
23mod unlock;
24mod validation;
25mod write;
26mod write_pipeline;
27
28pub use account::get_acc_list;
29pub use algo_order::{algo_order_logs, modify_algo_order, place_algo_order};
30pub use cancel_all::cancel_all_order;
31pub use flow_summary::get_flow_summary;
32pub use group_order::{
33    cancel_order_group, delete_order_group, modify_order_group, place_order_group,
34};
35pub use order_preview::preview_order_impact;
36pub use order_relations::order_relations;
37pub use performance::{asset_trend, return_calendar, yield_trend};
38pub use position_action::{
39    batch_close_positions, clear_futures_positions, reverse_position, roll_position,
40};
41pub use position_corporate_actions::position_corporate_actions;
42pub use read::{
43    get_combo_max_trd_qtys, get_funds, get_history_order_fills, get_history_orders,
44    get_margin_ratio, get_max_trd_qtys, get_order_fee, get_order_fills, get_orders, get_positions,
45};
46pub use sub_acc_push::sub_acc_push;
47pub(crate) use sub_acc_push::{
48    check_per_acc_rate_for_caller, extract_acc_id_list, validate_sub_acc_push_acc_ids,
49};
50pub use tier_m::{
51    get_account_flag, get_biz_group, get_bond_answer_state, get_bond_position_list,
52    get_bond_single_asset, get_bond_total_asset, get_bond_trade_reminder, get_cash_detail,
53    get_cash_log, get_margin_info,
54};
55pub(crate) use unlock::apply_unlock_trade_otp_aliases;
56pub use unlock::unlock_trade;
57pub use write::{cancel_order, modify_order, place_combo_order, place_order, reconfirm_order};