futu_core/
trade_broker.rs1pub mod broker_id {
8 pub const FUTU_HK: u32 = 1001;
9 pub const FUTU_US: u32 = 1007;
10 pub const FUTU_SG: u32 = 1008;
11 pub const FUTU_AU: u32 = 1009;
12 pub const FUTU_JP: u32 = 1012;
13 pub const FUTU_MY: u32 = 1017;
14 pub const FUTU_CA: u32 = 1019;
15}
16
17pub mod security_firm_id {
19 pub const FUTU_HK: i32 = 1;
20 pub const FUTU_US: i32 = 2;
21 pub const FUTU_SG: i32 = 3;
22 pub const FUTU_AU: i32 = 4;
23 pub const FUTU_CA: i32 = 5;
24 pub const FUTU_MY: i32 = 6;
25 pub const FUTU_JP: i32 = 7;
26}
27
28#[must_use]
30pub fn broker_id_for_security_firm_like_cpp(security_firm: i32) -> Option<u32> {
31 match security_firm {
32 security_firm_id::FUTU_HK => Some(broker_id::FUTU_HK),
33 security_firm_id::FUTU_US => Some(broker_id::FUTU_US),
34 security_firm_id::FUTU_SG => Some(broker_id::FUTU_SG),
35 security_firm_id::FUTU_AU => Some(broker_id::FUTU_AU),
36 security_firm_id::FUTU_CA => Some(broker_id::FUTU_CA),
37 security_firm_id::FUTU_MY => Some(broker_id::FUTU_MY),
38 security_firm_id::FUTU_JP => Some(broker_id::FUTU_JP),
39 _ => None,
40 }
41}
42
43#[must_use]
45pub fn security_firm_for_broker_id_like_cpp(broker_id: u32) -> i32 {
46 match broker_id {
47 broker_id::FUTU_HK => security_firm_id::FUTU_HK,
48 broker_id::FUTU_US => security_firm_id::FUTU_US,
49 broker_id::FUTU_SG => security_firm_id::FUTU_SG,
50 broker_id::FUTU_AU => security_firm_id::FUTU_AU,
51 broker_id::FUTU_CA => security_firm_id::FUTU_CA,
52 broker_id::FUTU_MY => security_firm_id::FUTU_MY,
53 broker_id::FUTU_JP => security_firm_id::FUTU_JP,
54 _ => 0,
55 }
56}
57
58#[must_use]
59pub fn is_futu_us_broker_id(broker_id: u32) -> bool {
60 broker_id == broker_id::FUTU_US
61}
62
63#[must_use]
64pub fn is_futu_jp_broker_id(broker_id: u32) -> bool {
65 broker_id == broker_id::FUTU_JP
66}