一种基于区块链的金融数据管理方法及系统与流程

文档序号:23093068发布日期:2020-11-27 12:48阅读:135来源:国知局
一种基于区块链的金融数据管理方法及系统与流程

本发明涉及区块链技术领域,具体涉及一种基于区块链的金融数据管理方法及系统。



背景技术:

区块链作为一个可靠的分布式数据库,其去中心化、数据公开透明、不可篡改、智能合约强制执行等特点能够满足分布式应用的诸多需求,因此可以作为支撑分布式金融交易的底层技术。基于区块链,针对分布式金融交易国内外学者展开了积极研究。研究了区块链技术在分布式金融交易的适应性。基于区块链技术,提出一种去中心化的金融多边交易模式。此外,国内外一些企业对区块链在分布式金融交易的应用也展开了积极探索。

然而市场结构不同,竞价机制可分为连续单向竞价和连续双向竞价。在单向竞价中,市场结构呈现“一对多”的特点,存在严重的信息不对称;而在双向竞价中,市场结构呈现“多对多”的特点,交易双方需求关系趋于平衡。在交易频繁、产消者供需关系随机变化的市场,为了实现资源的最优配置和充分保障各参与主体的利益,需要制定一种更加灵活的多阶段混合交易机制。

但是由于分布式金融交易呈现单次交易金融小、总体交易次数频繁等特点,且供需角色随机转换的能力较差。在这种形势下传统的集中式交易面临成本高、效率低、数据不透明、容易导致资金及身份信息安全风险等问题。



技术实现要素:

为解决上述技术问题,本发明的目的在于提供一种基于区块链的金融数据管理方法及系统,基于区块链的金融云交易平台,并设计了用于完成交易的链码,阐述了基于链码的金融交易方法流程,弥补了集中式交易面临成本高、效率低、数据不透明、容易导致资金及身份信息安全风险等缺陷,保障了竞价以及金融交易最优分配和用户的利益。

为达到上述目的,本发明的技术方案如下:

一种基于区块链的金融数据管理方法,所述方法包括:

客户端向本地共识节点发送交易请求消息;

本地共识节点根据用户历史交易信息验证请求消息无误后,将原始数据作为输入参数,调用预先定义的面向全体最优的连续双向竞价策略;

基于面向全体最优的连续双向竞价策略执行金融交易,并通过相关策略函数查询网络中金融交易的实时信息,以调整自身交易;

在交易完成后,将交易执行结果写入区块链。

优选的,所述客户端向本地共识节点发送交易请求消息之前包括:在交易开始前的n-1时隙内,各参与交易的用户首先预测在n交易时隙内自身交易量和交易需求,制定金融交易计划;其中,

所述金融交易计划包括售购总量、交易时段和报价;

所述报价包括:生产者制定的最低允许的售出价格,以及消费者制定的最大允许购入价格。

进一步地,所述客户端向本地共识节点发送交易请求消息如下式:

smsg=(|xa(n)||pa(n)||sign.a||apublickey|)

式中:smsg表示客户端向本地共识节点发送交易请求消息,xa(n)是用户a在n交易时隙的期望交易量;pa(n)是a的最大或最小允许报价;apublickey是a的公钥;sign.a是a的数字签名,接收者可利用发送者的公钥对签名解密,并利用谜底摘要验证原始数据是否被篡改。

进一步地,所述基于面向全体最优的连续双向竞价策略执行金融交易包括:

收集用户交易的信息,执行竞价流程;

根据生产者和消费者的报价确定竞价交易的成交价格;其中,所述成交价格高于生产者i的最低允许价格,而低于消费者j的最高允许价格,符合双方交易的意愿;

当未符合双方交易的意愿,剩余未成交用户根据调价策略调整交易报价再次执行金融交易,并交易成功后进入资金结算阶段,根据各个参与主体的利益分配进行资金结算。

进一步地,所述收集用户交易的信息,执行竞价流程包括:竞价开始前预先为交易用户制定相应的阻塞价格;

在竞价过程中,基于dso对可能存在的竞价结果进行安全校核,判断是否满足潮流约束的条件;

对于不符合潮流约束的交易,用户需要调整交易量,并重新执行竞价,直到满足要求;

若交易满足潮流约束条件,则基于dso为交易双方通过确认订单函数发起交易订单;当交易双方均为订单签名时,订单生效。

进一步地,所述交易订单包含的信息如下:

