19
19
## 已有的接口实现
20
20
* [ KTrader-Broker-CTP] ( https://github.com/ktrader-tech/ktrader-broker-ctp ) CTP 实现(中国期货 & 期权)
21
21
22
+ ## 接口速览
23
+ 带有文档注释的全内容版本参见 [ BrokerApi.kt] ( https://github.com/ktrader-tech/ktrader-broker-api/blob/master/lib/src/main/kotlin/org/rationalityfrontline/ktrader/broker/api/BrokerApi.kt ) 。
24
+ ``` kotlin
25
+ abstract class BrokerApi (val config : Map <String , Any >, val kEvent : KEvent ) {
26
+ abstract val name: String
27
+ abstract val version: String
28
+ abstract val account: String
29
+ abstract val mdConnected: Boolean
30
+ abstract val tdConnected: Boolean
31
+ val createTime: LocalDateTime = LocalDateTime .now()
32
+ val sourceId: String get() = " ${name} _${account} _${hashCode()} "
33
+
34
+ abstract suspend fun connect (connectMd : Boolean = true, connectTd : Boolean = true, extras : Map <String , Any >? = null)
35
+ abstract suspend fun close ()
36
+ open fun getTradingDay (): LocalDate
37
+ abstract suspend fun subscribeMarketData (codes : Collection <String >, extras : Map <String , Any >? = null)
38
+ open suspend fun subscribeMarketData (code : String , extras : Map <String , Any >? = null)
39
+ abstract suspend fun unsubscribeMarketData (codes : Collection <String >, extras : Map <String , Any >? = null)
40
+ open suspend fun unsubscribeMarketData (code : String , extras : Map <String , Any >? = null)
41
+ abstract suspend fun subscribeAllMarketData (extras : Map <String , Any >? = null)
42
+ abstract suspend fun unsubscribeAllMarketData (extras : Map <String , Any >? = null)
43
+ abstract suspend fun querySubscriptions (useCache : Boolean = true, extras : Map <String , Any >? = null): List <String >
44
+ abstract suspend fun queryLastTick (code : String , useCache : Boolean = true, extras : Map <String , Any >? = null): Tick ?
45
+ abstract suspend fun querySecurity (code : String , useCache : Boolean = true, extras : Map <String , Any >? = null): Security ?
46
+ abstract suspend fun queryAllSecurities (useCache : Boolean = true, extras : Map <String , Any >? = null): List <Security >
47
+ abstract suspend fun queryAssets (useCache : Boolean = true, extras : Map <String , Any >? = null): Assets
48
+ abstract suspend fun queryPosition (code : String , direction : Direction , useCache : Boolean = true, extras : Map <String , Any >? = null): Position ?
49
+ abstract suspend fun queryPositions (code : String? = null, useCache : Boolean = true, extras : Map <String , Any >? = null): List <Position >
50
+ abstract suspend fun queryOrder (orderId : String , useCache : Boolean = true, extras : Map <String , Any >? = null): Order ?
51
+ abstract suspend fun queryOrders (code : String? = null, onlyUnfinished : Boolean = true, useCache : Boolean = true, extras : Map <String , Any >? = null): List <Order >
52
+ abstract suspend fun queryTrade (tradeId : String , useCache : Boolean = true, extras : Map <String , Any >? = null): Trade ?
53
+ abstract suspend fun queryTrades (code : String? = null, orderId : String? = null, useCache : Boolean = true, extras : Map <String , Any >? = null): List <Trade >
54
+ abstract suspend fun insertOrder (code : String , price : Double , volume : Int , direction : Direction , offset : OrderOffset , orderType : OrderType = OrderType .LIMIT , extras : Map <String , Any >? = null): Order
55
+ abstract suspend fun cancelOrder (orderId : String , extras : Map <String , Any >? = null)
56
+ open suspend fun cancelAllOrders (extras : Map <String , Any >? = null)
57
+ open suspend fun prepareFeeCalculation (codes : Collection <String >? = null, extras : Map <String , Any >? = null)
58
+ open fun calculatePosition (position : Position , extras : Map <String , Any >? = null)
59
+ open fun calculateOrder (order : Order , extras : Map <String , Any >? = null)
60
+ open fun calculateTrade (trade : Trade , extras : Map <String , Any >? = null)
61
+ open fun customRequest (method : String , params : Map <String , Any >? = null): Any
62
+ open suspend fun customSuspendRequest (method : String , params : Map <String , Any >? = null): Any
63
+ }
64
+ ```
65
+
22
66
## Download
23
67
24
68
** Gradle:**
@@ -29,7 +73,7 @@ repositories {
29
73
}
30
74
31
75
dependencies {
32
- implementation(" org.rationalityfrontline.ktrader:ktrader-broker-api:1.1.0 " )
76
+ implementation(" org.rationalityfrontline.ktrader:ktrader-broker-api:1.1.1 " )
33
77
}
34
78
```
35
79
@@ -39,7 +83,7 @@ dependencies {
39
83
<dependency >
40
84
<groupId >org.rationalityfrontline.ktrader</groupId >
41
85
<artifactId >ktrader-broker-api</artifactId >
42
- <version >1.1.0 </version >
86
+ <version >1.1.1 </version >
43
87
</dependency >
44
88
```
45
89
0 commit comments