首页 / 专利库 / 银行与财务事项 / 做市商 / 一种数字货币统一交易方法

一种数字货币统一交易方法

阅读:758发布:2020-05-11

专利汇可以提供一种数字货币统一交易方法专利检索,专利查询,专利分析的服务。并且本 发明 公开一种 数字 货币 统一交易方法,包括如下步骤:获取行情数据,提供统一格式对行情数据进行存储和使用,同时通过事件消息的方式推送给订阅者;获取资产和交易数据,提供统一格式对资产和交易数据进行存储和使用,同时通过事件消息的方式推送给订阅者;将交易所的资产和交易封装成统一 接口 ,并提供统一方法进行 数字货币 交易。本发明将全球主流的数字货币交易所(现货和期货)的资产和交易接口统一封装,并标准化交易方式,统一了交易数据的存储、传输和使用,降低了量化交易难度和 做市商 的难度,提高了量化交易效率。,下面是一种数字货币统一交易方法专利的具体信息内容。

1.一种数字货币统一交易方法,其特征在于:包括如下步骤:
获取行情数据,提供统一格式对行情数据进行存储和使用,同时通过事件消息的方式推送给订阅者;
获取资产和交易数据,提供统一格式对资产和交易数据进行存储和使用,同时通过事件消息的方式推送给订阅者;
将交易所的资产和交易封装成统一接口,并提供统一方法进行数字货币交易。
2.根据权利要求1所述的一种数字货币统一交易方法,其特征在于:统一格式存储和使用的行情数据包括K线KLine数据字段、订单薄Orderbook数据字段、交易数据Ticker数据字段、成交数据Trade数据字段中的任意组合形式;
K线KLine数据字段包括开盘价open子数据字段、最高价high子数据字段、最低价low子数据字段、收盘价close子数据字段、成交量volume子数据字段和时间戳timestamp子数据字段中的任意组合形式;
订单薄Orderbook数据字段包括订单薄卖盘数据asks子数据字段、订单薄买盘数据bids子数据字段和时间戳timestamp子数据字段中的任意组合形式;
交易数据Ticker数据字段包括买单价格bid子数据字段、买单数量bid_quantity子数据字段、卖单价格ask子数据字段、卖单数量ask_quantity子数据字段、24小时最低成交价子数据字段、24小时最高成交价子数据字段、24小时成交总量子数据字段和时间戳timestamp子数据字段中的任意组合形式;
成交数据Trade数据字段包括一个或多个数据结构,单个数据结构包括价格price子数据字段、数量quantity子数据字段、操作action子数据字段和时间戳timestamp子数据字段中的任意组合形式。
3.根据权利要求2所述的一种数字货币统一交易方法,其特征在于:统一格式存储和使用的资产和交易数据包括行情数据、资产快照数据和订单数据;
资产快照数据包括交易平台platform子数据字段、交易账户account子数据字段、数字货币类型子数据字段和时间戳timestamp子数据字段中的任意组合形式,数字货币类型子数据字段包括可用资产量free孙数据字段、冻结资产量locked孙数据字段和总资产量total孙数据字段中的任意组合形式;
订单数据包括交易平台platform子数据字段、交易账户account子数据字段、策略名称strategy子数据字段、交易对symbol子数据字段、操作action子数据字段、委托单号order_no子数据字段、委托单类型order_type子数据字段、价格price子数据字段、数量quantity子数据字段、剩余未成交量remain子数据字段、委托单状态status子数据字段和时间戳timestamp子数据字段中的任意组合形式。
4.根据权利要求1所述的一种数字货币统一交易方法,其特征在于:封装后的资产和交易接口包括实时资产获取接口、下单接口、撤单接口和订单状态获取接口;
当策略判断需要执行实时资产获取、下单、撤单或订单状态获取时,调用相应的实时资产获取、下单、撤单或订单状态获取接口,即可发出指定平台的相应指令。
5.根据权利要求4所述的一种数字货币统一交易方法,其特征在于:所述数字货币统一交易方法还包括:提供事件消息订阅方式,在量化/做市策略程序中,直接订阅相应的数字货币行情数据,当有系统行情事件消息推送过来时,策略处理事件;
当策略处理完行情事件后,确定是否进行交易,若进行交易,策略调用系统提供的统一方式进行交易。
6.根据权利要求5所述的一种数字货币统一交易方法,其特征在于:若进行交易,策略调用系统提供的统一方式进行交易的方式是:调用相应的实时资产获取、下单、撤单或订单状态获取接口,即可发出指定平台的相应指令。
7.根据权利要求1所述的一种数字货币统一交易方法,其特征在于:行情数据的获取方式为REST API、Websocket或FIX。

