量化交易的基石ExchangeSdk

作为长期混迹在合约市场的老韭菜来说,已不能满足与手动下单来亏钱,必须得通过脚本来加速,为了达到这个目的就产生了项目。目前封装的主要是合约的API接口,不支持现货交易。

Github: https://github.com/silently9527/exchange-sdk

1. 抽象出了交易所合约的通用接口

2. 支持的交易所:binance, okex, kucoin

3. 支持 Rest接口 和 WebSocket

How to install

1. 克隆下仓库代码执行mvn install

2. maven依赖添加到自己的项目

<dependency>
    <groupId>org.herman</groupId>
    <artifactId>exchange-sdk</artifactId>
    <version>1.0-SNAPSHOT</version>
</dependency>

How to use

FutureRestApiClient: 主要抽象出了合约的RestApi接口

FutureSubscriptionClient: 主要抽象出了合约的WebSocket接口

FutureApiInternalFactory: 封装了创建各个交易所FutureRestApiClient和FutureSubscriptionClient的工具类

Examples

1. 使用rest接口查询出Binance的标记价格

final FutureRestApiClient restApiClient = FutureApiInternalFactory
        .getInstance()
        .createBinanceFutureRestApiClient(Constants.Future.BINANCE_REST_API_BASE_URL, "xxx", "xxx");
final List<MarkPrice> markPrice = restApiClient.getMarkPrice("BTCUSDT");
System.out.println(markPrice);

输出:

[MarkPrice[symbol=BTCUSDT,markPrice=57738.69215152,time=1723775413000]]

2. 使用WebSocket监听Binance的标记价格

final FutureSubscriptionClient subscriptionClient = FutureApiInternalFactory
        .getInstance()
        .createBinanceFutureSubscriptionClient(Constants.Future.BINANCE_WS_API_BASE_URL, "xxx", "xxx");
subscriptionClient.subscribeMarkPriceEvent("BTCUSDT",
        markPriceEvent -> {
            //订阅成功后的回调
            System.out.println(markPriceEvent);
        },
        e -> {
            //异常后的执行逻辑
            e.printStackTrace();
        }
);

发布者:股市刺客,转载请注明出处:https://www.95sca.cn/archives/551676
站内所有文章皆来自网络转载或读者投稿,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!

(0)
股市刺客的头像股市刺客
上一篇 1天前
下一篇 2024 年 7 月 29 日

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注