smsg=(|xa(n)||sign.a||sign.b||sign.dso|)

式中,sign.a、sign.b、sign.dso分别为a、b用户和dso的数字签名。

进一步地,所述各参与主体的利益分配如下式所示:

mtotal=mb+mdso+mbu

mbu=pgridxbu

式中:mtotal为负荷用户需要支付的总金额;mdso为dso的收益;mbu为备用组补充金融获得的收益;mb为分布式金融供应商的收益。

进一步地,通过下式确定竞价交易的成交价格:

pa=p0(n)+μ[pgrid(n)-pi,min]

式中,p0(n)表示竞价交易的初始价格,pgrid(n)为竞价交易的常规报价,μ为用户偏好参数;

选取生产者p中的最低报价pi,min与消费者c中的最高报价pj,max;

若满足pj,max≥pi,min,则生产者i与消费者j竞价成功,令双方成交的最终价格:

pi,j=pi,min+pj,max2

若竞价成功,则双方退出竞拍列队,否则pj,max<pi,min,剩余未成交用户根据调价策略调整交易报价。

进一步地,所述调价策略为:生产者在当前交易时隙已成交的生产者最高报价的基础上减去退让值;

消费者在当前交易时隙已成交的消费者最低报价的基础上增加退让值,其表达式为:

pi=p*i,max-δpi

pj=p*j,min+δpj

式中:p*i,max和p*j,min分别是生产者和消费者在成交报价中的最大值和最小值;δpi和δpj为预先定义的价格退让值,pi<pj。

一种基于区块链的金融数据管理系统,所述系统包括:

请求模块,用于客户端向本地共识节点发送交易请求消息;

处理模块,用于本地共识节点根据用户历史交易信息验证请求消息无误后,将原始数据作为输入参数,调用预先定义的面向全体最优的连续双向竞价策略;

交易模块,用于基于面向全体最优的连续双向竞价策略执行金融交易,并通过相关策略函数查询网络中金融交易的实时信息,以调整自身交易;

存储模块,用于在交易完成后,将交易执行结果写入区块链。

本发明的有益效果:

本发明提出的一种基于区块链的金融数据管理方法及系统,客户端向本地共识节点发送交易请求消息,本地共识节点根据用户历史交易信息验证请求消息无误后,将原始数据作为输入参数,调用预先定义的面向全体最优的连续双向竞价策略;基于面向全体最优的连续双向竞价策略执行金融交易,并通过相关策略函数查询网络中金融交易的实时信息,以调整自身交易;最终在交易完成后,将交易执行结果写入区块链。基于区块链设计了金融云交易的管理系统及实现方法,并设计了用于完成交易的链码,阐述了基于链码的金融交易方法流程,弥补了集中式交易面临成本高、效率低、数据不透明、容易导致资金及身份信息安全风险等缺陷,保障了竞价以及金融交易最优分配和用户的利益。

附图说明

图1为本发明实施例的一种基于区块链的金融数据管理方法流程图;

图2为图1中的实施例链码的原理结构示意图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图,对本发明作进一步详细说明。

需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本发明所属领域技术人员所理解的通常意义。

本发明具体实施方式中提供一种基于区块链的金融数据管理方法,如图1所示,所述方法包括:

s1客户端向本地共识节点发送交易请求消息;

s2本地共识节点根据用户历史交易信息验证请求消息无误后,将原始数据作为输入参数,调用预先定义的面向全体最优的连续双向竞价策略;

s3基于面向全体最优的连续双向竞价策略执行金融交易,并通过相关策略函数查询网络中金融交易的实时信息,以调整自身交易;

s4在交易完成后,将交易执行结果写入区块链。

执行步骤s1的客户端向本地共识节点发送交易请求消息之前包括:在交易开始前的n-1时隙内,各参与交易的用户首先预测在n交易时隙内自身交易量和交易需求,制定金融交易计划;其中,所述金融交易计划包括售购总量、交易时段和报价;所述报价包括:生产者制定的最低允许的售出价格,以及消费者制定的最大允许购入价格。

步骤s2中,客户端向本地共识节点发送交易请求消息如下式:

smsg=(|xa(n)||pa(n)||sign.a||apublickey|)

式中:smsg表示客户端向本地共识节点发送交易请求消息,xa(n)是用户a在n交易时隙的期望交易量;pa(n)是a的最大或最小允许报价;apublickey是a的公钥;sign.a是a的数字签名,接收者可利用发送者的公钥对签名解密,并利用谜底摘要验证原始数据是否被篡改。

