KR102123908B1 - 트랜잭션 시점 결정 방법 및 시스템 - Google Patents

트랜잭션 시점 결정 방법 및 시스템 Download PDF

Info

Publication number
KR102123908B1
KR102123908B1 KR1020180139972A KR20180139972A KR102123908B1 KR 102123908 B1 KR102123908 B1 KR 102123908B1 KR 1020180139972 A KR1020180139972 A KR 1020180139972A KR 20180139972 A KR20180139972 A KR 20180139972A KR 102123908 B1 KR102123908 B1 KR 102123908B1
Authority
KR
South Korea
Prior art keywords
transaction
time
data
module
prediction
Prior art date
Application number
KR1020180139972A
Other languages
English (en)
Other versions
KR20200056081A (ko
Inventor
황성재
김종호
Original Assignee
김종호
황성재
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 김종호, 황성재 filed Critical 김종호
Priority to KR1020180139972A priority Critical patent/KR102123908B1/ko
Publication of KR20200056081A publication Critical patent/KR20200056081A/ko
Application granted granted Critical
Publication of KR102123908B1 publication Critical patent/KR102123908B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Engineering & Computer Science (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

본 발명은 트랜잭션 시점 결정 방법 및 시스템에 관한 것으로서, 본 발명의 일 실시예에 따른 트랜잭션 서버는 사용자 노드로부터 트랜잭션 시점 요청 신호를 수신하고, 트랜잭션 시점 요청 신호에 기초하여 연산 시간 범위를 결정하고, 예측용 데이터를 선택하는 입력 모듈; 예측용 데이터에 기초하여 특징 벡터를 산출하는 데이터 변환 모듈; 특징 벡터에 기초하여 예측 값을 산출하는 예측 모듈; 예측 값에 기초하여 연산 시간 범위 내에서 최대 설정 수익을 가지는 트랜잭션 설정 시간을 연산하는 트랜잭션 시간 설정 모듈; 및 최대 설정 수익을 가지는 트랜잭션 설정 시간을 사용자 노드에 전송하는 출력 모듈을 포함한다. 이에, 트랜잭션 결정 시점을 기준으로 미리 설정한 시간 범위 내에서 가격 변동 요인 및/또는 사용자의 트랜잭션 목적을 고려하여 트랜잭션을 처리함으로써 사용자가 더 많은 이익을 창출할 수 있다.

Description

트랜잭션 시점 결정 방법 및 시스템{A Method and System For Determing Transaction Time}
본 발명은 트랜잭션 시점 결정 시스템 및 그것의 트랜잭션 금액 결정 방법에 관한 것이다. 보다 상세하게는 블록체인 기반의 분산 시스템에서 최적의 트랜잭션 시점을 자동으로 예측함으로써 사용자의 수익을 극대화할 수 있는, 트랜잭션 금액 결정 방법 및 시스템에 관한 것이다.
최근, 모바일 결제서비스, 인터넷 전문 은행의 개설 등 전자적 금융 거래를 위한 다양한 서비스들이 폭발적으로 등장하고 있다. 특히, 정보통신 기술혁신으로 PC와 스마트폰을 이용한 온라인 거래 및 기술이 보편화되면서 기술·경제 측면을 넘어서 사회적 측면까지 영향을 미치기 시작하고 있다.
이 중, 전자적 금융 거래를 위한 대표적인 기술인 블록체인 기술은 비트코인, 이더리움을 필두로 다양한 기술적 발전을 이루며 개발되어지고 있으며 최근 블록체인 2.0을 필두로 기술의 문제점들이 점차 보완되며 발전되어 가고 있다. 또한, 블록체인 기술의 탁월한 보안 및 무결성을 바탕으로 전자적 금융 금융 거래뿐 아니라, 보안 및 무결성을 필요로 하는 계약, 인증, 데이터보안 등 다양한 분야로 확대되어 가고 있다.
블록체인 기술을 이용한 대표적인 비즈니스 모델은 P2P(Peer-to-Peer network)를 기반으로 분산 네트워크에 의해 트랜잭션이 이루어지는 비트코인(bitcoin) 또는 이더리움(Ethereum) 등의 암호 화폐를 예로 들 수 있다.
예컨대, 암호 화폐는 각 노드에서 지갑 파일의 형태로 저장되며, 지갑에는 각각의 공개 어드레스(Public Address)와 비밀번호에 해당하는 개인키(Privae key)가 부여된다. 이 때, 각 노드는 부여된 공개 어드레스를 기반으로 물품 구매 등의 다양한 트랜잭션이 가능하다. 이러한 암호 화폐의 트랜잭션 내역은 P2P방식의 분산 네트워크 상에서 블록으로서 생성되어 검증을 받게 된다. 생성된 모든 블록은 검증을 통해 저장되는 과정에서 링크드 리스트(Linked List)의 형태로 다른 블록과의 연결 관계를 형성하게 된다. 연결된 각 블록들은 거래 주체인 노드 외 다른 노드에도 저장이 되기 때문에 추후 검증 가능한 형태로 데이터의 무결성 및 보안성이 현저히 향상되게 된다.
단, 각 블록을 거래 주체 외의 다른 노드들에 저장하기 위해서는 예컨대, 이더리움의 가스비(Gas fee)와 같은 거래 비용이 발생한다. 이러한 거래 비용은 시간에 따른 변동이 매우 크다. 또한, 암호 화폐 자체의 가격 또한 시간에 따른 변동이 매우 크기 때문에, 거래 시점을 잘못 선택하는 경우에는 짧은 순간에도 사용자에게 큰 손실이 발생할 수 있다는 문제점이 있다.
본 발명이 해결하고자 하는 과제는 트랜잭션 시 암호 화폐의 최적 트랜잭션 시점을 자동으로 예측함으로써, 매도 및 매수에 따른 사용자의 손실을 최소화하고 수익을 극대화할 수 있는 트랜잭션 시점 결정 시스템을 제공하는 것이다.
본 발명이 해결하고자 하는 또 다른 과제는 암호 화폐의 트랜잭션 결정 시점으로부터 미리 설정한 시간 범위 내에서 가격 변동 요인 및/또는 사용자의 트랜잭션 목적을 고려하여 트랜잭션 처리를 수행함으로써 사용자의 상황에 맞는 시점에 매도 또는 매수가 진행될 수 있도록 한 트랜잭션 시점 결정 시스템을 제공하는 것이다.
본 발명의 과제들은 이상에서 언급한 과제들로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
전술한 바와 같은 과제를 해결하기 위하여 본 발명의 일 실시예에 따른 트랜잭션 서버는 사용자 노드로부터 트랜잭션 시점 요청 신호를 수신하고, 트랜잭션 시점 요청 신호에 기초하여 연산 시간 범위를 결정하고, 예측용 데이터를 선택하는 입력 모듈; 예측용 데이터에 기초하여 특징 벡터를 산출하는 데이터 변환 모듈; 특징 벡터에 기초하여 예측 값을 산출하는 예측 모듈; 예측 값에 기초하여 연산 시간 범위 내에서 최대 설정 수익을 가지는 트랜잭션 설정 시간을 연산하는 트랜잭션 시간 설정 모듈; 및 최대 설정 수익을 가지는 트랜잭션 설정 시간을 사용자 노드에 전송하는 출력 모듈을 포함한다. 이에, 트랜잭션 결정 시점을 기준으로 미리 설정한 시간 범위 내에서 가격 변동 요인 및/또는 사용자의 트랜잭션 목적을 고려하여 트랜잭션을 처리함으로써 사용자가 더 많은 이익을 창출할 수 있다.
본 발명의 다른 특징에 따르면, 데이터 변환 모듈은 오토인코더를 포함하며, 오토인코더의 입력층에 예측용 데이터가 입력되고, 특징 벡터는 오토인코더의 은닉층의 중앙에 위치한 층에서 연산될 수 있다.
본 발명의 또 다른 특징에 따르면, 예측 모듈은 RNN(Recurrent Neural Network) 또는 LSTM(Long Short Term Memory)을 포함할 수 있다.
본 발명의 또 다른 특징에 따르면, 예측용 데이터는 온체인(on-chain) 데이터, 오프체인(off-chain) 데이터 및 이벤트 데이터 중 적어도 하나를 포함할 수 있다.
본 발명의 또 다른 특징에 따르면, 트랜잭션 시점 결정 요청은 거래 목적 정보를 포함하고, 입력 모듈은 거래 목적 정보에 따라 연산 시간 범위를 설정하도록 구성될 수 있다.
본 발명의 또 다른 특징에 따르면, 최대 설정 수익은 아래 수학식 1
(수학식 1)
Figure 112018113263492-pat00001
(단, R은 전략 수익, yt+1은 예측 모듈의 예측 값, yt는 현재 시점의 실제 값, b 와 s는 총 거래 시간 단위, B와 S는 트랜잭션 비용)
에 따라 연산된 전략 수익에 기초하여 연산될 수 있다.
본 발명의 또 다른 특징에 따르면, 최대 설정 수익은 아래 수학식 2
(수학식 2)
Figure 112018113263492-pat00002
(Price(t)는 예측 모듈을 통해 예측된 t시점에서의 가격이고, Portion(t)는 t시점에서의 거래 비율)
에 따라 연산될 수 있다.
전술한 바와 같은 과제를 해결하기 위하여 본 발명의 다른 실시예에 따른 트랜잭션 금액 결정 방법은 하나 이상의 암호 화폐용 데이터들을 데이터 변환 모듈에 입력하는 단계, 데이터 변환 모듈에 입력된 암호 화폐용 데이터를 기반으로 미리 설정된 단위 시간에 대응하는 벡터를 추출하는 단계, 및 추출된 벡터를 기반으로 트랜잭션 금액을 예측하는 단계를 포함한다. 이에, 사용자마다 암호 화폐에 대한 최적의 트랜잭션 시점을 자동으로 예측함으로써, 사용자의 편의성을 증대시킴과 동시에 트랜잭션 수익을 극대화할 수 있다.
본 발명의 다른 특징에 따르면, 암호 화폐용 데이터는 온체인(on-chain) 데이터, 오프체인(off-chain) 데이터 및 이벤트 데이터 중 적어도 하나를 포함하고,
데이터 변환 모듈의 입력값으로 온체인(on-chain) 데이터, 오프체인(off-chain) 데이터 및 이벤트 데이터 중 어느 하나 또는 이들의 조합이 입력될 수 있다.
본 발명의 또 다른 특징에 따르면, 트랜잭션 금액을 예측하는 단계는, 가격 변동 요인 및 사용자의 트랜잭션 목적 중 적어도 하나를 고려하여 설정된 트랜잭션 설정 시간 범위 내에서 이루어질 수 있다.
기타 실시예의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명은 사용자마다 암호 화폐에 대한 최적의 트랜잭션 시점을 자동으로 예측함으로써, 사용자의 편의성을 증대시킴과 동시에 트랜잭션 수익을 극대화할 수 있다.
본 발명은 트랜잭션 결정 시점을 기준으로 미리 설정한 시간 범위 내에서 가격 변동 요인 및/또는 사용자의 트랜잭션 목적을 고려하여 트랜잭션을 처리함으로써 사용자가 더 많은 이익을 창출할 수 있다.
본 발명에 따른 효과는 이상에서 예시된 내용에 의해 제한되지 않으며, 더욱 다양한 효과들이 본 명세서 내에 포함되어 있다.
도 1은 본 발명의 일 실시예에 따른 트랜잭션 시점 결정 시스템의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 트랜잭션 금액 결정 방법의 전체 프로세스를 나태내는 블럭도이다.
도 3은 본 발명의 일 실시예에 따른 트랜잭션 금액 결정 장치의 블럭도이다.
도 4는 본 발명의 일 실시예에 따른 트랜잭션 금액 결정 방법을 나타내는 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 온체인 데이터를 설명하기 위한 도면이다.
도 6은 본 발명의 일 실시예에 따른 트랜잭션 시점 결정 시스템의 인스트럭션들에 대한 예시도이다.
도 7a 내지 도 8은 본 발명의 일 실시예에 따른 트랜잭션 금액 결정 방법을 설명하기 위한 흐름도이다.
도 9는 본 발명의 일 실시예에 따른 트랜잭션 시점 결정 시스템의 시간 단위별 트랜잭션 금액을 나타낸 그래프이다.
도 10은 본 발명의 일 실시예에 따른 트랜잭션 시점 결정 시스템의 데이터별 예측된 트랜잭션 금액을 나타낸 그래프이다.
도 11은 본 발명의 일 실시예에 따른 이벤트 데이터에 대한 트랜잭션 설정 시간을 설명하기 위한 도면이다.
이하의 내용은 단지 발명의 원리를 예시한다. 그러므로 당업자는 비록 본 명세서에 명확히 설명되거나 도시되지 않았지만 발명의 원리를 구현하고 발명의 개념과 범위에 포함된 다양한 장치를 발명할 수 있는 것이다. 또한, 본 명세서에 열거된 모든 조건부 용어 및 실시예들은 원칙적으로, 발명의 개념이 이해되도록 하기 위한 목적으로만 명백히 목적되고, 이와 같이 특별히 열거된 실시예들 및 상태들에 제한적이지 않는 것으로 이해되어야 한다.
또한, 이하의 설명에서 제1, 제2 등과 같은 서수식 표현은 서로 동등하고 독립된 객체를 설명하기 위한 것이며, 그 순서에 주(main)/부(sub) 또는 주(master)/종(slave)의 의미는 없는 것으로 이해되어야 한다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해질 것이며, 그에 따라 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다.
본 발명의 여러 실시예들의 각각 특징들이 부분적으로 또는 전체적으로 서로 결합 또는 조합 가능하며, 당업자가 충분히 이해할 수 있듯이 기술적으로 다양한 연동 및 구동이 가능하며, 각 실시예들이 서로에 대하여 독립적으로 실시 가능할 수도 있고 연관 관계로 함께 실시 가능할 수도 있다.
이하, 첨부된 도면을 참조하여 본 발명의 다양한 실시예들을 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 트랜잭션 시점 결정 시스템의 구성도이다. 도 2는 본 발명의 일 실시예에 따른 트랜잭션 서버를 설명하기 위한 블럭도이다.
도 1을 참조하면, 블록체인 트랜잭션 시점 결정 시스템(1000)은 복수의 사용자 노드(200) 및 트랜잭션 서버(100)를 포함한다. 여기서 사용자 노드(200)는 PC, 휴대폰, 또는 다른 서버 등 다양한 형태의 컴퓨팅 장치들을 포함할 수 있다. 또한, 트랜잭션 서버(100)는 사용자 노드(200)과 연결되어 있는 수많은 노드 중의 일 노드로서 트랜잭션 금액 결정 기능 및 연산을 수행할 수 있는 모듈을 적어도 일부 포함하고 있는 컴퓨팅 장치를 의미할 수 있다. 이 경우, 복수의 사용자 노드(200) 중 어느 하나는 거래소 서버(200-1)를 더 포함할 수도 있다. 예컨대, 거래소 서버(200-1)는 하나의 블록체인 시스템에 포함되면서, 암호 화폐를 다른 화폐(예컨대, 달러나 원 등의 실물 화폐 또는 이더리움, 비트코인 등의 암호 화폐)와 거래할 수 있는 거래소 서버를 의미한다. 트랜잭션 서버(100)는 거래소 서버(200-1) 내 복수의 서버 중 어느 하나의 서버일 수도 있으며, 또는 개별적인 분석 업무를 수행하는 개별 서버일 수도 있다.
도 2를 참조하면, 트랜잭션 결정 서버(100)는 프로세서(110), 입력장치(120), 메모리(130), 출력장치(140) 및 통신모듈(160)을 포함할 수 있다. 또한, 본 명세서 상에서 트랜잭션 서버(100)는 트랜잭션 금액 결정 장치(180)를 포함할 수 있다.
도 1을 참조하면, 사용자 노드(200)들은 통신 네트워크를 통하여 연결되며, 트랜잭션 서버(100)와 사용자 노드(200)들 간의 연결은 통신 네트워크일 수도 있고 다른 전송매체일 수 있다. 또한, 트랜잭션 서버(100)와는 일부의 사용자 노드(200)만 연결될 수도 있고 모든 사용자 노드(200)가 논리적으로 연결되어 있을 수도 있다.
구체적으로, 다수의 사용자 노드(200)들은 트랜잭션 시점 결정 시스템(1000)을 이용하기 위해 트랜잭션 금액 결정 데이터를 트랜잭션 서버(100)로부터 전달받는다. 또는, 여러 사용자 노드(200)의 분산 컴퓨팅을 통하여, 또는 여러 사용자 노드(200) 중 어느 하나에서 트랜잭션 금액 결정 데이터를 결정 및 전달할 수도 있으나, 본 명세서에서는 이러한 경우를 모두 포괄하는 개념으로 “트랜잭션 서버(100)”라는 용어를 사용한다.여기서, 통신 네트워크는 유선 또는 무선일 수 있고, 서버, 라우터, 스위치, 무선 수신기 및 송신기 등은 물론, 전기 전도성 케이블 또는 광 케이블을 포함할 수 있다. 통신 네트워크는 또한 LAN(Local Area Network), WAN(Wide Area Network), 또는 다른 클라우드 네트워크를 포함할 수 있다.
통신 네트워크를 통해 사용자 노드(200)로부터 수신된 트랜잭션 금액 결정 요청을 처리하는 트랜잭션 서버(100)는 트랜잭션 금액 결정 프로세스를 수행하는 프로세서(110), 트랜잭션 금액 결정 프로세스를 기록하는 메모리(130), 트랜잭션 금액 결정 프로세스에 따라 동작하는 프로세서(110) 및 사용자 노드(200)와 통신을 수행하는 통신모듈(160), 기타 입력 장치(120) 및 출력 장치(140)를 포함할 수 있다. 이 경우, 트랜잭션 서버(100) 내의 프로세서(110), 입력장치(120), 메모리(130), 출력장치(140) 및 통신모듈(160)은 버스(150)를 통하여 연결될 수 있다.
프로세서(110)는 트랜잭션 동작 및 트랜잭션 서버(100)에서 트랜잭션 금액 결정 동작을 실행한다. 예컨대, 트랜잭션 서버(100)의 프로세서(110)는 블록체인 시스템의 하나의 노드로 참여하여, 암호 화폐를 이용하여 트랜잭션을 하고자 하는 사용자 노드(200)와 연동하여 암호 화폐를 이용한 결제 및 트랜잭션 내역을 포함하는 블록을 형성하고, 헤더(header) 부분에 기록된 해시(hash) 값을 이용하여 이전에 생성되었던 블록의 신뢰성을 확인하는 트랜잭션 동작을 수행할 수도 있으며, 또는 본 발명의 실시예에 따라 트랜잭션 금액 결정 동작을 수행할 수도 있다.
메모리(130)는 컴퓨터 프로그램을 저장하거나 보유할 수 있고, 텍스트, 데이터베이스, 그래픽, 오디오, 비디오, 이들의 조합 및 기타 데이터를 저장할 수 있다. 메모리는 컴퓨터로 판독가능한 매체 또는 컴퓨터로 판독가능한 저장 매체라고 지칭될 수 있고, RAM(Random Access Memory), ROM(Read Only Memory), 플래시 드라이브, 플로피 디스크, 하드 디스크, 콤팩트 디스크(CD-ROM), DVD(Digital Video Disc) 등과 같은 광 저장 매체, 또는 이들의 조합으로 이루어질 수 있다. 본 발명에는 트랜잭션 거래 금액 동작의 연산 및 제어 소프트웨어가 메모리(130) 속에 저장된 후, 프로세서(110) 상에서 실행될 수 있다.
통신모듈(160)은 트랜잭션 서버(100)가 통신 네트워크를 통해 사용자 노드(200)과 통신하는 기능을 수행한다. 예를 들면, 통신모듈(160)은 블루투스, 근거리 무선 통신(Near Field Communication, NFC), RFID(Radio-Frequency Identification), 지그비(Zigbee) 모듈, 저전력 블루투스 모듈(Bluethooth Low Energy, BLE), 무선랜(Wireless Local Area Net-work, WLAN), Wi-Fi 통신 등을 포함할 수 있다. 다만, 이에 한정되는 것은 아니다. 예컨대, 트랜잭션 서버(100)이 거래소 서버(200-1)에 포함되는 경우에 트랜잭션 서버(100)와 거래소 서버(200-1)는 내부망(Intranet)을 통해 연결될 수도 있고 또는 인터넷 등의 망을 통해 연결될 수도 있다.
사용자 노드(200)는 트랜잭션 금액 결정 서버(100)를 이용하려는 자가 사용하는 단말로서, 데스크탑 또는 노트북 등의 고정형(stationary) 단말 및 스마트폰, 태블릿 PC 등의 이동형(portable) 단말을 포함할 수 있다. 다만, 이에 제한되지 않으며 트랜잭션 요청을 서버로 전송하고, 서버로부터 트랜잭션 정보를 수신할 수 있는 단말이라면 모두 가능하다.
보다 상세하게 사용자 노드(200)는 인터넷 서비스, 데이터 전송 서비스와 같은 하나 이상의 범용 컴퓨팅 자원에 액세스(access) 가능한 전자 장치를 모두 포함할 수 있다. 또한, 사용자 노드(200)는 통신 네트워크를 통하여 온라인 자원에 액세스하는 사용자 특유의 정보를 저장하는 사용자 데이터베이스를 포함할 수 있으며, 데이터베이스는 본 발명의 암호 화폐 트랜잭션 방법을 구현하는데 필요한 그 밖의 정보와 데이터, 예컨대, 블록체인의 블록 데이터를 저장할 수 있다.
일반적으로 블록체인(block chain)은 네트워크 상에서 발생된 트랜잭션 정보가 네트워크 참여자들 간에 공유되는 노드 수만큼 복제되어 분산 저장되는 공개 디지털 트랜잭션 장부라는 개념을 갖는다. 블록체인 기술은 현재는 암호 화폐를 중심으로 활발하게 적용되고 있는데, 본 발명에서는 디지털 콘텐츠를 구성하는 데이터 조각들의 분포현황 혹은 이동경로의 현황을 파악하는 데에 블록체인 기술을 활용하려고 한다. 그에 따라, 본 발명에 따르면 다수의 사용자 노드(200)들이 각각 노드로서 블록체인의 디지털 원장 관리에 참여한다. 모든 사용자 노드(200)이 블록체인의 노드 역할을 수행할 수도 있고, 구현 예에 따라서는 일부 지정된 사용자 노드(200)에 한정하여 블록체인에 참여할 수도 있다.
이하에서는 도 3을 참조하여 본 발명의 일 실시예에 따른 트랜잭션 금액 결정 장치(180)에 대해 상세히 설명하기로 한다.
도 3을 참조하면, 트랜잭션 서버의 트랜잭션 금액 결정 장치(180)는 입력 모듈(181), 데이터 변환 모듈(183), FTST 범위 설정 모듈(184), 예측 모듈(185), TST 설정 모듈(187) 및 출력 모듈(188)을 포함할 수 있다. 본 명세서에서 입력 모듈(181), 데이터 변환 모듈(183), FTST 범위 설정 모듈(184), 예측 모듈(185), TST 설정 모듈(187) 및 출력 모듈(188)은 메모리(130)에 저장된 소프트웨어로 구현된 예로 설명되지만, 하드웨어 로직으로 구현될 수도 있다.
이 경우, 입력 모듈은, 사용자 노드(200)로부터 트랜잭션 시점 결정 요청 수신, 예측용 데이터(10)의 선택 및 예측용 데이터(10)의 노이즈 제거 기능을 수행할 수 있다.
구체적으로, 입력 모듈(181)은 먼저 복수의 사용자 노드(200) 중 어느 하나에서 트랜잭션을 시작하려는 경우에, 트랜잭션을 시작하려는 트랜잭션 트리거 사용자 노드(200)로부터 트랜잭션 금액 결정 요청을 수신하게 된다. 이 경우, 트랜잭션 트리거 사용자 노드(200)는 노드 내 설치된 애플리케이션 프로그램의 사용자 인터페이스를 통하여 사용자로부터 입력을 받아 트랜잭션 금액 결정 요청을 트랜잭션 서버(100)에 전송하게 된다.
여기서, 트랜잭션 금액 결정 요청은 거래 대상이 되는 2개의 사용자 노드 정보(사용자 IP 정보, 사용자 노드 종류(거래소, 개인) 등), 트랜잭션 트리거 사용자 노드(200)로부터 인식한 사용자의 트랜잭션 목적에 대한 정보를 포함할 수 있다. 구체적으로, 사용자 노드(200)는 사용자의 트랜잭션 목적에 맞는 트랜잭션 금액 결정 요청을 생성하여 사용자가 트랜잭션 결정 시스템을 통해 사용자에게 적합한 트랜잭션 금액을 결정 받을 수 있다. 예컨대, 트랜잭션 목적은 ICO(Initial Coin Offering) 참여 거래인지, 물품 대금 결제를 위한 것인지, 토큰 교환인지, 본인 소유지갑으로의 단순 이동인지 등이 될 수 있다.
이러한 트랜잭션 금액 결정 요청이 수신되면, 입력 모듈(181)은 트랜잭션 금액 결정 요청에 해당하는 트랜잭션 목적에 따른 예측용 데이터(10)를 선택한 후, 웨이브 렛 변환(Wavelet Transform)을 사용한 데이터 전처리를 통하여 암호 화폐 관련 데이터를 시계열로 분해하고 노이즈를 제거할 수 있다. 그리고, 노이즈가 제거된 예측용 데이터(10)가 데이터 변환 모듈에 입력된다.
데이터 변환 모듈(183)는 입력 모듈(181)로부터 입력된 예측용 데이터(10)에 기초하여 예측 데이터 및 특성 벡터를 생성하고, 이 때 특성 벡터를 RNN(40)의 입력 값으로 입력하게 된다.
보다 구체적으로, 데이터 변환 모듈(183)은 예컨대, 딥 러닝 기반의 오토인코더(20)를 활용하여 구현될 수 있다(도 8 및 도 12 참조). 오토 인코더는 딥 러닝 기반의 비지도(Unsupervised) 학습 모델로, 뉴럴 네트워크 두개를 뒤집어서 붙여 놓은 형태로 구현된다.
이 경우, 예측용 데이터(10)는 이더리움, 비트코인의 거래 비용 등의 온-체인 데이터, 관련 암호 화폐의 가격 변동, 또는 특정 이벤트 발생 시의 암호 화폐의 가격 변동 등이 될 수 있다. 또한, 출력 데이터(30)는 상술한 예측용 데이터(10)의 데이터 획득 시점으로부터 일정한 시간이 지난 후의 데이터 또는 상술한 예측용 데이터(10)에 기반한 예측 데이터 등이 될 수 있다.
상술한 오토인코더(20)는, 상기 예측용 데이터(10)으로부터 예측값인 출력 데이터(30)가 출력될 수 있도록 학습이 되며, 이 경우, 예측용 데이터(10) 및 출력 데이터(30)의 개수는 오토인코더(20)의 내부의 계수들이 충분하게 연산될 수 있을 수 있는 규모의 학습 데이터가 필요하다.
오토인코더(20)는 입력층(23), 출력층(27) 및 은닉층(25)를 구비하게 되는데, 이 때, 은닉층(25)에는 학습을 통해 추출된 특징 벡터(28)들이 생성될 수 있고, 예를 들면, 도 12에서 h1, h2 등의 벡터일 수 있다. 즉, 특징 벡터(28)는, 두 개의 뉴럴 네트워크를 뒤집어서 붙인 형태인 오토인코더(20)에서 은닉층(25)의 중앙부의 층에서 형성된 벡터일 수 있다.
오토인코더(20)가 학습 모드에서 충분하게 학습되게 되면, 학습된 계수들을 통하여 상술한 종류의 입력 데이터의 예측이 가능하게 된다.
예측 모듈(185)은 입력 모듈에 의해 수신된 하나 이상의 트랜잭션 금액 결정 요청을 기반으로 사용자의 트랜잭션 목적에 맞는 최적의 거래 시점을 결정한다. 이 경우, 예측 모듈(185)은 예컨대, 상술한 특징 벡터(28)를 입력으로 하는 RNN(Recurrent Neural Networks) 또는 RNN의 일종인 LSTM(Long Short-Term Memory models)으로 구현될 수 있다. 예측 모듈(185)에 대한 보다 상세한 설명은 도 4 내지 도 7을 참조하여 후술하기로 한다.
이러한 구성에서, 데이터 변환 모듈(183)의 오토인코더(20) 및 예측 모듈(185)의 RNN 또는 LSTM은 학습 모드에서 학습용 데이터를 통하여 각각의 뉴럴 네트워크를 충분히 학습시키게 된다. 오토인코더(20) 및 RNN 또는 LSTM은 예컨대, 역전파(back propagation)을 통하여 학습시키게 된다. 또한, 학습용 데이터는 예컨대, 시간에 따른 변동을 가지는 온체인 데이터, 오프체인 데이터 및 이벤트 데이터와, 이러한 각 데이터들에 의하여 발생한 데이터 변동의 결과값이 될 수 있다.
상술한 학습 모드는 트랜잭션 서버(100)에 신규 데이터가 입력되는 한 계속적으로 진행될 수 있으며, 일정 시간 마다 정규적으로 학습된 뉴럴 네트워크의 계수들을 이용하여 트랜잭션 서버(100)의 예측 모드에서 예측을 수행하게 된다.
FTST 범위 설정 모듈(184)은 트랜잭션 목적에 기초하여 FTST 범위(Flexible Transaction Settlement Time range)를 설정할 수 있다. 트랜잭션 목적은 사용자 노드(200)에서 입력한 목적, 또는 거래의 종류를 의미하는 것으로, 상술한 바와 같이, ICO(Initial Coin Offering) 참여 거래인지, 물품 대금 결제를 위한 것인지, 토큰 교환인지, 본인 소유지갑으로의 단순 이동인지 등이 될 수 있다.
예컨대, 물품 결제를 목적으로 할 경우, FTST 범위 설정 모듈(184)은 물품 대금 결재가 신속하게 이루어지게 하기 위하여 거래 설정 시간(Transaction Settlement Time, 'TST')에 대한 최적값을 찾을 수 있는 여유 시간을 짧게 설정한다. 한편, 단순히 소유 지갑으로의 이동을 위한 것으로 목적인 경우에는 급할 이유가 없다고 판단하여 트랜잭션에 따른 리스크를 최대한 제거하는 것을 가장 큰 고려 요소로 보고, FTST 범위를 넓게 설정한다. 상세한 FTST 범위의 활용은 후술하기로 한다.
이 경우, FTST 범위 설정 모듈(184)은 후술할 TST 모듈(187, Transaction Settlement Time)에서 연산한 적절한 거래 타이밍에 따라 기계학습이 가능하도록 하는 것이 바람직하다. 예를 들어, FTST 범위 설정 모듈(184)은 최종적으로 연산된 TST 데이터들을 저장한 후, 거래 목적 및/또는 종류 별로 이동 평균을 구하거나, 또는 SVM 등의 기계학습을 통하여 최적의 FTST 범위를 기계 학습시킬 수 있다.
TST 모듈(187)은 상술한 FTST 범위 설정 모듈(184) 내에서 상술한 예측 모듈에서 예측한 예측값을 이용하여 전략 이익을 연산하여 최대 전략 이익이 되는 거래 타이밍에 거래할 수 있도록 거래 시점을 설정하는 모듈이다. TST 모듈(187)의 상세 동작은 후술하도록 한다.
출력 모듈(188)은 TST 모듈(187)에서 설정한 최적 거래 시점을 거래를 사용자 노드에 전송할 수 있다.
이하에서는 도 4 내지 도 11을 참조하여 트랜잭션 금액 결정 방법에 대해 상세하게 설명하기로 한다. 이러한 트랜잭션 금액 결정 동작은 상술한 학습 모드에서 충분한 학습을 진행한 후, 트랜잭션 서버(100)의 예측 모드에서 진행되는 것이다.
도 4는 본 발명의 일 실시예에 따른 트랜잭션 금액 결정 방법을 설명하기 위한 블록도이다. 도 5는 본 발명의 일 실시예에 따른 온체인 데이터를 설명하기 위한 도면이다. 도 6은 본 발명의 일 실시예에 따른 온체인 데이터에 대한 예시도이다. 도 7a, 도 7b 및 도 8은 본 발명의 일 실시예에 따른 트랜잭션 시점 결정 시스템의 가격 예측 방법을 상세히 설명하기 위한 블록도이다. 도 9는 본 발명의 일 실시예에 따른 트랜잭션 시점 결정 시스템의 시간 단위별 트랜잭션 금액을 나타낸 그래프이다. 이 경우, 도 9의 그래프의 가로축은 단위 시간(time)을 나타내고, 세로축은 트랜잭션 금액(price)을 나타낼 수 있다. 도 10은 본 발명의 일 실시예에 따른 트랜잭션 시점 결정 시스템의 데이터별 예측된 트랜잭션 금액을 나타낸 도면이다. 도 11은 본 발명의 일 실시예에 따른 이벤트 데이터에 대한 트랜잭션 설정 시간을 설명하기 위한 도면이다.
도 4를 참조하면, 트랜잭션 금액 결정 방법은 크게 세 단계를 포함할 수 있다.
먼저, 입력 모듈(181)은 시간에 따라 변화하는 데이터를 가지는 예측용 데이터(10)를 입력한다(단계 S410). 여기서, 예측용 데이터(10)는 일반적인 가격 예측을 위한 오프체인(off-chain) 데이터, 암호 화폐를 위한 온체인(on-chain) 데이터 및 가격에 일시적인 영향을 미치는 이벤트(event) 데이터를 포함할 수 있다. 예컨대, 도 6에 도시된 바와 같이, 예측용 데이터(10)는 예측을 위해 일일 트랜잭션 데이터, 기술 지표, 거대 경제 변수에 대한 다양한 데이터들을 포함할 수 있다.
온체인 데이터는 블록체인 내의 블록에 포함되는 데이터이다. 예를 들면, 도 5 및 도 6에 도시된 바와 같이, 거래 비용(예컨대, 이더리움의 가스 요금(Gas fee)), 해시레이트(Hash rate), 트랜잭션 토큰(Transaction topology), 토큰 분배율(Token Distribution Rate), 암호 화폐 가격 등을 포함할 수 있다. 구체적으로, 거래 비용은 트랜잭션 또는 계약을 실행하기 위하여 각 노드에 지불하는 비용으로 거래의 긴급 진행 여부 등의 필요에 따라 거래 비용(예컨대 가스)의 사용을 증가 또는 감소시킬 수 있고 이에 따라 거래 비용의 요금이 증가 또는 감소될 수 있다.
해시레이트는 암호 화폐의 해시 속도 응답 시간으로 암호를 푸는 연산력을 의미할 수 있으며, 해시레이트가 높으면 많은 사용자들이 네트워크에 뛰어들고 있는 상황으로 많은 연산력이 투입되는 상황으로 이해될 수 있다.
오프체인 데이터는 일일 트랜잭션 데이터, 기술 지표 등과 같이 일반적인 가격 예측에 사용되는 데이터일 수 있고, 이벤트 데이터는 SNS를 통한 텍스트 감성 분석, 정부 등에 의한 규제, 뉴스(news), 급격한 가격의 변화, 상장 등과 같이 가격에 일시적인 영향을 미치는 상황에서의 각종 데이터일 수 있다.
다음으로, 웨이브 렛 변환(Wavelet Transform)을 사용한 데이터 전처리를 통하여 암호 화폐 관련 데이터를 시계열로 분해하고 노이즈를 제거한 후, 오토인코더(20)에 입력 데이터, 예측용 데이터(10)를 입력하고 특징 벡터(28)를 추출한다. (단계 S420) 이 경우, 오토인코더(20)의 입력 값은 단위 시간에 일어난 온체인 데이터, 오프체인 데이터 및 이벤트 데이터 중 적어도 하나가 입력될 수 있다. 예를 들면, 도 7a에 도시된 바와 같이, 온체인 데이터, 오프체인 데이터 및 이벤트 데이터가 3개의 입력 값으로 들어갈 수 있고, 도 7b에 도시된 바와 같이 온체인 데이터, 오프체인 데이터 및 이벤트 데이터의 조합이 하나의 입력으로 들어갈 수도 있다.
구체적으로, 도 7a, 도 8 및 도 12를 참조하면, 오토인코더(20)의 입력층(23)에 각각 온체인 데이터, 오프체인 데이터 및 이벤트 데이터 중 어느 하나를 포함하는 예측용 데이터(입력 데이터)(10)를 입력하면, 은닉층(25, Encoded layer)에서 각 데이터의 특징 벡터(28)인 Von-chain벡터, Voff-chain벡터, VEvent벡터가 출력된다. 즉, 각각의 연속된 값에 대한 데이터 변환 모듈(183)를 개별적으로 학습하여 개별적으로 벡터화 시킨 후 개별 벡터를 결합하여 RNN(40)의 입력값으로 사용할 수 있다.
이 때, 오토인코더(20)에 다수의 데이터가 인코딩되는 경우, 시간도 오래 걸리면서 오래된 데이터의 정보가 유실될 수 있다. 따라서, 한 스텝의 시간 단위는 인지 가능한 단위여야 하고, 사용자가 관심있는 시간 단위여야 한다. 이때, 너무 작은 시간 단위의 캔들 차트를 이용할 경우 많은 자원이 소모되거나 오래된 데이터의 정보가 유실될 수 있고, 너무 큰 시간 단위의 캔들 차트를 이용할 경우 내부에서의 미세한 움직임을 감지할 수 없을 수 있다. 따라서, 오토인코더(20)에 입력하기 전에 입력 값을 적절한 시간 단위의 캔들 차트로 변형하여 입력할 수도 있다.
따라서, 도 9를 참조하면, (a)그래프는 모든 트랜잭션가격을 나타낸 경우이고, (b)그래프는 1분 단위의 캔들 차트를 나타낸 경우이고, (c)그래프는 20분 단위의 캔들 차트를 나타낸 경우이다. 다만, (c)의 경우는 입력 데이터의 정보 소실이 많을 수 있다. 다만, 상술한 바와 같이, 1분 단위의 정보는 너무 많은 벡터 사이즈를 가질 수 있고, 시간 단위의 변화에 유연하게 대응하기 어려울 수 있다.
한편, 도 7b 및 도 8을 참조하면, 데이터 변환 모듈(183)의 입력층에 온체인 데이터, 오프체인 데이터 및 이벤트 데이터를 합한 데이터를 동시에 입력하면, 은닉층(25)에서 Vchain벡터가 출력된다. 즉, 복수의 데이터는 하나의 데이터 변환 모듈(183)에 의해 하나의 값으로 벡터화되고, 하나의 벡터값은 RNN(40)의 입력값으로 사용될 수 있다.
또한, 해시레이트와 코인 가격과 같이 연속적인 변화는 시가, 종가, 저가, 고가, 거래량과 같은 더 작은 시간 단위로 변환하여 각각 입력 값으로 입력할 수 있다. 또한, 이벤트 데이터와 같이 단발성으로 일어나는 데이터는 단위 시간에 하나의 입력으로 사용될 수 있다.
이후, RNN(40) 또는 LSTM을 활용하여 단위 시간에 대해 인코딩된 데이터를 벡터로 하고 다음 예측 시간의 가격에 대응하는 출력을 생성한다(단계 S430).
구체적으로, 도 8 및 도 12에 도시한 바와 같이, 본 발명에 따른 트랜잭션 서버(100)는 오토인코더(20)에서 예측용 데이터(10)를 입력하여 추출한 특징 벡터(28)를 RNN(40) 또는 LSTM의 입력값으로 활용하여 예측용 데이터(10)의 예측 시점의 가격(또는 데이터)의 증가/감소, 시가, 종가, 저가, 고가, 거래량 등의 변동을 예측할 수 있다.
도 10은 RNN(40) 또는 LSTM의 예시적인 결과를 설명하기 위한 도면이다. 예컨대, 시점 i 까지의 비트코인 가격(bit/$), 해쉬 레이트, 가스 요금, 트위터 이벤트 데이터들이 입력되게 되면, 시점 i+1, i+2, i+3 까지의 비트코인 가격 예측이 출력되게 된다.
도 10에서는 사용자의 설정에 따라 대략 20분 정도의 단위마다 금액을 산출한 캔들 차트인 것으로 가정하였으나, 시간의 단위는 사용자가 임의로 변경 가능하다. 또는 사용자가 입력한 거래 목적에 연동하여 변동될 수도 있다.
이렇게 예측이 완료되게 되면, 트랜잭션 시점을 결정하기 위하여 TST를 연산하게 된다.
구체적으로, TST 모듈(187)은 먼저, FTST 범위 내에서 아래 (수학식 1)에 의해 전략 수익(R)을 연산할 수 있다.
(수학식 1)
Figure 112018113263492-pat00003
(단, R은 전략 수익, yt+1은 트랜잭션 설정 시간(TST) 동안 예측된 가치(값), yt는 현재 시점의 실제 가치(값)이고, b 와 s는 총 거래 시간 단위, B와 S는 트랜잭션 비용)
한편, TST 모듈(187)은 도 11에 나타낸 바와 같이, TST 값을 1에서 FTST 범위까지 변화시키면서, 설정 수익(EXP)를 아래 (수학식 2)와 같이 구할 수 있다.
(수학식 2)
Figure 112018113263492-pat00004
(여기서, Price(t)는 예측 모듈을 통해 예측된 t시점에서의 가격이고, Portion(t)는 t시점에서의 거래 비율을 의미함)
이 때, Portion(t)는 거래 전략에 따른 거래 비율을 의미하는데, 거래 전략이란, 하나의 거래 시에 단위 시간마다 분할거래를 하거나, 아니면, 하나의 시점에서 전체 거래량을 거래하거나 하는 사용자의 전략을 의미한다.
예를 들어, 거래 설정 시간(TST) 중 단위 시간 마다 동일한 량으로 분할하여 거래하는 경우에는 Portion(t) = (전체 거래량)/TST가 된다. 한편, 예를 들어, 거래 설정 시간(TST) 시점에서 전체 거래를 할 경우에는 Portion(TST) = 1, Portion(1), …Portion(TST -1)은 0으로 설정할 수 있다. 이 밖에도, 사용자는 다양한 전략으로 분할 거래를 할 수 있는데, 이러한 거래 전략은 트랜잭션 시점 결정 요청에 포함될 수도 있다. 또는 트랜잭션 서버(100)에 사용자 노드(200)별로 프로파일로 저장할 수도 있다.
TST 모듈(187)은 설정 수익(EXP)이 최대가 되는 TST 값을 찾아서 출력 모듈(188)로 출력하고, 출력 모듈(188)은 최초에 트랜잭션 시점 결정 요청을 전송했던, 사용자 노드(200)에 전송하게 된다.
바람직하게, 사용자 노드(200)는 수신한 TST 값을 활용하여 트랜잭션 시점을 설정하고, 자동으로 설정된 트랜잭션 시점에 거래가 이루어지도록 동작한다. 이 경우, 상술한 바와 같이, 사용자 노드(200)의 거래 전략에 따라 분할 트랜잭션이 발생할 수도 있다.
이를 통해, 사용자는 사용자의 트랜잭션 결정 시점에서의 가격이 적절한지를 판단할 수 있고, 트랜잭션 시점 결정 시스템(1000)에 의해 예측된 최적화된 거래 시점에 트랜잭션을 성사시킴으로써 수익을 최대화할 수 있다.
이에, 본 발명의 일 실시예에 따른 트랜잭션 시점 결정 시스템(1000)은 사용자가 트랜잭션 하려는 시점이 적절한 시점인지 판단할 수 있도록 사용자마다 암호 화폐에 대한 최적의 트랜잭션 시점을 자동으로 예측해주므로 사용자가 시스템을 편리하게 이용할 수 있는 효과가 있다.
또한, 트랜잭션 결정 시점을 기준으로 미리 설정한 시간 범위 내에서 가격 변동 요인 및/또는 사용자의 트랜잭션 목적을 고려하여 트랜잭션을 처리함으로써 사용자가 더 많은 이익을 창출할 수 있는 효과가 있다.
이하에서는, 도 13을 참조하여, 본 발명의 실시예에 따른 트랜잭션 시점 결정 시스템(1000)의 구체적인 사용예를 설명한다.
예를 들어, 휴대폰 사용자 노드(220)에서, 사용자가 비트코인을 이용하여 이더리움 등의 다른 코인을 거래소를 통하여 사는 경우에 대하여 설명한다. 거래소를 통하여 달러나 원화 등의 통화로 비트코인이나 이더리움 등의 암호 화폐를 사는 경우나, 또는 비트코인을 통하여 물품을 구매하는 경우에도 유사하게 적용될 수 있으나, 간략화를 위하여 설명은 생략하도록 한다.
이 경우, 휴대폰 사용자 노드(220)에서 사용자는, 매입 대상 코인의 종류(예를 들어, 이더리움)), 지불 수단 코인의 거래량 및 최적 시점 자동 매입 여부 정보(210)를 입력하게 된다.
그 후, 휴대폰 사용자 노드(220)에 정보 입력 후, 실행 버튼(230)을 누르게 되면, 트랜잭션 서버(100)에서는 사용자가 최적 시점 자동 매입을 원하는 경우에 TST를 연산하여 설정해 주게 된다.
최초에, 트랜잭션 서버(100)는 입력 모듈(181)에서 도 10에 기재한 바와 같이, 예측용 데이터(10)로서 시간에 따른 비트코인 가격 변동 정보, 이더리움 가격 변동 정보, 비트코인 및 이더리움의 해쉬 레이트 및 가스 비용, 그리고, 트위터 이벤트 정보를 선택하고 웨이브릿 변환을 통하여 노이즈를 제거한 후 데이터 변환 모듈(183)에 입력한다.
이 경우, 데이터 변환 모듈(183) 및 예측 모듈(185)은 기존 거래 정보에 의하여 충분히 학습된 상태이다. 특히, 이벤트 정보와 관련해서는, 예를 들어, 데이터 변환 모듈(183) 및 예측 모듈(185)은 트위터 상에 유가 상승에 대한 정보가 입력되는 경우에는 유가가 특정 기간(예컨대, 1 주) 동안 특정 값 이상으로 상승된 경우의 전후 거래 정보들을 이용하여 충분히 학습된 상태이며, 상기 학습된 계수에 기초하여 이벤트 시의 특징 벡터(28)를 추출할 수 있다.
입력 모듈은 예를 들어, 유가 상승, 타국가의 권력 교체 등 비트코인의 가격 변동에 영향을 줄 수 있을 만한 사건이 발생했다는 것을 관련 단어가 트위터 상에 일정량 이상 언급되는 것을 추출하여 이벤트 정보를 생성할 수 있다.
동시에, 트랜잭션 서버(100)는 FTST 범위 설정 모듈(184)에서 상술한 거래 목적인 코인 교환(코인 구매)에 해당하는 FTST 범위를 설정하여 TST 모듈(187)에 출력한다.
한편, 데이터 변환 모듈(183)는 입력된 예측용 데이터(10)에 기초하여 특징 벡터를 연산하여 예측 모듈(185)의 RNN 또는 LSTM에 입력하여 예측 결과를 도출하고, 다시, TST 연산(전략 수익 및 설정 수익 연산)을 통하여 최적의 TST를 산출하고, 사용자 노드(200)에 TST 값을 리턴한다.
마지막으로, 사용자 노드(200)은 리턴된 TST 값에 기초하여 기 설정된 거래 전략에 따라 구매를 자동 진행한다.
따라서, 본 발명에 따르면, 트랜잭션 시 암호 화폐의 최적 트랜잭션 시점을 정확하게 예측하여 매도 및 매수 시점에 따른 사용자의 손실을 최소화하고 수익을 극대화할 수 있는 트랜잭션 시점 결정 시스템을 제공할 수 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 더욱 상세하게 설명하였으나, 본 발명은 반드시 이러한 실시예로 국한되는 것은 아니고, 본 발명의 기술사상을 벗어나지 않는 범위 내에서 다양하게 변형실시될 수 있다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
1000: 트랜잭션 시점 결정 시스템
100: 트랜잭션 서버
110: 프로세서
120: 입력 장치
130: 메모리
140: 출력 장치
150: 프로세스
160: 통신모듈
180: 트랜잭션 금액 결정 장치
181: 입력 모듈
183: 데이터 변환 모듈
184: FTST 범위 설정 모듈
185: 예측 모듈
187: TST 모듈
188: 출력 모듈
200: 사용자 노드
200-1: 거래소 서버
210: 최적 시점 자동 매입 여부 정보
220: 사용자 노드
230: 실행 버튼
10: 예측용 데이터
20: 오토인코더
23: 입력층
25: 은닉층
27: 출력층
28: 특징 벡터
30: 출력 데이터
40: RNN

Claims (7)

  1. 사용자 노드로부터 트랜잭션 시점 요청 신호를 수신하고, 상기 트랜잭션 시점 요청 신호에 기초하여 연산 시간 범위를 결정하고, 예측용 데이터를 선택하는 입력 모듈;
    상기 예측용 데이터에 기초하여 특징 벡터를 산출하는 데이터 변환 모듈;
    상기 특징 벡터에 기초하여 예측 값을 산출하는 예측 모듈;
    상기 예측 값에 기초하여 연산 시간 범위 내에서 설정 수익이 최대가 되는 트랜잭션 설정 시간을 연산하는 트랜잭션 시간 설정 모듈; 및
    상기 트랜잭션 설정 시간을 상기 사용자 노드에 전송하는 출력 모듈을 포함하고,
    상기 트랜잭션 시점 요청 신호는 거래 목적 정보를 포함하고, 상기 입력 모듈은 상기 거래 목적 정보에 따라 상기 연산 시간 범위를 설정하도록 구성되는,
    트랜잭션 서버.
  2. 제1항에 있어서,
    상기 데이터 변환 모듈은 오토인코더를 포함하며, 상기 오토인코더의 입력층에 상기 예측용 데이터가 입력되고, 상기 특징 벡터는 상기 오토인코더의 은닉층의 중앙에 위치한 층에서 연산되는,
    트랜잭션 서버.
  3. 제1항에 있어서,
    상기 예측 모듈은 RNN(Recurrent Neural Network) 또는 LSTM(Long Short Term Memory)을 포함하는,
    트랜잭션 서버.
  4. 제1항에 있어서,
    상기 예측용 데이터는 온체인(on-chain) 데이터, 오프체인(off-chain) 데이터 및 이벤트 데이터 중 적어도 하나를 포함하는,
    트랜잭션 서버.
  5. 삭제
  6. 삭제
  7. 제1항에 있어서,
    상기 설정 수익이 최대가 되도록 하는 상기 트랜잭션 설정 시간은 아래 수학식 2
    (수학식 2)
    Figure 112020012541942-pat00006

    (여기서, Price(t)는 상기 예측 모듈을 통해 예측된 t시점에서의 가격이고, Portion(t)는 t시점에서의 거래 비율을 나타냄)
    에 따라 연산되는,
    트랜잭션 서버.
KR1020180139972A 2018-11-14 2018-11-14 트랜잭션 시점 결정 방법 및 시스템 KR102123908B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180139972A KR102123908B1 (ko) 2018-11-14 2018-11-14 트랜잭션 시점 결정 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180139972A KR102123908B1 (ko) 2018-11-14 2018-11-14 트랜잭션 시점 결정 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20200056081A KR20200056081A (ko) 2020-05-22
KR102123908B1 true KR102123908B1 (ko) 2020-06-17

Family

ID=70914130

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180139972A KR102123908B1 (ko) 2018-11-14 2018-11-14 트랜잭션 시점 결정 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR102123908B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024033806A1 (en) * 2022-08-08 2024-02-15 Corpus.Ventures Gmbh Systems and methods for transaction timing optimization

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102556892B1 (ko) * 2022-09-21 2023-07-19 주식회사 업루트컴퍼니 블록체인 온체인 데이터를 활용한 디지털자산 구매 및 보관 서비스 제공방법, 장치 및 프로그램

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017117152A (ja) * 2015-12-24 2017-06-29 みずほ証券株式会社 取引管理システム、取引管理方法及び取引管理プログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030063587A (ko) * 2002-01-23 2003-07-31 키움닷컴증권 주식회사 인터넷상의 매매타이밍과 연동되는 주식매매의 실시간주문 처리시스템 및 그 처리방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017117152A (ja) * 2015-12-24 2017-06-29 みずほ証券株式会社 取引管理システム、取引管理方法及び取引管理プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024033806A1 (en) * 2022-08-08 2024-02-15 Corpus.Ventures Gmbh Systems and methods for transaction timing optimization

Also Published As

Publication number Publication date
KR20200056081A (ko) 2020-05-22

Similar Documents

Publication Publication Date Title
Jiao et al. Toward an automated auction framework for wireless federated learning services market
US11995645B2 (en) Computer-implemented system and method for generating and extracting user related data stored on a blockchain
US11126659B2 (en) System and method for providing a graph protocol for forming a decentralized and distributed graph database
Chen et al. Machine learning in/for blockchain: Future and challenges
CN111553488B (zh) 一种针对用户行为的风险识别模型训练方法及系统
KR102112126B1 (ko) 인공지능 기반의 트랜잭션 화폐 결정 방법 및 시스템
Acampora et al. An interval type-2 fuzzy logic based framework for reputation management in Peer-to-Peer e-commerce
CN109816323A (zh) 用于区块链网络的交易审核方法、计算设备、存储介质
Bugday et al. Creating consensus group using online learning based reputation in blockchain networks
KR102123908B1 (ko) 트랜잭션 시점 결정 방법 및 시스템
KR101808954B1 (ko) 거래 원장에 기반한 계정의 가중 중심성 척도 계산 방법 및 그 장치
KR20200101541A (ko) 블록체인 기반 pos 결제 시스템 및 방법
Singh et al. Transaction confirmation time prediction in ethereum blockchain using machine learning
Kang et al. Stochastic modeling approaches for analyzing blockchain: A survey
CN110689412A (zh) 基于区块链的用于游戏虚拟物品交易的方法、装置、服务器和存储介质
US20230168944A1 (en) Systems and methods for automated staking models
CN116361542A (zh) 产品推荐方法、装置、计算机设备和存储介质
CN106302367B (zh) 事务处理方法和系统
KR102319870B1 (ko) 전문가에 의해 생성되는 프로젝트 결과물을 빅데이터 기반으로 관리하여 가상화폐를 제공하기 위한 방법 및 시스템
Bhuyan et al. The Forecasting About Bitcoin and Other Digital Currency Markets: The Effects of Data Mining and Other Emerging Technologies
Azeem et al. Blockchain based decentralized knowledge sharing system-Jigsaw
CN114090888B (zh) 服务模型构建方法及相关装置
de Vos et al. Real-time money routing by trusting strangers with your funds
KR20180020935A (ko) 거래 원장에 기반한 계정간 사회적 관계를 이용한 소셜 미디어 서비스 장치
Sen et al. The Latest Trend in India Cryptocurrency

Legal Events

Date Code Title Description
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant