(57)【要約】【課題】購入したい仮想通貨を取り扱う取引所が一本化されたようにスムーズに取引することができるシステムの提供。【解決手段】購入仮想通貨、購入条件、時期的条件を設定し、時期的条件によって設定した時期の到達を判定し、到達した場合に購入仮想通貨の購入処理を開始する時期管理手段と、購入処理を開始した場合、購入仮想通貨を取引する取引所との間で通信することにより、当該取引所で取引される購入仮想通貨の価格情報を取得し、取得した価格情報に基づいていずれかの取引所を選択する選択手段と、選択された取引所との間で通信により暗号鍵に基づく認証確認を行い、選択した取引所の提示する取引価格で前記購入仮想通貨を購入する購入手段と、を備える。【選択図】図８
2019191631.tif 000002
【特許請求の範囲】
【請求項１】
購入対象とする仮想通貨を、購入仮想通貨として設定する通貨設定手段と、
前記購入仮想通貨の購入条件を設定する購入設定手段と、
前記購入仮想通貨を購入する時期的条件を設定する時期設定手段と、
前記時期的条件によって設定した時期の到達を判定し、到達した場合に前記購入仮想通貨の購入処理を開始する時期管理手段と、
前記購入処理を開始した場合、前記購入仮想通貨を取引する取引所との間で通信することにより、当該取引所で取引される前記購入仮想通貨の価格情報を取得し、取得した価格情報に基づいていずれかの取引所を選択する選択手段と、
前記選択手段によって選択された取引所との間で通信により暗号鍵に基づく認証確認を行い、前記選択した取引所の提示する取引価格で前記購入仮想通貨を購入する購入手段と、
を備える仮想通貨取引システム。
【請求項２】
前記時期設定手段により設定された時期に到達するたびに、
前記選択手段は、前記購入仮想通貨を取引する取引所が公開しているアプリケーションソフトウェアにアクセスすることにより前記価格情報を取得し、
前記購入手段は、前記選択された取引所が公開しているアプリケーションソフトウェアに前記認証確認を介してアクセスすることにより前記購入仮想通貨を購入する、ことを繰り返す、請求項１に記載の仮想通貨取引システム。
【請求項３】
前記購入設定手段で設定される前記購入条件は、購入金額であり、
前記購入手段は、取得した前記価格情報及び前記購入条件に基づいて購入数量を決定し、決定した購入数量の前記購入仮想通貨を購入し、
前記取引所では、仮想通貨の販売及び購入を要求する入力を受け付け、販売及び購入の価格及び数量を一覧にすることにより両者をマッチングし、
マッチングの結果としての取引の結果を、暗号通信により、販売及び購入のそれぞれの取引の入力元に対して反映する、請求項１に記載の仮想通貨取引システム。
【請求項４】
前記通貨設定手段は、複数の購入仮想通貨を設定可能であり、
前記購入設定手段は、前記複数の購入仮想通貨に対してそれぞれ前記購入条件を設定し、
前記選択手段は、前記複数の購入仮想通貨のそれぞれに対して取引する取引所を選択し、
前記購入手段は、前記複数の購入仮想通貨のそれぞれに対して選択した取引所から該当する仮想通貨を購入する、請求項１に記載の仮想通貨取引システム。
【請求項５】
前記設定された購入仮想通貨、前記購入条件、及び前記時期的条件を、利用者がダウンロードした前記アプリケーションソフトウェア内に設定を保持し、前記アプリケーションソフトウェアと前記各取引所を直接接続し取引を行うことにより、前記購入仮想通貨の取引を行う、請求項１に記載の仮想通貨取引システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想通貨の決済を支援するシステムである。
【背景技術】
【０００２】
近年、ビットコインやイーサリアムをベースとする様々な仮想通貨が発行され、種類が増えてきている。これら仮想通貨に対する需要は伸びてきており、資産としての価値が上昇してきていることから、計画的に購入して長期的な資産形成にしたいという動きもある。株や不動産については、長期的な購入計画をサポートする様々なシステムが存在しているが、仮想通貨については未発達である。
【０００３】
例えば、株式の取引においては、いわゆるドルコスト投資法というものがある。日々価格が変動する投資商品に対して、毎月一定の額を投資し、高い値段では少なく、安い値段では多くの投資商品を購入するものである。さらにはネットトレードが現在では発達しているので、事前に設定をしておくことによりドルコスト投資法を実現するものもある。
【０００４】
ドルコスト法に限らず、事前に設定された方法で定期的に取引するシステムが求められており、株式市場では事前設定による定期的取引は多くみられる。取引対象となる取引所が複数にわたっていても、複数の電子取引システムに対して最も優位な条件で注文を処理するようにシステムができている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開2008-59292号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし以上の投資システムは、株式などの旧来からの投資商品にのみ用いられており、仮想通貨については実現されていなかった。従来の投資商品では、投資商品そのもの及び現金を、証券会社が保有し、保有した証券会社を通して、電子取引システムを介在して取引をしていたため、証券会社のシステムで例えばドルコスト法などの取引方法を実現しておけばそれで足りた。取引時には取引所を介して取引するが、取引所も多くのものがあり、その中からいずれかを選択することができる。計画的な投資を実現する方法は、取引所にて備えているものではなく、ユーザ自身のシステムとして備えなければならず、システム開発が進んでいなかった。
【課題を解決するための手段】
【０００７】
本発明に係る仮想通貨取引システムは、購入対象とする仮想通貨を、購入仮想通貨として設定する通貨設定手段と、前記購入仮想通貨の購入条件を設定する購入設定手段と、前記購入仮想通貨を購入する時期的条件を設定する時期設定手段と、前記時期的条件によって設定した時期の到達を判定し、到達した場合に前記購入仮想通貨の購入処理を開始する時期管理手段と、前記購入処理を開始した場合、前記購入仮想通貨を取引する取引所との間で通信することにより、当該取引所で取引される前記購入仮想通貨の価格情報を取得し、取得した価格情報に基づいていずれかの取引所を選択する選択手段と、前記選択手段によって選択された取引所との間で通信により暗号鍵に基づく認証確認を行い、前記選択した取引所の提示する取引価格で前記購入仮想通貨を購入する購入手段と、を備える。
【発明の効果】
【０００８】
本発明によれば、購入したい仮想通貨、購入条件、時期的条件を設定しておくことにより、購入したい仮想通貨を取り扱う取引所がいくつかに分かれている場合でも、必要な取引所に対してそれぞれアクセスを行い、１つの取引所に一本化されたようにスムーズに取引することができる。例えば取引所によって取引がない仮想通貨がある場合であったり、取引所によって価格が異なる場合でも取引者にとって有利なように調節して取引することが可能である。その結果として、取引所や価格等の取引内容を個別に指定しない取引条件の設定に対しても、適切な取引内容を選択して、不利でない取引内容を実現することができる。
【図面の簡単な説明】
【０００９】
【図１】仮想通貨取引システムが適用されるシステム全体の構成図。
【図２】仮想通貨取引システムに関する機能的構成を示すブロック図。
【図３】取引条件を設定する設定画面。
【図４】仮想通貨取引所の情報取得を説明する説明図。
【図５】仮想通貨取引所の選択を説明する説明図。
【図６】取引処理全体を示すフローチャート。
【図７】取引所の選択処理を示すフローチャート。
【図８】取引所へのログイン処理を示すフローチャート。
【図９】取引所の価格情報の取得処理を示すフローチャート。
【図１０】選択した取引所への発注処理を示すフローチャート。
【発明を実施するための形態】
【００１０】
以下、図面を参照して本発明の実施の形態を説明する。ただし、以下に説明する実施形態は、あくまでも例示であり、以下に明示しない種々の変形や技術の適用を排除する意図はない。即ち、本発明は、その趣旨を逸脱しない範囲で種々変形して実施することができる。また、以下の図面の記載において、同一または類似の部分には同一または類似の符号を付して表している。図面は模式的なものであり、必ずしも実際の寸法や比率等とは一致しない。図面相互間においても互いの寸法の関係や比率が異なる部分が含まれていることがある。
【００１１】
図１は、仮想通貨取引システムが適用されるシステム全体の構成図である。仮想通貨取引システムによれば、取引所サーバ１０〜４０が接続されたネットワーク環境に、情報端末５０と、システムサーバ６０及びアプリケーションプロバイダ７０の各サーバが接続されている。
【００１２】
取引所サーバ１０〜４０は、仮想通貨取引所にて取引のために設置されたサーバである。仮想通貨取引所は、販売所と取引所に大きく分けられる。販売所は、その販売所の所有者が保有している仮想通貨を直接販売している場所のことを言う。取引所は、証券取引所の同様の仕組みで、仮想通貨を買いたい者と売りたい者がそれぞれ希望価格及び数量を提示して、いわゆる板と呼ばれる発注情報を積んでおくことで、発注情報を基に取引をマッチングする。発注情報のうちの最高希望購入価格と最低希望販売価格をマッチングして、取引を次々に成立させる。取引成立後は、仮想通貨の保有者から購入者に取引成立した仮想通貨を取引所を通して送り、決済代金を、購入者の保有者から仮想通貨に送金することで決済する。
【００１３】
情報端末５０は、ユーザが使用しているスマートホン、タブレット端末、携帯電話等の情報処理端末において実現される。以上に限られず、各種のコンピュータ機能を有する情報処理装置一般に適用することができるが、上述の小型情報処理端末において適用することを想定して説明する。情報端末５０は、取引所サーバ１０〜４０に対して認証可能であるとともに、仮想通貨の保有に関する情報を保持し、保持している仮想通貨の取引に関する情報を送受信する端末である。
【００１４】
システムサーバ６０は、情報端末５０と取引所サーバ１０〜４０との間の取引処理に際し、必要なデータ処理を実行するシステムである。本実施の形態に係るアプリケーションプログラム８０は、システムサーバ６０からアプリケーションプロバイダ７０を介して情報端末５０にダウンロードされ、情報端末５０で実行される。取引そのものは情報端末５０と取引所サーバ１０〜４０の間で直接行うが、補助的なシステム管理はシステムサーバ６０の側で実行する。
【００１５】
アプリケーションプロバイダ７０は、システムサーバ６０からアプリケーションプログラム８０を取得し、各情報端末５０にてダウンロード要求が来たときに、認証及び場合によっては決済を経て、アプリケーションプログラム８０を各情報端末５０にダウンロードする。
【００１６】
本実施の形態は、情報端末５０がアプリケーションプログラム８０を取得してインストールすることにより実行されるが、そのハードウェア構成及びソフトウェア構成について、後述する。
【００１７】
（本システムのハードウェア構成について）
情報端末５０、システムサーバ６０及びアプリケーションプロバイダ７０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と，ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）と，ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）と，画像処理部と，メモリを備えている。ＣＰＵ，ＲＯＭ，ＲＡＭ，画像処理部及びメモリは，バスを介して相互に接続されている。
【００１８】
ＣＰＵは，ＲＯＭに記録されているプログラム，又はメモリからＲＡＭにロードされたプログラムに従って各種の処理を実行する。ＲＡＭには，ＣＰＵが各種の処理を実行する上において必要なデータ等も適宜記憶される。
【００１９】
画像処理部は，ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）や，ＶＲＡＭ（Ｖｉｄｅｏ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等から構成されており，ＣＰＵと協働して，画像データに対して各種画像処理を施す。例えば、画像処理部は、撮像部１０から出力される撮像画像のデータに対し、ノイズ低減、ホワイトバランスの調整、手ぶれ補正等の画像処理を施す。
【００２０】
メモリは，ＤＲＡＭやキャッシュメモリ，磁気ディスク，光ディスク，光磁気ディスク，或いは半導体メモリ等何らかの記憶媒体が挙げられる。メモリは，バスにより接続されるもののみならず，ドライブを介して読み書きされるものも含まれる。本実施形態で記憶されたデータは，一時的記憶も不揮発性メモリによる長期記憶の場合も，このメモリにいったん記憶するものとして説明する。
【００２１】
情報端末５０、システムサーバ６０及びアプリケーションプロバイダ７０には入出力インターフェースが接続される。入出力インターフェースを介して，表示部，入力部，通信部が接続されている。入力部は，各種ボタンにより構成され，ユーザの指示操作を受け付ける。通信部は，インターネットを含むネットワークを介して他の装置との間で行う通信を制御する。
【００２２】
表示部は表示画面５５を有し、画像処理部によって形成された画像または映像を表示し、再生するディスプレイ装置を有する。ディスプレイ装置は、モニタや液晶ディスプレイなどの各種ディスプレイ装置が想定される。本実施形態では、ＣＰＵ等で画像表示すべき画像データを生成し、画像処理部を介して表示画面上に画像表示処理を行う。以降、単に「表示する」と説明をするときは、以上の機能を含めて表示処理を実行することを含む。
【００２３】
情報端末５０、システムサーバ６０及びアプリケーションプロバイダ７０は、以上の各構成を備えるが，機能的構成については後述する。各機能的構成は，ＣＰＵ，ＲＯＭ，ＲＡＭ，画像処理部及びメモリの協働動作により機能的に実現される。これらの各部の機能は電子回路又はプログラムによって提供されるモジュール構成であり，プログラムについてはＲＯＭに格納され，ＣＰＵにより適宜読み出しながら各部と協働することで実行される。
【００２４】
図２は、仮想通貨取引システムに関する機能的構成を示すブロック図である。図２に示すアプリケーションプログラム８０は、設定部１００、時期管理部１５０、選択部１６０、購入部１７０を備える。
【００２５】
（仮想通貨取引の設定）
設定部１００は、本実施の形態に係る仮想通貨取引の各種設定を行い、設定事項を保持する機能的構成である。設定部１００は、通貨設定部１１０と、購入設定部１２０と、時期設定部１３０と、を備える。表示画面５５に設定のための入力および選択画面を表示し、表示画面５５に対する操作を反映することにより、各種設定を実行する。
【００２６】
通貨設定部１１０は、購入対象とする仮想通貨を、購入仮想通貨として設定する。選択可能な仮想通貨としては、例えばビットコインやイーサリアムなど、多岐にわたる仮想通貨を購入対象の選択肢とする。購入対象の選択肢となる仮想通貨から、購入する選択肢を少なくとも１つ選択する。本実施例では、円通貨から、各仮想通貨を購入する場合を中心に説明するが、仮想通貨から仮想通貨を購入する取引にも対応する。この場合、どの仮想通貨により、他のどの仮想通貨を購入するのかを両方とも設定する。
【００２７】
１つの仮想通貨を購入するとして選択するのが単純であるが、複数の仮想通貨を選択可能としても良い。その場合、購入する仮想通貨の金額比率を決めておく。例えばビットコイン：イーサリアム＝４：１と設定しても良い。未設定の場合には均等割合にするなどの初期設定も可能とする。通貨設定部１１０は、仮想通貨及びその購入比率を選択したら、購入対象として設定しておく。
【００２８】
購入設定部１２０は、購入仮想通貨の購入条件を設定する。購入条件の例としては、各回あたりの購入金額が挙げられる。購入設定部１２０は、その他仮想通貨の購入に必要な各種設定を行い、設定情報を保存する。設定情報としては、通信設定、ユーザの名前、ユーザが保有するウォレットのアクセス情報が挙げられる。
【００２９】
この他にも、取引所を選択することにより取引所を設定し、取引所に関する各種情報を保存する。取引所に関する各種情報として、取引所サーバのエンドポイントや、各取引所のＡＰＩに対する個別のアプリケーションプログラム及び関連情報を含む。さらに、署名に必要なＩＤ情報及び暗号・パスワード情報も含む。
【００３０】
時期設定部１３０は、購入仮想通貨を購入する時期的条件を設定する。例えば毎月１回購入するという設定も可能であり、具体的に購入する日時を設定する。日時には幅を持たせておいて、その中で一定の条件に合致したタイミングで購入処理を実行し、満たさないときは、その期間の終わりに購入処理するという設定も可能である。
【００３１】
図３は、取引条件を設定する設定画面を示す。取引条件の設定に移行した場合、アプリケーション８０は、表示画面５５に図３に示す設定画面を表示する。取引設定として、まず購入を希望する仮想通貨を指定する。図３では、通貨１、通貨２として表示している。選択する仮想通貨は１つだけでもよいし、設定により追加して通貨３、通貨４、と増やしていっても良い。
【００３２】
ここで通貨１として仮想通貨Ａ、通貨２として仮想通貨Ｂを設定した場合を図3に示しているが、各仮想通貨の購入比率も併せて入力する。初期設定値では均等割りとするので、仮想通貨Ａ：仮想通貨Ｂ＝５０：５０の場合を図３に示すが、ここで３０：７０のように、入力により設定値を変えても良い。また、金額や数量比により選択しても良い。
【００３３】
次に、１回の取引ごとの取引金額、すなわち購入金額を入力する。図３の例では、各回でそれぞれ３万円ずつ購入していく場合について設定する。設定金額は３万円でも、毎回ちょうど３万円になることはほとんどなく、各種調節により、３万円を超えたり、３万円未満になったりする。実際の購入単位の決定については後述する。仮想通貨から設定する場合には、例えばビットコインを０．０１ＢＴＣを使って毎回購入する、のように設定する。
【００３４】
次に取引頻度を決定する。本実施例では月に１回の取引として設定する。そしてその取引の日付け及び取引時間を設定する。取引日が休日その他取引量が減る日となる等の場合には、取引日の振替設定をしても良い。また、日付ではなく曜日で設定しても良い。
【００３５】
図３に示す取引設定は以上であるが、その他、通信設定、各取引所毎の設定なども必要に応じて実行する。次に、設定部１００の各部による設定に基づき、設定条件に従った仮想通貨の取引処理を実行する。
【００３６】
（仮想通貨の取引処理）
時期管理部１５０は、時期的条件によって定められた該当する時期に到達したか否かを判定し、取引開始時期に到達したら、購入仮想通貨の取引処理を開始する。図３に示した例では、時期設定部１３０により、取引頻度を月に１回、取引日を毎月１５日、取引時間を１３：００と設定しているので、毎月１回、設定された日時を取引開始日時とする。この取引開始日時の到達を時期的条件の一例とする。取引開始により、選択部１６０及び購入部１７０の処理に移行する。
【００３７】
選択部１６０は取引所を選択するが、取引処理の開始に先立って、取引所の検索を行う。取引所の検索は、実際の取引そのものではないので、取引時間に先立って行ったり、又は前日に行っても良い。取引所の検索は、あらかじめ登録した取引所の中から実行する。例えば初期設定で１０社程度登録しておいてもよく、条件に応じて自動登録又は自動削除可能としても良い。
【００３８】
例えば１０社とすると、選択部１６０は、その各取引所について、通貨設定部１１０で設定した購入仮想通貨の取引があるかどうかを、取引所サーバ１０〜４０のうちの該当するものと通信することにより確認する。例えば購入仮想通貨Ｘ及び購入仮想通貨Ｙについて、取引所毎の取引所Ａでは両方取引があり、取引所Ｂでは購入仮想通貨Ｘは取引があるが、購入仮想通貨Ｙの取引はない、という確認結果を取得する。ここで、仮想通貨Ｘにより仮想通貨Ｙを購入する取引の場合、その取引所は仮想通貨Ｘと仮想通貨Ｙの両方を取引している必要があるので、交換に使う仮想通貨と交換で受け取る仮想通貨のペアで、各取引所に対して確認する。
【００３９】
（有利な取引所の選択）
選択部１６０は、購入処理を開始した場合、事前に検索された取引所のそれぞれとの間で通信することにより、当該取引所で取引される購入仮想通貨についての価格情報を取得する。つまり、選択部１６０は、購入するとして設定した購入仮想通貨を取引する取引所が公開しているＡＰＩ（アプリケーションソフトウェア）にアクセスすることにより価格情報を取得する。図４で仮想通貨取引所の情報取得について説明する通り、該当する購入仮想通貨の価格を取得して、表示画面５５に一覧で表示する。
【００４０】
単一種類の仮想通貨のみを取引しても良いが、複数通貨を取引する場合、選択部１６０は、複数の購入仮想通貨のそれぞれに対して取引する取引所を選択する。例えば購入仮想通貨Ａ及びＢに対して、図４に示すように、仮想通貨取引所１０では、Ａ：８４００円、Ｂは取引なしという情報を取得する。同様に、仮想通貨取引所２０では、Ａ：８３００円、Ｂは取引なしという情報を取得する。仮想通貨取引所３０では、Ａは取引なし、Ｂ：１４４００円という情報を取得する。仮想通貨取引所１０では、Ａ：８５００円、Ｂ：１４５００円という情報を取得する。仮想通貨間取引の場合も同様に、交換比率を各取引所毎に取得する。
【００４１】
選択部１６０は、取得した価格情報のうちの最も有利な取引条件を提供する取引所を選択する。最も有利な取引条件は、最低価格となる取引条件又は最良執行方針に基づく取引条件である。最も有利な取引条件と言うのは、購入する場合には通常は最低価格であることを示すが、例えば通信環境などの諸条件から、必ずしも案件な取引が保証できなかったり、その他最低価格であるからと言って必ずしも発注者にとって有利であるとは限らない場合には、その次の価格を提示する取引所を選択する。
【００４２】
図５は、仮想通貨取引所の選択を説明する。図４に示したように取引所ごとの価格を既に取得しているので、その取得している価格を互いに比較することにより、所望の仮想通貨について取引する取引所を選択する。仮想通貨Ａについては、図４に示した通り、仮想通貨取引所２０で提示される価格が８３００円と最も安いが、仮想通貨取引所２０では仮想通貨Ｂの取引がない。一方で仮想通貨Ｂについては、図４に示した通り、仮想通貨取引所３０で提示される価格が１４４００円と最も安い。
【００４３】
従って選択部１６０は、図５に示す通り、仮想通貨Ａについては仮想通貨取引所２０を選択し、仮想通貨Ｂについては仮想通貨取引所３０を選択する。ただし、取引対象とするすべての仮想通貨を同一の取引所で購入することを優先して選択しても良いし、また仮想通貨ごとに別々の取引所を選択するように選択しても良い。仮想通貨間取引の場合も同様に、交換比率が最も有利な、希望する仮想通貨を最も多く受け取れる取引所を選択する。
【００４４】
（仮想通貨の購入）
購入部１７０は、選択部１６０によって選択された取引所に対して、通信により暗号鍵に基づく認証確認を行い、最も有利な取引条件に基づく取引価格にて、購入仮想通貨を購入する。つまり、購入部１７０は、前記選択された取引所が公開しているアプリケーションソフトウェアに認証確認を介してアクセスすることにより前記購入仮想通貨を購入する。購入部１７０は、取得した価格情報及び購入条件に基づいて購入数量を決定し、決定した購入数量の購入仮想通貨を購入する。
【００４５】
取引所では、仮想通貨の販売及び購入を要求する入力を受け付け、販売及び購入の価格及び数量を一覧にすることにより両者をマッチングする。そしてマッチングの結果としての取引の結果を、暗号通信により、販売及び購入のそれぞれの取引の入力元に対して反映する。
【００４６】
複数種類の仮想通貨を設定により選択している場合は、購入部１７０は、複数の購入仮想通貨のそれぞれに対して選択した取引所から該当する仮想通貨を購入する。図４及び図５に示した例の場合、仮想通貨Ａについては仮想通貨取引所２０にて８３００円で購入し、仮想通貨Ｂについては仮想通貨取引所３０にて１４４００円にて購入する。
【００４７】
ここで、購入部１７０による購入は、購入設定部１２０による設定に基づいて実行する。例えば図３に示した購入設定によると、仮想通貨Ａと仮想通貨Ｂの購入額は５０：５０であり、購入総額は３万円である。ということは、仮想通貨Ａの購入額は１．５万円、仮想通貨Ｂの購入額は１．５万円と割り当てられていることになる。
【００４８】
しかしながら、仮想通貨Ａの８３００円と、仮想通貨Ｂの１４４００円は割り切れる数字ではない。１．５万円を割り当てた場合、仮想通貨Ａは約１．８単位、仮想通貨Ｂは１．０４である。概算すると仮想通貨Ａを２単位、仮想通貨Ｂを１単位とするのが購入総額に近い。とすると、仮想通貨Ａは２ｘ８３００円＝１６６００円分、仮想通貨Ｂは１ｘ１４４００円＝１４４００円分、合計で３．１万円分を購入することになる。このように最も近い購入総額の場合に合計金額を超える場合、請えないように購入するように設定しても良いし、超過分を累積して、累積分が一定以上となった場合に調整するやり方がある。本実施例の場合、仮想通貨Ａを２単位、仮想通貨Ｂを１単位分購入した。
【００４９】
以上、時期設定部１３０により設定された時期に到達するたびに、以上の選択部１６０によって取引所を選択し、購入部１７０によって所望の仮想通貨を購入するという処理を実行する。この仮想通貨の購入は、定期的な積み立ての観点から、設定された時期に到達するたびに取引処理を開始し、同様に最も有利な取引所をその度に選択して、最も有利な条件にて仮想通貨を購入する。自動により取引処理が繰り返されることで、有利な条件にて仮想通貨を積み立てていくことができる。
【００５０】
以上のように設定部１００により仮想通貨の購入単位を事前設定し、設定の通りに仮想通貨を購入する一連の流れについて説明した。その結果として、事前設定しておくだけで、仮想通貨を毎回自ら手続することなく計画的に購入することができる。実際は単に設定して購入した、という流れだけでなく、各取引所に自動ログインするＡＰＩを含めた機能としておく必要がある。その点を含めた説明を、フローチャートを参照して説明する。
【００５１】
図６は、取引処理全体の流れを示す。図６に示す処理の開始前に、時期設定部１３０により設定された時期的条件を満たしたかどうかを確認し、条件を満たしたときに本処理を開始する。具体的には、時期設定部１３０による積み立て設定を取得し、設定頻度に達したかどうかを確認しつつ、達しない場合には待機し続ける。設定頻度に到達したタイミングで本処理を開始する。
【００５２】
本取引処理を開始すると、まず選択部１６０は、設定部１００による各種設定から積み立て設定を取得する（ステップＳ１００）。次に、そして取得した設定に基づき、最適取引所を選択する（ステップＳ１１０）。本処理の詳細は図７を参照して後述する。
【００５３】
最適となる取引所を選択したら、加重係数を使用するか否かを判定し（ステップＳ１２０）、使用する場合には（ステップＳ１２０：Ｙｅｓ）、ステップＳ１３０〜Ｓ１５０の一連の取得により投資金額に加重をかけ、使用しない場合には（ステップＳ１２０：Ｎｏ）、投資金額そのものを使用する。
【００５４】
加重係数を使用する処理は次の通りである。まず、平均取得価格を取得する（ステップＳ１３０）。本処理の詳細は図９を参照して後述する。次に、現在価格が、計算して得た平均取得価格を下回っているか否かを判定する（ステップＳ１４０）。下回っていない場合（ステップＳ１４０：Ｎｏ）、投資金額そのものを使用する。下回っている場合（ステップＳ１４０：Ｙｅｓ）、投資金額に、あらかじめ設定した所定の加重係数をかけ合わせたものを、投資金額として使用する（ステップＳ１５０）。以上のようにして、ステップＳ１２０〜Ｓ１５０にて投資金額を設定する。
【００５５】
次に、購入数量を算出する（ステップＳ１６０）。購入数量は、以上のように決定した投資金額を、購入価格で割ることによって求める。購入数量を求めたら、取引所固有ログインを実行する（ステップＳ１７０）。本処理の詳細は図８を参照して後述する。取引所を選択したら、取引所固有発注を実行する（ステップＳ１８０）。本処理の詳細は図１０を参照して後述する。
【００５６】
図７は、取引所の選択処理を示す。図６のステップＳ１１０で実行する処理を、図７を参照して詳細に説明する。まず取引所固有ログインを実行する（ステップＳ２００）。本処理の詳細は図８を参照して後述する。取引所を選択したら、取引所固有価格情報を取得する（ステップＳ２１０）。本処理の詳細は図９を参照して後述する。
【００５７】
選択部１６０は、価格情報を取得した取引所について、その価格が最安であるか否かを判定する（ステップＳ２２０）。最安である場合、これまで比較対象としてきた取引所に比べて最適な取引所であるので、選択部１６０は、最適取引所に設定する（ステップＳ２３０）。このような一連の流れの中で、全ての取引所について価格を参照し、取引所ループを終了したか否かを判定し（ステップＳ２４０）、終了した場合は図７に示す一連のフローを終了し、終了していない場合には、次の取引所について価格情報を参照すべき、ステップＳ２００に戻って改めて処理を実行し直す。
【００５８】
図８〜図１０は、取引所サーバ１０〜４０が公開しているＡＰＩ（Application Programming Interface）を利用した取引処理についてのフローチャートを示す。ＡＰＩは各取引所で使用しているソフトウェアを一部公開して、端末５０のソフトウェアと機能を共有できるようにしたものである。ソフトウェアの一部をWEB上に公開することによって、外部から利用することができるようにしたものである。
【００５９】
取引所が公開しているＡＰＩに対して外部のウェブアプリケーションからアクセスすることにより、相場の情報をリアルタイムで取得し、入出金もプログラムから可能となる。またＡＰＩを使うことにより、チャートの作成、取引の自動化なども可能である。
【００６０】
ＡＰＩを使用するためのウェブアプリケーションを作成することができる。ファイルはＨＴＭＬで記述し、保存、公開することにより、ウェブアプリケーションとして公開することができる。
【００６１】
取引所APIでは、認証の必要ない Public API と必要のある Private API の2つのAPIが利用可能である。Public API では取引所の注文状況や公開されている取引の履歴、板情報を参照することができる。Private API では取引所での新規注文やそのキャンセル、自分の残高などを確認することができる。
【００６２】
Private APIの認証方法について説明する。（１）まずAPI Keyを作成する。APIキーは、取引所が公開しているアプリケーションから作成することができる。ここで生成される、アクセスキー及びシークレットアクセスキーは秘密保持しなければならない。この作成されたキーを使ってリクエストを作成する。（２）次に、パーミッションの設定を行う。キーを生成する際、機能ごとにパーミッションを設定することができる。また、任意のIPアドレスに使用を許可するよう設定することも可能である。
【００６３】
（３）次に、リクエストの作成を行う。認証が必要なリクエストでは、以下の情報を HTTP Header に含めてリクエストする必要がある。
（ACCESS-KEY）アクセスキー 
（ACCESS-NONCE）リクエストごとに増加する自然数。APIキーごとに管理する。 
（ACCESS-SIGNATURE）署名
【００６４】
（４）署名を作成する。署名は、ACCESS-NONCE, リクエスト先URL, リクエストのボディ を全て文字列にし連結したものを、HMAC-SHA256 hash形式でシークレットキーを使って署名することにより作成する。
【００６５】
端末５０と取引所サーバ１０〜４０のＡＰＩとの間で行う共通的な処理は以上であり、以上の共通的な処理に基づき、取引所にログインし、取引所で取引される価格情報を取得し、実際に取引及び決済を実行するが、その詳細について、図８〜図１０を参照して説明する。
【００６６】
図８は、取引所へのログイン処理を示す。図６のステップＳ１７０及びステップＳ２００で実行する処理を、図８を参照して詳細に説明する。まず、ポリモーフィズムを介して、選択した取引所にログインするための、各取引所ごとのＡＰＩを呼び出す。ここでのポリモーフィズムとは、複数の異なる型に対して共通のインタフェースを提供することである。
【００６７】
ここで取引所ＡＰＩごとに処理は異なるが、いずれも、まずエンドポイントを指定して、各取引所ごとのＡＰＩに対して必要な固有な処理を行い、最終的に署名処理を実行することにより、各取引所に対するログイン処理を実行する。署名処理まで完了後、取引所固有ログイン処理を終了する。
【００６８】
図９は、取引所の価格情報の取得処理を示す。図６のステップＳ１３０及び図７のステップＳ２１０で実行する処理を、図９を参照して詳細に説明する。図８の場合と同様にポリモーフィズムを介して、選択した取引所の価格情報を取得するための、各取引所ごとのＡＰＩを呼び出す。ここでも取引所ごとにＡＰＩに対する処理は異なるが、いずれも、まずエンドポイントを指定して、各取引所ごとのＡＰＩへのアクセスに対して必要な固有な処理を実行することにより、各取引所に対する価格情報取得処理を終了する。
【００６９】
図１０は、選択した取引所への発注処理を示す。図６のステップＳ１８０で実行する処理を、図１０を参照して詳細に説明する。図８の場合と同様にポリモーフィズムを介して、選択した取引所の価格情報を取得するための各取引所ごとのＡＰＩを呼び出す。ここでも取引所ごとにＡＰＩに対する処理は異なるが、いずれも、まずエンドポイントを指定して、各取引所ごとのＡＰＩへのアクセスに対して必要な固有な処理を実行することにより、各取引所に対する発注処理を終了する。
【００７０】
以上説明した本実施形態によれば、購入したい仮想通貨、購入条件、時期的条件、その他各種設定により、設定状況に従った仮想通貨の取引を実現することができる。具体的には、時期的条件を設定しておくことにより、設定された時期的条件に沿って、例えば何月何日の何時、というタイミングでの取引を実現することが出来る。そして、設定された仮想通貨を、例えば投資予定金額などのあらかじめ設定した購入条件に従って購入処理することができる。
【００７１】
仮想通貨の購入の際に、購入したい仮想通貨を取り扱う取引所がいくつかに分かれているので、設定情報に基づいて、必要な取引所に対してそれぞれアクセスし、仮想通貨の価格情報を取得する。取得した価格情報に基づいて適切な取引所を選択して取引実行するので、ユーザが従来のように個別に取引所にログインして、所望の取引条件を一つ一つ入力しなくても、１つの取引所に一本化されたようにスムーズに取引することができる。
【００７２】
例えば取引所によって取引がない仮想通貨がある場合であったり、取引所によって価格が異なる場合でも取引者にとって有利なように調節して取引することが可能である。その結果として、取引所や価格等の取引内容を個別に指定しない取引条件の設定に対しても、適切な取引内容を選択して、不利でない取引内容を実現することができる。
【００７３】
特に個々の取引を組み合わせて操作が煩雑になるほど、事前設定により決済まで自動化されることの利点は向上する。例えば、複数の仮想通貨について定期的に積み立てていきたい場合に、一つ一つ入力して取引するのは面倒が多い。しかしながら仮想通貨では、証券取引口座のように、単一の証券会社が口座を一括して管理しているのではなく、セキュリティの問題上、一つ一つログインして取引処理をしなければならない。
【００７４】
固定の取引所に決めて取引すれば問題は少ないが、取引所毎に取引価格にはばらつきがあり、有利な取引所を選択するメリットは大きい。これにさらに取引のタイミングであったり、端数の処理だったり、割安価格であったり、という諸条件を反映させる場合、取引者が自ら対応する場合にはさらに煩雑になるが、本実施形態によれば、以上の煩雑さを、設定により自動処理するので、処理が簡略化され、取引が簡易になり、仮想通貨取引への参入を促すことができる。
【００７５】
特に仮想通貨取引の特徴として、取引単位を小数点以下まで細かく細分化可能であることから、数十円単位から非常に少額で投資が可能である。上述の実施例の説明では月に１回を例にして説明したが、毎日取引しても良いし、毎時間ごとと言う取引も可能である。事前に取引設定をしておくことにより、このような細かい取引頻度に対応できるように、各取引を少額に設定して分割して購入を進めていくことができる。取引頻度が多くなるほどに、手作業での取引の実行は困難になり、自動化する利点が大きい。その際に有利な取引所を逐次自動で選択するので、取引全体の有利さを拡大していくことができる。
【００７６】
さらに仮想通貨取引の特徴として、仮想通貨間で取引できるというものがある。例えば株であれば株式交換に該当するが、これは当然オンライン取引で行う性質ものではなく、商品取引でも、とうもろこしとプラチナを交換する、ということは行われない。本実施の形態によれば、保有している仮想通貨と、取得したい仮想通貨をペアで設定することにより、また取引設定を事前に行うことにより、特定のポジションに偏っていた仮想通貨のポートフォリオを、設定に合わせて数多くの種類の仮想通貨に分散させることができ、逆に、特定の少数の仮想通貨に集約することもできる。
【００７７】
株の場合だと、保有している株が値上がりしすぎた場合、その株を一部売却した後、その売却益で他の株を購入してポートフォリオを分散させるということを行うが、本実施の形態では、事前設定により、仮想通貨間で適切なレートにより交換を進めることができるので、現金化のプロセスを経ることなく、所望の保有比率でのポートフォリオを実現することができる。
【００７８】
以上，本発明について実施例を用いて説明したが，本発明の技術的範囲は上記実施例に記載の範囲には限定されない。上記実施例に，多様な変更又は改良を加えることが可能であることが当業者に明らかである。その様な変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが，特許請求の範囲の記載から明らかである。
【符号の説明】
【００７９】
取引所サーバ１０〜４０、情報端末５０、システムサーバ６０、
アプリケーションプロバイダ７０、アプリケーションプログラム８０、
設定部１００、時期管理部１５０、選択部１６０、購入部１７０
【図１】
2019191631.tif 000003
【図２】
2019191631.tif 000004
【図３】
2019191631.tif 000005
【図４】
2019191631.tif 000006
【図５】
2019191631.tif 000007
【図６】
2019191631.tif 000008
【図７】
2019191631.tif 000009
【図８】
2019191631.tif 000010
【図９】
2019191631.tif 000011
【図１０】
2019191631.tif 000012