所述基于面向全体最优的连续双向竞价策略执行金融交易包括:

收集用户交易的信息,执行竞价流程;

根据生产者和消费者的报价确定竞价交易的成交价格;其中,所述成交价格高于生产者i的最低允许价格,而低于消费者j的最高允许价格,符合双方交易的意愿;

当未符合双方交易的意愿,剩余未成交用户根据调价策略调整交易报价再次执行金融交易,并交易成功后进入资金结算阶段,根据各个参与主体的利益分配进行资金结算。

所述收集用户交易的信息,执行竞价流程包括:竞价开始前预先为交易用户制定相应的阻塞价格;

在竞价过程中,基于dso对可能存在的竞价结果进行安全校核,判断是否满足潮流约束的条件;

对于不符合潮流约束的交易,用户需要调整交易量,并重新执行竞价,直到满足要求;

若交易满足潮流约束条件,则基于dso为交易双方通过确认订单函数发起交易订单;当交易双方均为订单签名时,订单生效。

交易订单包含的信息如下:

smsg=(|xa(n)||sign.a||sign.b||sign.dso|)

式中,sign.a、sign.b、sign.dso分别为a、b用户和dso的数字签名。

各参与主体的利益分配如下式所示:

mtotal=mb+mdso+mbu

mbu=pgridxbu

式中:mtotal为负荷用户需要支付的总金额;mdso为dso的收益;mbu为备用组补充金融获得的收益;mb为分布式金融供应商的收益。

通过下式确定竞价交易的成交价格:

pa=p0(n)+μ[pgrid(n)-pi,min]

式中,p0(n)表示竞价交易的初始价格,pgrid(n)为竞价交易的常规报价,μ为用户偏好参数;

选取生产者p中的最低报价pi,min与消费者c中的最高报价pj,max;

若满足pj,max≥pi,min,则生产者i与消费者j竞价成功,令双方成交的最终价格:

pi,j=pi,min+pj,max2

若竞价成功,则双方退出竞拍列队,否则pj,max<pi,min,剩余未成交用户根据调价策略调整交易报价其中,所述调价策略为生产者在当前交易时隙已成交的生产者最高报价的基础上减去退让值;

消费者在当前交易时隙已成交的消费者最低报价的基础上增加退让值,其表达式为:

pi=p*i,max-δpi

pj=p*j,min+δpj

式中:p*i,max和p*j,min分别是生产者和消费者在成交报价中的最大值和最小值;δpi和δpj为预先定义的价格退让值,pi<pj。

基于同一发明构思,本发明还提供一种基于区块链的金融数据管理系统,包括:

请求模块,用于客户端向本地共识节点发送交易请求消息;

处理模块,用于本地共识节点根据用户历史交易信息验证请求消息无误后,将原始数据作为输入参数,调用预先定义的面向全体最优的连续双向竞价策略;

交易模块,用于基于面向全体最优的连续双向竞价策略执行金融交易,并通过相关策略函数查询网络中金融交易的实时信息,以调整自身交易;

存储模块,用于在交易完成后,将交易执行结果写入区块链。

实施例:

本具体实施方式区块链的具体应用:

1、在网络类型的选择上,考虑到金融交易的主体数量众多,交易频繁,如果采用公有链,则交易执行需要通过绝大多数节点的共识,交易传播速度缓慢,不能适应金融高频率交易的要求。因此,公有链不适合。

超级账本(hyperledger)中的fabric项目为交易提供了通道管理机制,在保护用户隐私的基础上减少了每一个共识节点的数据存储需求,而且交易只需由特定节点背书,大大提高了共识效率。因此,本文将采用fabric项目作为金融交易市场的网络架构。

基于区块链技术,金融交易市场的参与主体将以节点的形式存在。所有节点必须经过认证中心(certificateauthority,ca)认证,并颁发相应的数字证书。

分布式供应商。在联盟链中,充当共识节点,并存储交易的数据。

通过区块链实时查询对应用户的金融交易信息,获取交易数据,并将查询结果上传至区块链。与传统的中心化金融调度方式不同,本文的金融调度由分布于各个用户侧自动响应完成。

dso,为金融交易提供线路维护、安全保障。当出现行为异常时,即向ca发送反馈信息,以撤销相应用户端的数字证书,从而确保金融交易的正常执行。

