1+ @file:Suppress(" unused" )
2+
13package org.rationalityfrontline.ktrader.broker.api
24
35/* *
46 * 推送事件类型
57 */
68enum class BrokerEventType {
79
8- /* *
9- * 消息通知。[BrokerEvent.data]: [String],消息内容
10- */
11- INFO ,
12-
13- /* *
14- * 发生错误。[BrokerEvent.data]: [String],错误信息
15- */
16- ERROR ,
17-
1810 /* *
1911 * 自定义事件类型。[BrokerEvent.data]: [CustomEvent],自定义事件
2012 */
2113 CUSTOM_EVENT ,
2214
2315 /* *
24- * 行情接口网络连接成功。[BrokerEvent.data]: [Unit]
25- */
26- MD_NET_CONNECTED ,
27-
28- /* *
29- * 行情接口网络连接断开。[BrokerEvent.data]: [String],断开原因
30- */
31- MD_NET_DISCONNECTED ,
32-
33- /* *
34- * 行情接口登录成功。[BrokerEvent.data]: [Unit]
35- */
36- MD_LOGGED_IN ,
37-
38- /* *
39- * 交易接口网络连接成功。[BrokerEvent.data]: [Unit]
40- */
41- TD_NET_CONNECTED ,
42-
43- /* *
44- * 交易接口网络连接断开。[BrokerEvent.data]: [String],断开原因
16+ * 消息通知事件。[BrokerEvent.data]: [MessageEvent]
4517 */
46- TD_NET_DISCONNECTED ,
18+ MESSAGE ,
4719
4820 /* *
49- * 交易接口登录成功 。[BrokerEvent.data]: [Unit ]
21+ * 网络连接状态变更 。[BrokerEvent.data]: [ConnectionEvent ]
5022 */
51- TD_LOGGED_IN ,
23+ CONNECTION ,
5224
5325 /* *
5426 * 实时行情数据推送。[BrokerEvent.data]: [Tick]
@@ -58,7 +30,7 @@ enum class BrokerEventType {
5830 /* *
5931 * 订单状态推送。[BrokerEvent.data]: [Order]
6032 * * [OrderStatus.PARTIALLY_FILLED] 及 [OrderStatus.FILLED] 状态的 [Order] 推送总是后于对应的 [Trade] 推送
61- * * 撤单失败时不会推送该事件,但会推送 [TD_CANCEL_FAILED ] 事件
33+ * * 撤单失败时不会推送该事件,但会推送 [CANCEL_FAILED ] 事件
6234 * * 推送的 [Order] 实例不会自己更新状态,是静态的,且每次推送的实例不同
6335 */
6436 ORDER_STATUS ,
@@ -96,4 +68,95 @@ data class BrokerEvent(
9668data class CustomEvent (
9769 val type : String ,
9870 val data : Any ,
71+ )
72+
73+ /* *
74+ * 消息事件类型
75+ */
76+ enum class MessageEventType {
77+ /* *
78+ * 普通信息,用于通知状态变化、执行进度等。
79+ */
80+ INFO ,
81+
82+ /* *
83+ * 警告信息,表示发生了可能导致错误的事件。
84+ */
85+ WARNING ,
86+
87+ /* *
88+ * 错误信息,表示发生了错误。
89+ */
90+ ERROR ,
91+ }
92+
93+ /* *
94+ * 消息通知事件。
95+ * @param type 消息类型
96+ * @param msg 消息内容
97+ */
98+ data class MessageEvent (
99+ val type : MessageEventType ,
100+ val msg : String ,
101+ )
102+
103+ /* *
104+ * 网络连接及用户登录相关的事件类型
105+ */
106+ enum class ConnectionEventType {
107+
108+ /* *
109+ * 自定义事件类型。
110+ */
111+ CUSTOM_EVENT ,
112+
113+ /* *
114+ * 行情接口网络连接成功。
115+ */
116+ MD_NET_CONNECTED ,
117+
118+ /* *
119+ * 行情接口网络连接断开。
120+ */
121+ MD_NET_DISCONNECTED ,
122+
123+ /* *
124+ * 行情接口登录成功。
125+ */
126+ MD_LOGGED_IN ,
127+
128+ /* *
129+ * 行情接口退出登录。
130+ */
131+ MD_LOGGED_OUT ,
132+
133+ /* *
134+ * 交易接口网络连接成功。
135+ */
136+ TD_NET_CONNECTED ,
137+
138+ /* *
139+ * 交易接口网络连接断开。[BrokerEvent.data]: [String],断开原因
140+ */
141+ TD_NET_DISCONNECTED ,
142+
143+ /* *
144+ * 交易接口登录成功。[BrokerEvent.data]: [Unit]
145+ */
146+ TD_LOGGED_IN ,
147+
148+ /* *
149+ * 交易接口退出登录。[BrokerEvent.data]: [Unit]
150+ */
151+ TD_LOGGED_OUT ,
152+ }
153+
154+ /* *
155+ * 网络连接及用户登录相关的事件。
156+ * @param type 事件类型
157+ * @param msg 事件描述
158+ */
159+ data class ConnectionEvent (
160+ val type : ConnectionEventType ,
161+ val msg : String = " " ,
99162)
0 commit comments