说明书全文

一种数字货币统一交易方法

技术领域

[0001] 本发明属于数字货币量化交易或数字货币交易所做市技术领域,具体涉及一种数字货币统一交易方法。

背景技术

[0002] 数字货币简称为DIGICCY,是英文“Digital Currency”(数字货币)的缩写,是电子货币形式的替代货币。数字金币和密码货币都属于数字货币(DIGICCY)。
[0003] 数字货币不同于虚拟世界中的虚拟货币,因为它能被用于真实的商品和服务交易,而不局限在网络游戏中。早期的数码货币(数字黄金货币)是一种以黄金重量命名的电子货币形式,这种货币的典型计量单位是金衡制克或者金衡制盎司,尽管有时候也使用黄金迪纳尔做单位,数字黄金货币通过未配额或者分散配额的黄金存储来资助。现在的数码货币,不依托任何实物,使用密码算法的数字货币,比如比特币、莱特币和PPCoin,是依靠校验和密码技术来创建、发行和流通的电子货币,其特点是运用P2P对等网络技术来发行、管理和流通货币,运用了点对点技术且每个人都可以发行它,数码货币货币分为开放式采矿型密码数字货币(以比特币为代表)和发行式密码数字货币。
[0004] 当前数字货币处于初创阶段,全球各大数字货币交易所提供了种类繁多的数字货币线上交易,即使是同一类数字货币,在不同的交易所平台上,交易方式也是千差万别,交易数据无法通用,造成了交易效率低,交易难度大,量化交易和做市商槛高的问题。

发明内容