2、基于链码的金融交易流程

2.1链码的原理,如图2所示。

链码(智能合约)是运行在区块链上的具有法律效应的计算机程序。在fabric网络中,交易都是由链码完成的。用户通过预置触发条件或预置响应规则调用链码,执行交易,如图2所示。链码的执行结果将改变账本的状态,并由共识节点将状态改变的过程写入到区块链。账本的状态同样也会作为触发条件来调用链码。链码被安装在每一个共识节点(分布式金融供应商和dso)上的隔离沙盒内,通过grpc协议与节点进行交互。

2.2金融交易链码

根据金融交易的需求,微电网中的金融交易链码包括发布策略函数、混合竞价函数、确认订单函数和资金结算函数。本节将对相关函数做必要的介绍以阐述金融交易的具体实现方法,基于链码的金融交易流程如下:

1)发布策略函数。在交易开始前的n-1时隙内,微电网中各参与交易的用户首先预测在n时隙内自身产能和负荷需求,制定金融交易计划,计划包括售购电总量、交易时段和报价。其中,生产者制定允许的最低售电价格,消费者制定允许的最大购电价格。用户a通过客户端向本地共识节点发送交易请求,请求消息中包含:

smsg=(|xa(n)||pa(n)||sign.a||apublickey|)

式中:xa(n)是用户a在n时隙的期望交易量;pa(n)是a的最大或最小允许报价;apublickey是a的公钥;sign.a是a的数字签名。数字签名就是用户利用自身私钥对原始数据摘要加密的技术,接收者可利用发送者的公钥对签名解密,并利用谜底摘要验证原始数据是否被篡改。

本地共识节点验证请求消息无误后,将原始数据作为输入参数,调用发布策略函数。用户还可通过发布策略函数查询网络中金融交易的实时信息,以调整自身交易策略。

2)混合竞价函数。混合竞价函数收集用户交易的策略信息,执行竞价流程。竞价的策略将在下节详细阐述,这里不做过多说明。在竞价开始前,dso根据各支路输入输出功率判断其是否可能发生交易阻塞。对于存在阻塞的线路计算每笔交易对阻塞的影响,并为交易用户制定相应的阻塞价格[。在竞价过程中,dso还要对可能存在的竞价结果进行安全校核,判断是否满足潮流约束的条件。对于不符合潮流约束的交易,用户需要调整交易量,并重新执行竞价,直到满足要求。

3)确认订单函数。若交易对满足潮流约束条件,则dso为交易双方通过确认订单函数发起一份交易订单。交易双方均为订单签名时,订单生效。该订单包含的主要信息如下:

smsg=(|xa(n)||sign.a||sign.b||sign.dso|)

式中sign.a、sign.b、sign.dso分别为a、b和dso的数字签名。位于a、b用户侧的智能电表根据交易订单要求,执行充放电,并将执行结果写入区块链。这里需要说明的是,由于dso的实时监测和ca颁发的数字证书的认证(上文已经阐明),智能电表被认为是可靠的节点,即其执行充放电的动作和上传充放电的数据都是准确的。

4)资金结算函数。分布式金融供应商可能由于自身产能负荷预测或车辆行驶计划存在偏差导致无法按照合约要求完成充放电任务,其未完成的金融转移量由电网备用机组补充。

此时,各参与主体的利益分配如下:

mtotal=mb+mdso+mbu

mbu=pgridxbu

式中:mtotal为负荷用户需要支付的总金额,保持不变;mdso为dso的收益,保持不变;mbu电网备用机组补充金融获得的收益;mb为分布式金融供应商的售电收益。结算函数首先从总收益中扣除dso和电网备用机组应得的奖励,剩余部分才为分布式金融供应商所得。

3多阶段混合竞价机制:

传统的连续双向竞价机制迭代次数过多,导致巨额资源消耗,同时对本地服务器的要求较高,很难在去中心化的低成本网络中实现。

因此,本节将提出多阶段混合竞价机制,只需二次迭代就能够完成常规用户在金融交易中竞拍原则,并且能够实现本地资源的最优配置和保障参与主体的利益。

以上的说明和实施例仅是范例性的,并不对本发明的范围构成任何限制。本领域技术人员应该理解的是,在不偏离本发明的精神和范围下可以对发明技术方案的细节和形式进行修改或替换,但这些修改和替换均落入本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1