写点什么

量化交易的基石:ExchangeSdk

作者:Silently9527
  • 2024-08-16
    四川
  • 本文字数:827 字

    阅读完需:约 3 分钟

量化交易的基石:ExchangeSdk

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


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

Features

  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]]
复制代码


  1. 使用 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();        });
复制代码


发布于: 刚刚阅读数: 3
用户头像

Silently9527

关注

公众号:贝塔学JAVA 2018-05-09 加入

Simple Programmer, Make the complex simple

评论

发布
暂无评论
量化交易的基石:ExchangeSdk_比特币_Silently9527_InfoQ写作社区