[0005] 为了解决现有技术存在的上述问题,本发明目的在于提供一种数字货币统一交易方法。本发明将全球主流的数字货币交易所(现货和期货)的交易接口统一封装,并标准化交易方式,统一了交易数据的存储、传输和使用,降低了量化交易难度,提高了量化交易效率。
[0006] 本发明所采用的技术方案为:
[0007] 一种数字货币统一交易方法,包括如下步骤:
[0008] 获取行情数据,提供统一格式对行情数据进行存储和使用,同时通过事件消息的方式推送给订阅者;
[0009] 获取资产和交易数据,提供统一格式对资产和交易数据进行存储和使用,同时通过事件消息的方式推送给订阅者;
[0010] 将交易所的资产和交易封装成统一接口,并提供统一方法进行数字货币交易。
[0011] 在上述技术方案的基础上,统一格式存储和使用的行情数据包括K线KLine数据字段、订单薄Orderbook数据字段、交易数据Ticker数据字段、成交数据Trade数据字段中的任意组合形式;
[0012] K线KLine数据字段包括开盘价open子数据字段、最高价high子数据字段、最低价low子数据字段、收盘价close子数据字段、成交量volume子数据字段和时间戳timestamp子数据字段中的任意组合形式;
[0013] 订单薄Orderbook数据字段包括订单薄卖盘数据asks子数据字段、订单薄买盘数据bids子数据字段和时间戳timestamp子数据字段中的任意组合形式;
[0014] 交易数据Ticker数据字段包括买单价格bid子数据字段、买单数量bid_quantity子数据字段、卖单价格ask子数据字段、卖单数量ask_quantity子数据字段、24小时最低成交价子数据字段、24小时最高成交价子数据字段、24小时成交总量子数据字段和时间戳timestamp子数据字段中的任意组合形式;
[0015] 成交数据Trade数据字段包括一个或多个数据结构,单个数据结构包括价格price子数据字段、数量quantity子数据字段、操作action子数据字段和时间戳timestamp子数据字段中的任意组合形式。
[0016] 在上述技术方案的基础上,统一格式存储和使用的资产和交易数据包括行情数据、资产快照数据和订单数据;
[0017] 资产快照数据包括交易平台platform子数据字段、交易账户account子数据字段、数字货币类型子数据字段和时间戳timestamp子数据字段中的任意组合形式,数字货币类型子数据字段包括可用资产量free孙数据字段、冻结资产量locked孙数据字段和总资产量total孙数据字段中的任意组合形式;
[0018] 订单数据包括交易平台platform子数据字段、交易账户account子数据字段、策略名称strategy子数据字段、交易对symbol子数据字段、操作action子数据字段、委托单号order_no子数据字段、委托单类型order_type子数据字段、价格price子数据字段、数量quantity子数据字段、剩余未成交量remain子数据字段、委托单状态status子数据字段和时间戳timestamp子数据字段中的任意组合形式。
[0019] 在上述技术方案的基础上,封装后的资产和交易接口包括实时资产获取接口、下单接口、撤单接口和订单状态获取接口;
[0020] 当策略判断需要执行实时资产获取、下单、撤单或订单状态获取时,调用相应的实时资产获取、下单、撤单或订单状态获取接口,即可发出指定平台的相应指令。
[0021] 在上述技术方案的基础上,所述数字货币统一交易方法还包括:提供事件消息订阅方式,在量化/做市策略程序中,直接订阅相应的数字货币行情数据,当有系统行情事件消息推送过来时,策略处理事件;
[0022] 当策略处理完行情事件后,确定是否进行交易,若进行交易,策略调用系统提供的统一方式进行交易。
[0023] 在上述技术方案的基础上,若进行交易,策略调用系统提供的统一方式进行交易的方式是:调用相应的实时资产获取、下单、撤单或订单状态获取接口,即可发出指定平台的相应指令。
[0024] 在上述技术方案的基础上,行情数据的获取方式为REST API、Websocket或FIX。
[0025] 本发明的有益效果为:
[0026] 目前数字货币主要是通过全球主流的数字货币交易所进行线上交易,每个交易所提供的交易方式和数据都不统一,造成了交易难度大、交易效率低的问题。本发明将全球主流的数字货币交易所(现货和期货)的资产和交易接口统一封装,并标准化交易方式,统一了交易数据的存储、传输和使用,降低了量化交易难度和做市商的难度,提高了量化交易效率。

具体实施方式

