1919## 已有的接口实现
2020* [ KTrader-Broker-CTP] ( https://github.com/ktrader-tech/ktrader-broker-ctp ) CTP 实现(中国期货 & 期权)
2121
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+
2266## Download
2367
2468** Gradle:**
@@ -29,7 +73,7 @@ repositories {
2973}
3074
3175dependencies {
32- implementation(" org.rationalityfrontline.ktrader:ktrader-broker-api:1.1.0 " )
76+ implementation(" org.rationalityfrontline.ktrader:ktrader-broker-api:1.1.1 " )
3377}
3478```
3579
@@ -39,7 +83,7 @@ dependencies {
3983<dependency >
4084 <groupId >org.rationalityfrontline.ktrader</groupId >
4185 <artifactId >ktrader-broker-api</artifactId >
42- <version >1.1.0 </version >
86+ <version >1.1.1 </version >
4387</dependency >
4488```
4589
0 commit comments