[0027] 下面结合具体实施例对本发明作进一步阐述。
[0028] 实施例:
[0029] 本实施例的一种数字货币统一交易方法,包括如下步骤:
[0030] 1、通过主流交易所提供的行情数据获取方式(REST API、Websocket或FIX)获取行情数据,将行情数据转换成统一格式,然后存储至数据库,同时将行情数据通过MQ消息队列推送给订阅者(任何需要此行情数据的策略);
[0031] 在上述技术方案的基础上,统一格式存储和使用的行情数据包括K线KLine数据字段、订单薄Orderbook数据字段、交易数据Ticker数据字段、成交数据Trade数据字段中的任意组合形式;
[0032] K线KLine数据字段包括开盘价open子数据字段、最高价high子数据字段、最低价low子数据字段、收盘价close子数据字段、成交量volume子数据字段和时间戳timestamp子数据字段中的任意组合形式;
[0033] 订单薄Orderbook数据字段包括订单薄卖盘数据asks子数据字段、订单薄买盘数据bids子数据字段和时间戳timestamp子数据字段中的任意组合形式;
[0034] 交易数据Ticker数据字段包括买单价格bid子数据字段、买单数量bid_quantity子数据字段、卖单价格ask子数据字段、卖单数量ask_quantity子数据字段、24小时最低成交价子数据字段、24小时最高成交价子数据字段、24小时成交总量子数据字段和时间戳timestamp子数据字段中的任意组合形式;
[0035] 成交数据Trade数据字段包括一个或多个数据结构,单个数据结构包括价格price子数据字段、数量quantity子数据字段、操作action子数据字段和时间戳timestamp子数据字段中的任意组合形式。
[0036] 如下例:
[0037] KLine:
[0038] {"open":"11.11","high":"22.22","low":"33.33","close":"44.44","volume":"55.55","timestamp":"1234567890000"};
[0039] Orderbook:
[0040] {"asks":[["11.11","22.22"],...],bids":[["11.11","22.22"],...],"timestamp":"1234567890000"};
[0041] Ticker:
[0042] {"bid":"11.11","bid_quantity":"22.22","ask":"33.33","ask_quantity":"44.44","lo w":"11.11","high":"55.55","volume":"123456","timestamp":"
1234567890000"};
[0043] Trade(单个数据结构):
[0044] {"price":"11.11","quantity":"22.22","action":"BUY","timestamp":"1234567890000"}
[0045] Trade(数组数据结构):
[0046] [{"price":"11.11","quantity":"22.22","action":"BUY","timestamp":"1234567890000"},...];
[0047] 注意:省略号表示存在0个或任意多个。
[0048] 2、通过主流交易所提供的资产获取方式获取资产数据,将资产数据转换成统一格式,然后存储至数据库,同时将资产数据通过MQ消息队列推送给订阅者(任何需要此行情数据的策略);
[0049] 统一格式存储和使用的资产和交易数据包括行情数据、资产快照数据和订单数据;
[0050] 资产快照数据包括交易平台platform子数据字段、交易账户account子数据字段、数字货币类型子数据字段和时间戳timestamp子数据字段中的任意组合形式,数字货币类型子数据字段包括可用资产量free孙数据字段、冻结资产量locked孙数据字段和总资产量total孙数据字段中的任意组合形式;
[0051] 订单数据包括交易平台platform子数据字段、交易账户account子数据字段、策略名称strategy子数据字段、交易对symbol子数据字段、操作action子数据字段、委托单号order_no子数据字段、委托单类型order_type子数据字段、价格price子数据字段、数量quantity子数据字段、剩余未成交量remain子数据字段、委托单状态status子数据字段和时间戳timestamp子数据字段中的任意组合形式。
[0052] 数字货币类型,可以是任意的一种数字货币,如BTC,BTC是一种比较知名的数字货币。
[0053] 交易平台,如Binance、Bitmex等。
[0054] 交易对,如BTC/USD,可以是任意的交易对。
[0055] 委托单类型,如市价单、限价单等。
[0056] 委托单状态,如已成交、已撤单等。
[0057] 如下例:
[0058] 行情数据如上;
[0059] 资产快照数据:
[0060] {"platform":"binance","account":"abc123@163.com","BTC":{"free":"11.11","l ocked":"22.22","total":"33.33"},"timestamp":"12345678900000"};
[0061] 订单数据:
[0062] {"platform":"binance","account":"abc123@163.com","strategy":"my_strategy","symbol":"BTC/USD","action":"BUY","order_no":"123abc","order_type":"LMT","p rice":"11.11","quantity":"22.22","remain":"1.2","status":1,"timestamp":"12345678900000"}。
[0063] 3、将交易所的资产和交易封装成统一接口,并提供统一方法进行数字货币交易。
[0064] 封装后的资产和交易接口包括实时资产获取接口、下单接口、撤单接口和订单状态获取接口;
[0065] 如下例:
[0066] 实时资产获取接口:def get_asset(platform,account);
[0067] 下单接口:
[0068] def create_order(platform,account,action,symbol,price,quantity,order_type);
[0069] 撤单接口:
[0070] def revoke_order(platform,account,symbol,order_no);
[0071] 订单状态获取接口:
[0072] def get_order_status(platform,account,symbol,order_no)。
[0073] 当策略判断需要执行实时资产获取、下单、撤单或订单状态获取时,调用相应的实时资产获取、下单、撤单或订单状态获取接口,即可发出指定平台的相应指令。
[0074] 在上述技术方案的基础上,所述数字货币统一交易方法还包括:提供事件消息订阅方式,在量化/做市策略程序中,直接订阅相应的数字货币行情数据,当有系统行情事件消息推送过来时,策略处理事件;
[0075] 当策略处理完行情事件后,确定是否进行交易,若进行交易,策略调用系统提供的统一方式进行交易。
[0076] 在上述技术方案的基础上,若进行交易,策略调用系统提供的统一方式进行交易的方式是:调用相应的实时资产获取、下单、撤单或订单状态获取接口,即可发出指定平台的相应指令。
[0077] 目前数字货币主要是通过全球主流的数字货币交易所进行线上交易,每个交易所提供的交易方式和数据都不统一,造成了交易难度大、交易效率低的问题。本发明将全球主流的数字货币交易所(现货和期货)的资产和交易接口统一封装,并标准化交易方式,统一了交易数据的存储、传输和使用,降低了量化交易难度和做市商的难度,提高了量化交易效率。
[0078] 以下举例说明,以在Binance(https://www.binance.com)上交易为例:
[0079] a、获取Binance的Orderbook行情数据,并将行情数据按照统一Orderbook格式保存至数据库,统一格式为:
[0080] Orderbook:
[0081] {"asks":[["11.11","22.22"],...],bids":[["11.11","22.22"],...],"timestamp":"1234567890000"};
[0082] Ticker:
[0083] {"bid":"11.11","bid_quantity":"22.22","ask":"33.33","ask_quantity":"44.44","ti mestamp":"1234567890000"};
[0084] 同时将行情数据通过MQ消息队列推送至订阅者(任何需要此行情数据的策略)。
[0085] b、获取Binance的资产数据;并将资产数据按照统一资产格式保存至数据库,统一格式为:
[0086] {"platform":"binance","account":"abc123@163.com","BTC":{"free":"11.11","l ocked":"22.22","total":"33.33"},"timestamp":"12345678900000"};
[0087] 同时将资产数据通过MQ消息队列推送至订阅者(任何需要此行情数据的策略);
[0088] 资产数据获取接口:def get_asset(platform,account);
[0089] c、封装Binance的下单、撤单、订单状态获取等接口封装成统一的交易接口,分别如下:
[0090] 下单接口:
[0091] def create_order(platform,account,action,symbol,price,quantity,order_type);
[0092] 撤单接口:
[0093] def revoke_order(platform,account,symbol,order_no);
[0094] 订单状态获取接口:
[0095] def get_order_status(platform,account,symbol,order_no)。
[0096] d、假如此时策略判断需要下单,可调用下单接口create_order;
[0097] e、假如此时策略判断需要撤单,可调用撤单接口revoke_order;
[0098] f、假如此时策略判断需要获取订单状态,可调用订单状态获取接口get_order_status;
[0099] g、所有订单数据,通过统一数据格式使用和存储,统一数据格式为:
[0100] {"platform":"binance","account":"abc123@163.com","strategy":"my_strategy","symbol":"BTC/USD","action":"BUY","order_no":"123abc","order_type":"LMT","p rice":"11.11","quantity":"22.22","remain":"1.2","status":1,"timestamp":"12345678900000"};
[0101] 同时将订单数据通过MQ消息队列推送至订阅者(如监控程序或控程序)。
[0102] 本发明不局限于上述可选实施方式,任何人在本发明的启示下都可得出其他各种形式的产品,但不论在其形状或结构上作任何变化,凡是落入本发明权利要求界定范围内的技术方案,均落在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