JP2013210851A - シミュレーション装置、取引自動化システムおよびプログラム - Google Patents

シミュレーション装置、取引自動化システムおよびプログラム Download PDF

Info

Publication number
JP2013210851A
JP2013210851A JP2012080735A JP2012080735A JP2013210851A JP 2013210851 A JP2013210851 A JP 2013210851A JP 2012080735 A JP2012080735 A JP 2012080735A JP 2012080735 A JP2012080735 A JP 2012080735A JP 2013210851 A JP2013210851 A JP 2013210851A
Authority
JP
Japan
Prior art keywords
transaction
analysis
scenario
revenue
profit
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2012080735A
Other languages
English (en)
Inventor
Taketoshi Takizawa
武利 滝沢
Jun Yoshida
潤 吉田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
DSB Information System Co Ltd
Original Assignee
Fujisoft KCS Co Ltd
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 Fujisoft KCS Co Ltd filed Critical Fujisoft KCS Co Ltd
Priority to JP2012080735A priority Critical patent/JP2013210851A/ja
Publication of JP2013210851A publication Critical patent/JP2013210851A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

【課題】収益の変動リスクを抑え、かつ高い収益期待というメリットを追求することにある。
【解決手段】金融商品取引管理サーバ4は、顧客約定データおよびCP気配値を取引解析サーバ9に順次に送信する。取引解析サーバ9は、解析結果を解析結果分析サーバ10に送信する。解析結果分析サーバ10は、解析結果を分析した後、分析結果となる最良の取引シナリオを金融商品取引管理サーバ4に送信する。これにより、金融商品取引管理サーバ4は、配信された取引シナリオを用いて翌取引日のカバー取引を行う。
【選択図】図1

Description

本発明は、OTC(Over The Counter:相対取引)/FX取引において、FXブローカーが顧客約定をカウンタパーティ(外国為替取引を行う際に、相対取引を行うための相手銀行)に対して行うカバー取引を自動化することが可能なシミュレーション装置、取引自動化システムおよびプログラムに関する。
OTC/FX取引を扱っているFXブローカーにあっては、カバー取引による収益をOTC/FX取引に関わる主たる収益源としている。
OTC/FX取引において、FXブローカーは、カウンタパーティから提示される売・買の気配値を基に顧客に売・買の気配値を提示し、顧客はFXブローカーが提示する売・買の気配値に対して注文を出す。
FXブローカーは顧客の注文を約定した場合、カウンタパーティへカバー取引を行う。一般的に、カウンタパーティがFXブローカーに提示する売・買の気配値のスプレッドに、FXブローカーは上乗せ分のマークアップを加味し顧客に売・買の気配値を提示するため、顧客約定分を速やかにカウンタパーティにカバー取引すれば、概ね上乗せ分のマークアップがFXブローカーの収益となる。
ここで、図17を参照して、FXブローカーの収益構造の基本パターンについて説明する。
同図はFXブローカーによる顧客への売・買の提示額と、カウンタパーティによるFXブローカーへの売・買の提示額を時系列で記載したものであり、同図において、Aはカウンタパーティによるブローカー提示スプレッドを示し、これは例えば1銭である。また、同じくBはFXブローカーによるマークアップ(ASK)を示し、例えば0〜0.5銭である。Cもまた、FXブローカーによるマークアップ(BID)を示し、例えば0〜0.5銭である。Dはブローカーによる顧客提示スプレッドを示し、これは例えば1銭〜2銭である。
このような状態において、顧客から、あるタイミングで『買い』注文(顧客に対して『売る』)の指示が行われると、FXブローカーは、そのポジションを解消するために、カウンタパーティに『買い』注文を指示し、その結果、FXブローカーによるマークアップ分BがFXブローカーの収入になる。
同様に、あるタイミングで、顧客から『売り』注文(顧客から『買う』)の指示が行われると、FXブローカーは、そのポジションを解消するために、カウンタパーティに『売り』注文を指示し、FXブローカーによるマークアップ分CがFXブローカーの収入になる。
なお、通貨の種類やカウンタパーティ/FXブローカーにより売買金額及び各マークアップの値は異なる。
顧客約定を速やかにカウンタパーティにカバー取引をしているFXブローカーは、カウンタパーティによるFXブローカーへの売買提示額と、FXブローカーによる顧客への売買提示額との差額であるマークアップ以上の収益は期待できないが、収益の変動リスクは小さく、安定している。
一方、ディーラという人間を介在させ、顧客約定に伴うカウンタパーティとのカバー取引の売買タイミングを操作することで、より高い収益を追求することも行っており、このようにディーラが売買タイミングを計りながらカバー取引をしているFXブローカーは、高い収益を期待できる反面、収益の変動リスクが大きくなっている。
顧客約定を速やかにカウンタパーティにカバー取引をしているFXブローカーと、ディーラが売買タイミングを計りながらカバー取引をしているFXブローカーとを、約定一通貨あたりの収益で比較すると、前者に対して後者の方が約2〜3倍程度と高くなっているが、FXディーラのコスト等を考慮すると、変動リスクに見合う高い収益性は確保できていない。
これは、外国為替相場の予想が難しく、FXディーラといえども簡単には外国為替相場において利益を向上することができないということの査証といえる。
ところで、為替取引に関する従来の技術としては、例えば特許文献1に記載される複数のカウンタパーティから顧客に有利な取引先を選択する技術、特許文献2に記載されるFXブローカーが負う経済的リスクを低減する技術、特許文献3に記載される損失カット用の逆指値注文の売値又は買値を適切に決定できる支援装置などが知られている。
しかしながら、FXディーラを介在させることなくFXブローカーの収益性を高めるための技術を開示するものはなかった。
特開2009−217294公報 特開2002−197281公報 特許第4756615号
このため、顧客約定がなされた後に取引のタイミングを計りながらカウンタパーティとの取引を行う際のデメリットである収益変動リスクを抑え、かつディーラの人件費コストを掛けずに、高い収益性を期待することができる取引自動化システムについての提案が切望されている。
本発明は、上記に鑑みてなされたもので、その目的としては、収益の変動リスクを抑えつつ、高い収益を期待出来るというメリットを追求することにある。
上記の課題を解決するために、本発明は、外国為替に関するカバー取引を行うための複数のパラメータからなる取引シナリオを予測するシミュレーション装置であって、通信回線を介して受信される顧客約定データおよび気配値を解析して複数の解析結果を生成する取引解析手段と、前記複数の解析結果を所定の分析シナリオに基づいて分析し、予め記憶されている複数の取引シナリオの中から1つの取引シナリオを選択する解析結果分析手段と、選択された取引シナリオを取引装置に送信する送信手段と、を備えることを特徴とする。
本発明によれば、外国為替に関するカバー取引を行うための複数のパラメータからなる取引シナリオを予測するために、顧客約定データおよびカウンタパーティ気配値を解析して複数の解析結果を生成し、複数の解析結果を所定の分析シナリオに基づいて分析し、予め記憶されている複数の取引シナリオの中から1つの取引シナリオを選択することで、収益の変動リスクを抑え、かつ高い収益を追及することができる。
詳しくは、約定一通貨あたりの収益で表現すると、顧客約定を速やかにカウンタパーティにカバー取引をしているFXブローカーと、ディーラが売買タイミングを計りながらカバー取引をしているFXブローカーとを、約定一通貨あたりの収益で比較すると、前者に対し後者が約2〜3倍程度の収益を上げているが、本発明にかかるシミュレーション装置で選択した取引シナリオに基づきカバー取引を自動化すると、FXブローカーを介在することなく3倍以上の収益を得ることが可能となる。
本発明の第1実施形態に係わる取引自動化システムのシステム構成図である。 本発明の第1実施形態に係わる取引自動化システムの各装置間での情報通信について説明するためのシーケンス図である。 図1に示す金融商品取引サーバ4のブロック図である。 図1に示す取引解析サーバ9のブロック図である。 時間帯T(k)に行われる顧客約定及びそれに続く時間帯T(k+1)のカバー取引を示す図である。 (a)〜(d)は図2に示す取引解析サーバ9が取り扱うデータ及びデータベースの構成を示す図(その1)である。 (a)(b)は図2に示す取引解析サーバ9が取り扱うデータ及びデータベースの構成を示す図(その2)である。 (a)は図4に示す取引解析計算DB作成部9bが処理に用いるシナリオ/時間帯・展開テーブルの構成を示す図であり、(b)はFXブローカーで採用された取引シナリオの構成を示す図である。 取引解析サーバ9による取引解析データの作成処理について説明するための図である。 図4に示す約定測定部9fによる処理について説明するためのフローチャートである。 図1に示す解析結果分析サーバ10のブロック図である。 (a)〜(c)は図2に示す解析結果分析サーバ10が取り扱うデータ及びデータベースの構成を示す図である。 図11に示す分析部10eによる収益予想に関するシミュレーション処理について説明するためのフローチャートである。 平均「1.5銭/枚」以上収益を上げられる分析シナリオのルールを示す図である。 (a)は、「平均」で降順に並び変えたことを示す図であり、(b)は、「平均」の1〜10位を「標準偏差」で昇順に並び変えたことを示す図である。 本発明の第2実施形態に係わる取引自動化システムのシステム構成図である。 FXブローカーの収益構造の基本パターンについて説明するための図である。
以下、本発明の実施形態について図面を参照して説明する。
<第1実施形態>
図1は、本発明の第1実施形態に係わる取引自動化システムのシステム構成図である。
図1に示すように、金融商品取引管理システム1は、カウンタパーティとしての銀行サーバ2a、2b、2c…と、FXブローカーシステム3と、クライアント端末6a、6b、6c…とを備え、銀行サーバ2a〜2cとFXブローカーシステム3との間およびクライアント端末6a〜6cとFXブローカーシステム3との間はWAN(Wide Area Network)としてのインターネット7を介して相互に通信可能である。金融商品取引管理システム1は、金融商品として外国為替を取扱うものを例に挙げて説明する。
クライアント端末6a、6b、6c…は、顧客である金融商品の売買を行う個人又は法人が所持し使用する、データ通信機能を有する通信端末であって、パーソナルコンピュータ、携帯電話端末、PDA等であればよい。
クライアント端末6a、6b、6c…は、マウスやキーボード等からの各種指示を入力するために用いられる操作部、LCD(Liquid Crystal Display)等からなり、操作部から入力された各種指示等や各種画像を表示する表示部を有している。
FXブローカーシステム3は、金融商品取引管理サーバ4とFXカバー取引自動化システム8とを備え、該FXカバー取引自動化システム8は取引解析サーバ9と解析結果分析サーバ10とからなる。
金融商品取引管理サーバ4は、金融商品の取扱業者であるFXブローカーが管理し運用するサーバコンピュータであり、Webサーバ機能、大容量のデータを保存するデータベース機能を備えている。また、注文データ作成装置および約定確認装置としての機能を金融商品取引管理サーバ4に持たせる。
FXカバー取引自動化システム8は、外国為替に関するカバー取引を行うための複数のパラメータからなる取引シナリオを予測するためのシミュレーション装置を構成する。
取引解析サーバ9は、通信回線を介して受信される顧客約定データおよびカウンタパーティ気配値(以下、CP気配値という)を複数の取引シナリオ毎に解析して、複数の解析結果を生成する取引解析手段を構成する。また、取引解析サーバ9は、カバー取引を行うための取引シナリオを記憶し、金融商品取引管理サーバ4から顧客約定データとCP気配値の配信を受信し、カバー取引の取引シナリオ毎に収益を計算し、取引日毎に保存している。
解析結果分析サーバ10は、取引解析サーバ9で解析した複数の解析結果を所定の分析シナリオに基づいて分析し、予め記憶されている複数の取引シナリオの中から1つの取引シナリオを選択する。解析結果分析サーバ10は、CP気配値に対するカバー取引による収益を取引シナリオにより測定し、一定期間の間の取引シナリオ毎の収益に関する平均収益、および収益の標準偏差を測定し、分析シナリオにより選択した取引シナリオにより、翌取引日に獲得した収益を測定する。
また、解析結果分析サーバ10は、複数の分析シナリオを記憶し、分析シナリオ毎に取引解析サーバ9に保存された取引日毎・取引シナリオ毎の収益計算結果を分析し、分析結果を分析シナリオ毎に保存する。
ここで、解析結果分析サーバ10は、どの取引シナリオの収益が高かったかを分析し、翌取引日に採用すべき取引シナリオを選択する。
そして、解析結果分析サーバ10は、分析結果を評価し、分析結果を評価した結果である最良の取引シナリオを金融商品取引管理サーバ4に供給する。
金融商品取引管理サーバ4は、配信された取引シナリオを用いて翌取引日のカバー取引を行うことができる。
次に、図2に示すシーケンス図を参照して、本発明の第1実施形態に係わる取引自動化システムの各装置間での情報通信について説明する。
まず、手順Se1では、銀行サーバ2は、CP気配値を金融商品取引管理サーバ4に送信する。
銀行サーバ2からCP気配値を受信した金融商品取引管理サーバ4は、手順Se2において、CP気配値にFXブローカーのマークアップ分を上乗せしたブローカー気配値をクライアント端末6に送信する。
ブローカー気配値を受信したクライアント端末6では、例えばブローカー気配値が所望の値になった場合に、顧客が買いの成行注文を行うと、手順Se3において、その成行注文を金融商品取引管理サーバ4に送信する。
クライアント端末6から買いの成行注文を受信した金融商品取引管理サーバ4は、現在のブローカー気配値において顧客からの買い注文を約定すると共に、手順Se4で、現在のCP気配値の買値で買い注文の指示を銀行サーバ2に送信する。
上記手順Se1〜Se4の間、金融商品取引管理サーバ4は、銀行サーバ2から送信されるCP気配値、顧客約定データを取引解析サーバ9に順次に送信する。
金融商品取引管理サーバ4から顧客約定データおよびCP気配値を受信した取引解析サーバ9は、顧客約定データ及びCP気配値に基づいて予め用意された複数の取引シナリオに従ってカバー取引を行った場合の取引結果を解析した解析結果(1取引日における損益や、取引の一通貨当たりの損益等)を解析結果分析サーバ10に送信する。なお、外国為替取引においてドル−円取引の場合、取引単位は一般的に一万通貨であるが、FXブローカーによっては取引単位が異なる場合もあるため、一通貨単位で損益を表すこととする。ドル−円取引以外の他の通貨についても同様である。したがって、利益が1銭/通貨の場合、1ドルの取引当たりの利益が1銭であるが、外国為替取引の単位が一般的に一万通貨のため、取引そのものは1万ドルで行われ、その結果、100円(1銭×10,000)の利益がでることを意味する。
取引解析サーバ9から解析結果を受信した解析結果分析サーバ10は、解析結果を所定の条件(分析シナリオ)にて分析した後、最良の分析結果が得られた取引シナリオを金融商品取引管理サーバ4に供給する。
金融商品取引管理サーバ4は、配信された取引シナリオを用いて翌取引日のカバー取引を行うことができる。
次に、図3を参照して、FXブローカーに用いられる金融商品取引管理サーバ4の基本的な各部の機能について説明する。
金融商品取引管理サーバ4は、少なくとも1のCPU(Central Processing Unit、中央処理装置)、及び、CPUの作業領域として機能するRAM(Random Access Memory)、起動用ブートプログラム等が記録されたROM(Read Only Memory)、各種プログラムやデータ等が記録されるハードディスク等の補助記憶装置、データの送受信に用いる通信インターフェース等が設けられている。補助記憶装置には、OS(Operating System)用プログラム、各種アプリケーションプログラム、データベースに記録されたデータ等が記録されており、これらのプログラムやデータはCPUの演算処理により、ハードウェア資源と協働して各種機能を実現する。
金融商品取引管理サーバ4は、各種プログラムとハードウェア資源とに基づいて実現される機能手段として、各種データの生成、加工等の処理を行うフロントページ配信部4a、注文入力受付部4b、入出金情報生成部4c、約定情報生成部4d、口座情報生成部4e、注文情報生成部4f、データベース4g、価格情報受信管理部4h、カバー取引シナリオ管理部4i、クライアント用送受信管理部4j、CP用送受信管理部4kを有している。
注文入力受付部4bは、クライアント端末6から入力された各種の注文に関するデータを受け付け、金融商品の注文を成立させるために必要な各種処理を行う。
入出金情報生成部4cは、クライアント端末6から入出金のリクエストを受け付け、リクエストに基づいて入出金の一覧表を作成する。
注文情報生成部4fは、注文入力受付部4bが処理し、後述する約定情報生成部4dから得た情報、カバー取引シナリオ管理部4iから取得した取引シナリオに基づいて、成立した金融商品の注文に関する情報を生成する。注文情報生成部4fはCPに対する注文データを作成する注文データ作成装置としての機能と、CP気配値で、注文データ作成装置で作成した注文を約定できたか否かを確認する約定確認装置としての機能を有す。
約定情報生成部4dは、注文情報生成部4fが生成した注文に基づく約定処理、及び、完了した約定処理に関する情報を顧客のクライアント端末6に送信するための処理を行う。なお、ここでの「約定」とは、顧客の注文に基づいて金融商品の売買を成立されるための各種の手続並びに処理のことをいう。
約定が成立すると、外国為替の売買が行われ、その結果、約定情報生成部4dの指示に基づいて、口座情報生成部4eが売買額に応じて証拠金情報を変換し、更に、入出金情報生成部4cが入出金の一覧表に入金や出金の状況を記載する。また、約定情報生成部4dは、約定が成立すると、クライアント端末6の表示部に約定が成立した旨の文字情報等を表示させる。
口座情報生成部4eは、顧客の預金残高情報を生成し、当該預金残高情報を証拠金情報(即ち、注文の約定を実現できることを裏付けるための情報)として管理する機能を有する。なお、口座情報生成部4eにおいて生成される預金残高に関する情報は、現実の預金残高と整合性を取るために、銀行等の金融機関が提供する、顧客の現実の預金残高に関する情報と定期的に照合される。
データベース4gは、金融商品取引管理サーバ4において用いられるデータを記録する。データベース4gはリレーショナルデータベースによって形成するが、例えばオブジェクトデータベース等、大量のデータの記録や書換えに適したものであればどのような形式を用いてもよい。データベース4gには、注文テーブル、顧客口座情報テーブル、通貨ペア注文条件テーブル、シーケンス番号テーブルが記録されている。シーケンス番号テーブルには注文情報ごとに一意に付されるシーケンス番号が記録される。
フロントページ配信部4aは、クライアント端末6の表示部にされる画像データを作成し、作成した画像データをクライアント端末6に送信する。
価格情報受信管理部4hは、金融商品取引管理サーバ4において扱う金融商品の価格についての情報を取得し、取得した情報に対して必要な処理と管理を行う。価格情報受信管理部4hは、外為の相場価格の情報を定期的に取得し、記録し管理する。
カバー取引シナリオ管理部4iは、FXカバー取引自動化システム8の解析結果分析サーバ10から最良の取引シナリオを保持し、注文情報生成部4fに取引シナリオを設定することで、翌取引日のカバー取引を行わせる。
なお、金融商品取引管理サーバ4は、日時の情報を取得し管理するタイマ(図示しない)を有する。
クライアント端末6a〜6cからの注文情報は、クライアント用送受信管理部4jに入力し、注文入力受付部4bにて受け付けられ、そのデータが約定情報生成部4dに供給され、約定情報生成部4dより注文情報生成部4fにCPへの注文情報が送られ、CP用送受信管理部4kから銀行サーバ2a〜2cにデータが出力される。また銀行サーバ2a〜2cからの取引結果はCP用送受信管理部4kを介して注文情報生成部4fに入力し、FXブローカーにおける取引による損益が計算される。
次に、図4を参照して、取引解析サーバ9を構成している各部の機能について説明する。
取引解析サーバ9は、少なくとも1のCPU(Central Processing Unit、中央処理装置)、及び、CPUの作業領域として機能するRAM(Random Access Memory)、起動用ブートプログラム等が記録されたROM(Read Only Memory)、各種プログラムやデータ等が記録されるハードディスク等の補助記憶装置、データの送受信に用いる通信インターフェース等が設けられている。補助記憶装置には、OS(Operating System)用プログラム、各種アプリケーションプログラム、データベースに記録されたデータ等が記録されており、これらのプログラムやデータはCPUの演算処理により、ハードウェア資源と協働して各種機能を実現する。
取引解析サーバ9は、各種プログラムとハードウェア資源とに基づいて実現される機能手段として、顧客約定データ収集部9a、取引解析計算DB作成部9b、取引シナリオDB9c、取引解析計算DB9d、カウンタパーティ(CP)気配値収集部9e、約定測定部9f、損益集計部9i、取引解析結果DB9k、データ受信部9r、取引解析結果出力部9sを有している。
取引解析サーバ9は、顧客約定データ及び複数の取引シナリオから、取引解析計算DB作成部9bで取引解析の基礎データを作成し、それを取引解析計算DB9dに格納する。この取引解析計算DB9dに格納された基礎データとCP気配値とから約定測定部9f、損益集計部9iで損益データを計算する。そして、損益集計部9iで算出した損益データを取引解析結果DB9kに蓄積し、取引解析結果出力部9sは損益集計部9iや取引解析結果DB9kのデータを解析結果分析サーバに出力する。
取引解析サーバ9における計算の基となる、顧客約定データとCP気配値は、リアルまたはディレード(数分〜数時間)で金融商品取引管理サーバ4から配信される。
なお、取引解析サーバ9は、1取引日毎に処理を行うこととする。
次に、図5を用いて取引シナリオの設定について説明する。
図5は、時間帯T(k)に行われる顧客約定及びそれに続く時間帯T(k+1)のカバー取引を示す図である。
各取引シナリオにおいては、1取引日の取引時間帯をN個の時間帯に分割し、一つの時間帯における顧客約定に係る売・買のポジションを解消するためのカバー取引を、次の時間帯T(k+1)に執行するようになっている。
なお、図5において、時間帯T(k)における顧客約定における「買」約定とは、ブローカーが顧客に対しては『売る』取引であり、そのポジションを解消するための時間帯T(k+1)のカバー取引の『買』は、ブローカーがカウンタパーティに対して『買う』行為であることに注意が必要である。
基本的にFXブローカーは、同一通貨を、顧客から安い気配値で買って、カウンタパーティに高い気配値で売り(上乗せレート+α)、或いは、同一通貨を顧客に高い気配値で売って、カウンタパーティから安い気配値買う(上乗せレート−α)ことを旨とする。
また、取引解析サーバ9は、
(a)ある長さの時間帯(またはある数量)T(k)毎に蓄積した売・買それぞれの顧客約定の平均約定値に対して、時間帯T(k)に続く時間帯T(k+1)に行うカバー取引で上乗せする「上乗せレートα1、α2」と、
(b)時間帯T(k+1)のカバー取引において、CP気配値が時間帯T(k)における顧客約定の平均値+上乗せレートα1、α2に至らない場合に、「指値での約定を諦める時間(時間帯の何回分か)L」と、
(c)CP気配値が、上乗せレートの反対側にどの程度変動したときに、ロスカット(その時点でのCP気配値で約定)するか、すなわち「ロスカットレートβ1、β2」と、
(d)取引時間帯を分割して上記時間帯Tを作成する「分割数N」と、
を、それぞれどのように設定した時に、どの程度の収益/損害が出るかをシミュレーション処理し、その結果である取引解析結果データを取引解析結果DB9kに記憶する。
上乗せレートαは、例えば18通り(1、2、3、4、5、6、7、8、9、10、20、30、40、50、60、70、80、90銭)とする。
また、諦める時間Lは、例えば11通り(一単位時間帯の1、2、3、4、5、6、7、8、9、10、11個分)とする。
また、ロスカットレートβを、例えば9通り(−10、−20、−30、−40、50、−60、−70、−80、−90銭)とする。
また、N個に分割された時間帯の長さは、例えば4通り(1、5、10、15分)とする。
上記(a)〜(d)の組み合わせパターンは、上乗せレートα1とα2とを同じ数字に設定し、またロスカットレートβ1とβ2とを同じ数字に設定した場合には、α×β×L×N=7128パターンとなり、この組み合わせが、すなわち上記の取引シナリオである。
例えば、図5に示したように時間帯T(k)において顧客からの売買約定が売買それぞれ6約定成立した場合、時間帯T(k)に蓄積した各売買の平均値は時間帯T(k+1)の開始時点で求まり、更に上乗せレートα1、α2、ロスカットレートβ1、β2を予め設定しておくことで、顧客の売り、すなわち図5の時間帯T(k)における『買』に対してはその『買』の平均値よりα1分だけ相場が安くなった後にCPからの買いを執行し、同様に顧客の買い、すなわち図5の時間帯T(k)における『売』に対しては『売』の平均値よりα2分だけ相場が高くなった後にCPへの売りを執行する。
また、『買』の平均値に対して上乗せレートα1を設定しているが、相場が上乗せレートと逆に変動し、ロスカットレートβ1以上に変動した場合にはその時点でブローカーのポジションを中立にするため、損失が生じる場合であっても、その時点のCP気配値で売買を執行する。更に、図5に示した時間帯T(k+1)の相場レートは上乗せレートα1、α2の理解を容易にするため相場が上下に振れている状態を示したが、時間帯T(k+1)において上乗せレートα1、α2の範囲を超えず、相場の動きがほぼない状態が生じることもありうる。その場合、上述した諦める時間Lによる条件が作用する。
このような取引シナリオを用い、取引解析計算DB作成部9bは、受信した顧客約定データ9aに含まれる売買区分、売買通貨、数量、約定値および約定日時と、取引シナリオDB9cに格納される各取引シナリオ、とを参照して取引解析計算DB9dを作成する。
取引解析計算DB作成部9bは、取引シナリオ毎に設定される上乗せレートやロスカットレートに従って発生した時間帯当たりの損益の計算を約定測定部9fにより行うために、時々刻々と受信される顧客約定データを時間帯毎に格納した、取引解析計算DB9dを作成する。
そのために、取引解析計算DB作成部9bは、取引解析計算DB9dを作成するための作業領域となる、各取引シナリオと取引時間帯とを関連づけた、取引シナリオ/時間帯・展開テーブル(後に図8で示す)を定義すると共に、図6(a)〜(d)および図7(a)、(b)に示したデータを収集する。
図6(a)はデータ受信部9rを介して顧客約定データ収集部9aにて収集するデータの構成、図6(b)はデータ受信部9rを介してカウンタパーティ気配値収集部9eにて収集するデータの構成であり、更に図6(c)は取引シナリオDBに蓄積されている取引シナリオの各パラメータのデータ構成、図6(d)は図6(c)に示した取引シナリオDBに蓄積されている取引シナリオのパラメータN9pに関する条件を定めたデータ構成図である。上述したように、N個に分割された時間帯の長さを1分均等とすれば、スタート時間は1分毎に規定され、一取引日で1440の時間帯に区分される。また時間帯の長さを15分均等とすれば、一取引日では96の時間帯に区分される。なお、時間が均等で一取引日を区分する必要性はなく、区分数を任意に設定し、かつ各区分の時間帯の時間も任意(ただし、各区分に分けられた時間帯を合計すると一取引日となることが必要)に設定することができる。更に、図7(a)は取引解析計算DB9dにおけるデータ構成、図7(b)は取引解析結果DB9kのデータ構成を示す図である。
図8(a)は上述した各データをまとめ、各取引シナリオと取引時間帯とを関連づけた取引シナリオ/時間帯・展開テーブルであり、取引シナリオNo.1からNo.N_scまでのシナリオ毎に、各時間帯1から時間帯N_Jikan_saidaiまでのデータが記録されており、また取引シナリオ毎の取引日における累計損益集計データが含まれている。シナリオ/時間帯・展開テーブルの各セルには取引日や取引通貨等の更に詳細なデータが関連付けられている。このデータのうち、累計損益集計エリアに記載された以外のデータは取引解析計算DB9dで作成され、損益収益部9iで損益が計算され取引解析結果DB9kに保存されると共に、その取引シナリオのうち、図8(b)に示したようにFXブローカーで採用された取引シナリオのみのデータが注文情報生成部4fに供給され、CPとの取引に基づいて累積損益集計が行われる。
このテーブルは、一般的なリレーショナルデータベース上のテーブルであれば良い。そして、取引解析計算DB作成部9bは、取引時間帯において時々刻々と発生して受信される顧客約定データを、各取引シナリオに対応する各時間帯エリアにセットしていく。
また、各時間帯エリア内において、取引数量を加算し、数量掛ける約定値、すなわち、時間帯当たりの売・買約定の合計金額を、その時間帯の売・買の積数に加算する。
さらに、取引解析計算DB作成部9bは、各取引シナリオに関する作業領域(展開テーブル)上の各時間帯エリア(セル)に対して、当該時間帯が終了した時点で、それ以降に生じる顧客約定によるデータ更新を行わずに当該時間帯に行われた積数から買い約定・売り約定のそれぞれの金額の平均値を計算し、以降の約定測定部9fによる約定測定(すなわち、時間帯当たりの売損益/買損益の計算)に供する。
上述したが、取引シナリオDB9cには、図6(c)に示すように、複数の取引シナリオが格納されており、取引シナリオ毎に、取引シナリオNO、パラメータN NO、パラメータα1(買)、パラメータα2(売)、パラメータL、パラメータβ1(買)、パラメータβ2(売)、パラメータX(累計損失額)が記憶されている。
なお、ここで、パラメータNは、1取引日の取引時間を分割する分割パターンを示し、パラメータαは顧客約定値に対する上乗せレートであり、パラメータβはロスカットレートである。また、パラメータLはカバー取引において上乗せレートαで約定できない場合に諦める時間(時間帯のL個分)である。
特に、パラメータα1(買)は、買の顧客約定のポジションを解消するために、カウンタパーティから同一通貨を「買う」場合の上乗せレート、また、パラメータα2(売)は、売の顧客約定のポジションを解消するために、カウンタパーティに同一通貨を「売る」場合の上乗せレートである。
さらに、パラメータβ1(買)は、買の顧客約定のポジションを解消するために、上乗せレート込みでカウンタパーティから同一通貨を買おうとするが上乗せレートとは逆側に気配値が推移した場合に、損切りを行う限度値(ロスカット・レート)であり、パラメータβ2(売)は、売の顧客約定のポジションを解消するために、カウンタパーティに上乗せレート込みで同一通貨を売ろうとするが、気配値が上乗せレートとは反対側に推移した場合に、損切りを行う限度値である。
パラメータXは、予め定められた許容可能な1取引日の累積損失額である。1取引日の累計損失額がこのXに到達した場合は、この取引シナリオ内の未約定の全注文を強制的に直後のCP気配値で約定させ、1取引日の累計損失額がこのXに到達した後の取引では顧客に対するブローカー気配値と、カウンタパーティのブローカーに対するCP気配値との差額であるブローカーによるマークアップ分で利益を上げ、累計損失額を低減するような処理を行うことができる。
取引シナリオDB9cのパラメータN NO9pに関連づけられるパラメータN DB9pには、図6(d)に示すように、取引シナリオ毎に、取引時間を分割する分割数N、及び時間帯1〜Nのスタート時間が格納されている。
約定測定部9fは、金融商品取引管理サーバ4から受信したCP気配値、取引解析計算DB9dおよび取引シナリオDB9cを参照し、取引解析計算DB9dを更新する。
すなわち、約定測定部9fは、取引解析計算DB作成部8bによる処理によって各取引シナリオに係る各時間帯エリアに格納されて行き、その時間帯T(k)が終了することにより約定測定の対象となった時間帯エリア内の内容(取引数量や時間帯当たりの売・買約定の合計枚数)を注文データとして、約定測定に供されるようになった時間以降(T(k+1))に受信したCP気配値とマッチング処理を行う。
その際には、時間帯T(k+1)におけるCPとの約定の有無を判定し、時間帯T(k+1)におけるカバー取引によって得られた損益を計算し、算出された損益を、展開テーブル(取引解析計算DB)における当該時間帯エリア(セル)にセットし、且つ取引シナリオ毎の累積損益を更新する。
この結果、取引解析結果DB9kには、図7(b)に示すように、取引シナリオ毎に、取引日、取引通貨、取引シナリオNO、取引数量、損益計、売損益、買損益、一通貨当たりの損益(銭)が格納される。
以降、当該時間帯の当該注文に対してはCP気配値とのマッチング処理を行わない。
取引シナリオとしては、時間帯T(k)における顧客約定のポジションを解消する次の時間帯T(k+1)におけるカバー取引が、時間帯T(k+1)内に約定出来ない場合も含む。
その場合(注文有効期間終了後は)、時間帯T(k+1)直後のCP気配値で約定し、時間帯T(k)の顧客との取引に対する損益を計算し、該エリア(セル)の損益にセットし、取引シナリオ毎の累積損益を更新する。以降当該エリアに関する注文はCP気配値とのマッチング処理を行わない。
なお、約定測定部9fによって算出される時間帯エリア毎の損益は、取引解析計算DB9dではなく、他の異なるデータベースに格納するようにしても構わない。
取引解析計算DB作成部9b及び約定測定部9fによる、上記に説明した処理によって、各取引シナリオに係る時間帯毎に作成・更新されていく取引解析計算DB9dには、図7(a)に示すように、取引日、取引通貨、取引シナリオNO、時間帯NO(k)、時間帯kにおける売合計枚数Mk(売)、各時間帯kにおける買い合計枚数Mk(買)、各時間帯kにおける売り平均値Pk(売)、各時間帯kにおける買い平均値Pk(買)、注文最終時間、売約定値、売約定数量、売約定時間、買約定値、買約定数量、買約定時間、時間帯当たりの売損益、買損益が格納されることになる。
なお、図7(a)において取引解析計算DBは、一次元的に表示されているが、各取引日、取引通貨毎、取引シナリオ毎に、各時間帯当たりの売・買の約定枚数、売・買の平均値、1取引日当たりの売損益、買損益が多次元的に格納されている。
さらに、損益集計部9iは、1取引日の取引時間が全て終了後、すなわち、図8で示すシナリオ/時間帯・展開テーブル9t上のすべての有効エリア(セル)がクローズ(後、取引シナリオ毎に1取引日当たりの損益(合計損益・売損益・買損益・一通貨あたり損益)を集計(終了)する。
取引解析結果出力部9sは、取引解析結果DB9kから取引解析結果データを読み出して解析結果分析サーバ10へ転送する。
ここで、取引解析計算DB作成部9b、約定測定部9fによる取引解析計算DBの作成処理について詳しく説明する。
取引解析計算DB作成部9bは、取引解析計算DB9dを作成するために、取引シナリオDB9cに記憶されている項目に基づいて、作業領域となるシナリオ/時間帯・展開テーブル9tを定義する。
図8に示すように、シナリオ/時間帯・展開テーブル9tは、列方向のセルに取引シナリオNO 1〜取引シナリオNO N_scを設定し、行方向のセルには時間帯1〜時間帯N_jkan_saidaiまでの各時間帯を設定し、さらに、取引シナリオ毎に、累積の損益を集計するエリアを設定した構成を有している。
有効エリア(セル)のそれぞれには、取引解析計算DB作成部9b、約定測定部9fにより、例えばエリア(セル)9mのように、取引解析計算DB9dに記憶されている取引解析計算データと同一項目に加えて、計算のために必要な積数エリア、CP気配値に対する取引有効時間等が格納されていくことになる。
なお、それぞれの取引シナリオにおける各時間帯の時間を合計すると、1取引日になることは言うまでもない。
また、それぞれの有効エリア(セル)の時間帯の長さは異なるため、1取引日を超えた時間帯に相当するようなエリア(セル)は、無効エリアとして扱うこととする。
なお、図6(b)に示すように、CP気配値には数量があり、CP気配値で数量以上の約定はできないため、CP気配値にある数量を超す注文枚数(買合計枚数Mk(買)、売合計枚数Mk(売))は、次の気配値で約定(マッチング)することとする。
約定測定部9fは、注文有効期間が終了後は、直後のCP気配値で約定し、損益を計算し、シナリオ/時間帯・展開テーブル9t上にある該エリア(セル)の損益に設定し、取引シナリオ毎の累積損益を更新する。以降、当該エリアに関する注文はCP気配値とのマッチング処理を行わない。
取引解析計算DB作成部9bは、顧客約定データのデータ毎に、それぞれの取引シナリオNOの該当エリア(セル)を処理対象に設定する。そして、取引解析計算DB作成部9bは、該当エリア(セル)において、取引数量については加算し、数量掛ける約定値は積数に加算する。積数から平均値を計算しておくことで、以降の約定測定部9fによる約定測定処理の準備をする。
取引解析計算DB作成部9bは、それぞれの取引シナリオの該当エリア(セル)に対して、当該エリアの時間帯が終了した時点で、以降の顧客約定によるデータ更新を禁止(オフ)し、無効エリアとして扱う。
取引解析計算DB作成部9bは、図8(a)に示すように、1取引日をN個の時間帯に分割し、1〜(N−2)番目の時間帯について、k番目の時間帯T(k)(図5参照)の顧客の売買約定の売・買それぞれについて、売合計取引通貨単位数、買合計取引通貨単位数、売平均値、買平均値を算出し、算出結果をシナリオ/時間帯・展開テーブル9tからなる取引解析計算DB9dに記憶する。
なお、算出した買合計の取引通貨単位数をMk(買)、算出した売合計の取引通貨単位数をMk(売)、算出した買平均値をPk(買)、算出した売平均値をPk(売)とする。kは、1〜(N−2)までの任意の数である。
この結果、取引解析計算DB9dには、図7(a)に示すような値が、取引シナリオ毎に記憶される。
図9は、取引解析計算DBを作成する取引解析計算DB作成処理を説明するフローチャートである。
取引解析計算DB作成部9bは、取引シナリオ9cに格納される取引シナリオ(図6(c))に規定される取引時間帯の分割数Nに基づく一つの時間帯T(k)中において(ステップS10でYes)、顧客約定データを受信すると(ステップS15)、図8のシナリオ/時間帯・展開テーブルの該当時間帯エリア内に、取引数量や時間帯当たりの売・買約定の合計枚数、売・買の約定値等の情報を登録していく(ステップS20)。
そして、時間帯T(k)が終了し(ステップS10でNo)、次の時間帯T(k+1)に移行すると(ステップS25でYes)、時間帯T(k)における売・買の約定値の平均値Pk(買)、Pk(売)を算出して当該エリアに格納する(ステップS30)。
次に、図10に示すフローチャートを参照して、約定測定部9fによる処理について詳細に説明する。
なお、図10のフローチャートは、買いの顧客約定に対する買いのカバー取引のみに注目して処理を説明しているが、売注文の場合も基本的な処理及び考え方は同じである。
まず、時間帯T(k+1)〜時間帯T(k+L+1)において、約定測定部9fは、時間帯T(k)について取引解析計算DB作成部9bが算出した平均値Pkに上乗せレートαを設定した指値Pk−α1にて買い注文を行う(ステップS110)。
次に、ステップS115で、約定測定部9fは、注文が約定した場合、Mk(買)枚×α1(買)の収益を得るので、買損益としてシナリオ/時間帯・展開テーブル9t(取引解析計算DB)に記憶する(ステップS116)。
指値Pk−α1で注文が約定しない場合(ステップS115でNo)、時間帯T(k)で算出したMk(買)枚が(k+1)の時間帯T(k+1)以降、買いのCP気配値が、(Pk(買)+β1(買))に達した場合、ステップS120で、指値(Pk(買)+β1(買))でロスカット注文する(ステップS125)。
この注文が約定した場合、Mk(買)×β1(買)の損失となるので、買損益としてシナリオ/時間帯・展開テーブル9t(取引解析計算DB)に記憶する(ステップS130)。
ロスカットに該当した場合は、損失を計算し、当該エリア(セル)の損益にセットし、取引シナリオNO毎の累積損益を更新する。以降同注文はCP気配値とのマッチング処理を行わない。
CP気配値が、Pk+β1に至らない場合は(ステップS120でNo)、取引シナリオにおいて定めたLの時間内かを判断する(ステップS135)。
パラメータLで定めた時間を経過した場合(ステップS135でNo)、時間帯T(k+L+1)が終了した時点(ステップS140でYes)で諦めるので、時間帯T(k+L+2)に移行した時点で(ステップS145でYes)、時間帯T(k+L+2)の最初のCP気配値で約定させ(ステップS150)、その際の約定値を売約定値とし、且つ、その約定値とPkとの差額を買損益としてシナリオ/時間帯・展開テーブル9t(取引解析計算DB)に記憶させる(ステップS155)。
なお、この時の買いのCP気配値をP(k+2)open(買)、売のCP気配値をP(k+2)open(売)と名付けることとする。
約定測定部9fは、買注文を約定させると、(P(k+2)open(買)−Pk(買))×Mk(買)の損益となるので、買損益としてシナリオ/時間帯・展開テーブル9tに記憶する。
約定測定部9fは、売注文を約定させると、(Pk(売)−P(k+2)open(売))×Mk(売)の損益となるので、買損益としてシナリオ/時間帯・展開テーブル9tに記憶する。
ステップS135でYesの場合、指値注文(Pk−α1)の時間帯を(k+1)だけで終わらせず、(k+2)・(k+3)・・・とパラメータLで定めた時間だけ延長する。
この時、N−2番目はN−(2+L)番目と置き換え、(k+2)の時間帯は、(k+(2+L))の時間帯と置き換える。すなわち、諦める時間を延長し、注文の約定を待つ。
なお、CP気配値には数量があり、CP気配値で数量以上の約定はできないため、CP気配値にある数量を超す注文枚数(買合計枚数Mk(買)、売合計枚数Mk(売))は、次の気配値で約定することとする。
同一エリア(セル)内には、売り注文と買い注文の2つが存在するため、これらの2つの注文が約定して、以降CP気配値とのマッチング処理を行わなくなった時、当該エリア(セル)はクローズ状態となり、以降のデータ更新は受付けないこととする。
なお、約定測定部9fは、各時間帯におけるステップ116、ステップS130、ステップS155の損失累計が、一定額(X円)に到達した場合(ステップS160でYes)は、直接カウンタパーティに繋ぐとともに、同一の取引シナリオNO内の未約定の全注文を強制的に直後のCP気配値で約定させる(ステップS165)と共に、各注文の損益は当該エリア(セル)の損益として記憶する(ステップ170)。
この場合、約定測定部9fは、取引解析計算DB9dの作成処理を中止する。
以上説明した処理により、各取引シナリオついて、各時間帯についての買損益・売損益が算出された。
損益集計部9iは、すべての有効時間帯エリア(セル)が終了後、すなわち、1取引日の取引時間が全て終了後、取引解析計算DB9dおよび取引シナリオDB9cを参照し、取引シナリオ毎に、1取引日当たりの損益(合計損益・売損益・買損益・一通貨あたり損益)を集計した、図7(b)に示したような、取引シナリオ毎の取引解析結果DB9kが作成される。
これらの処理を、各取引シナリオについて、各時間帯について順次行っていく。
次に、図11を参照して、解析結果分析サーバ10を構成している各部の機能について説明する。
解析結果分析サーバ10は、少なくとも1のCPU(Central Processing Unit、中央処理装置)、及び、CPUの作業領域として機能するRAM(Random Access Memory)、起動用ブートプログラム等が記録されたROM(Read Only Memory)、各種プログラムやデータ等が記録されるハードディスク等の補助記憶装置、データの送受信に用いる通信インターフェース等が設けられている。補助記憶装置には、OS(Operating System)用プログラム、各種アプリケーションプログラム、データベースに記録されたデータ等が記録されており、これらのプログラムやデータはCPUの演算処理により、ハードウェア資源と協働して各種機能を実現する。
解析結果分析サーバ10は、各種プログラムとハードウェア資源とに基づいて実現される機能手段として、取引解析結果DB10a、解析結果分析DB作成部10b、分析シナリオDB10c、解析結果分析DB10d、分析部10e、取引シナリオDB10g、分析結果集計DB10h、データ受信部10r、分析結果送信部10sを有している。
データ受信部10rは、取引解析サーバ9から受信したデータを取引解析結果DB10aに保存する。
取引解析結果DB10aには、図7(b)に示すように、取引シナリオ毎に、取引日、取引通貨、取引シナリオNO、取引数量、損益計、売損益、買損益、一通貨あたり損益(銭)が取引解析結果データとして記憶されている。
解析結果分析DB作成部10bは、取引解析サーバ9から受信した取引解析結果DB10a、分析シナリオDB10cを参照し、解析結果分析DB10dを作成する。
解析結果分析DB作成部10bは、分析シナリオDB10cに格納される分析シナリオ毎に、取引解析サーバで計算された取引解析結果DBの一通貨あたり平均損益と損益の標準偏差を計算する。解析結果分析DB作成部10bは、計算結果を、分析シナリオ毎に並び替え、最上位シナリオを決定する。
詳しくは、解析結果分析サーバ10は、取引解析サーバ9で算出された取引シナリオ毎の一取引日当たり損益について、所定の連続した取引日数(Q日:例えば3日、4日等)における一通貨当たりの平均損益及び一通貨当たりの損益の標準偏差を算出する。
また、複数の取引シナリオにおける一通貨当たり平均損益が1位からR位(10位、20位等)までの取引シナリオについて一通貨当たりの平均損益の標準偏差が小さい順に並び替えて、最上位となる取引シナリオを最良の取引シナリオとして選択する。
それとともに、選び出された最良の取引シナリオが翌取引日にどのような収益及び一通貨当たり収益を上げたかを検証する。
これらの検証を、一定期間S(1ヶ月、2ヶ月等)行うものとする。
分析シナリオDB10cは、図12(a)に示すように、複数の分析シナリオが格納されており、分析シナリオ毎に、上記のQ日、R位、期間Sが設定されている。すなわち、分析シナリオは平均損益や標準偏差を求めるために設定するパラメータQと、平均損益がどの順位までのシミュレーションデータを用いて分析するかを設定するパラメータRと、上記パラメータQとRにより抽出されたシミュレーションデータをどの程度の期間分析するのかを設定するパラメータSとを有す。
解析結果分析DB10dには、解析結果分析DB作成部10bによる処理の結果、図12(b)に示すように、取引シナリオ毎に、取引日、取引通貨、使用した分析シナリオNO、取引日損益、取引日一通貨あたり損益(銭)、平均損益(期間Q)、一通貨あたり損益(期間Q)、翌取引日損益、翌取引日数量が、解析結果分析データとして格納される。
分析部10eは、解析結果分析DB10d、分析シナリオDB10cおよび取引シナリオDB10gを参照し、1つの最良のデータとして、分析結果集計DB10hを作成する。
なお、取引シナリオDB10gには、取引解析サーバ9が備える取引シナリオDB9cに格納されるものと同じ取引シナリオ(パラメータ)が格納されている。
また、解析結果分析サーバ10に取引シナリオDB10gを設けず、取引解析サーバ9の取引シナリオDB9cを参照するようにしてもよい。
分析結果集計DB10hには、図12(c)に示すように、1つの最良のデータとして、取引日、取引通貨、使用した分析シナリオNO、翌取引日損益計(期間S)、平均損益(期間S)、一通貨あたり損益(期間S)、評価、評価取引シナリオNOが分析結果集計データとして記憶されている。
分析結果送信部10sは、分析結果集計DB10hから分析結果集計データを読み出して金融商品取引管理サーバ4に送信する。
次に、解析結果分析サーバ10の解析結果分析DB作成部10bによる処理について説明する。
まず、データ受信部10rは、取引解析サーバ9から取引解析結果データを受信し、取引解析結果データを取引解析結果DB10aに記憶する。
この結果、取引解析結果DB10aには、取引解析結果DB9kと同一のデータが格納される。
もちろん、解析結果分析サーバ10に取引解析結果DB10aを設けず、取引解析サーバ9が備える取引解析結果DB9kを参照するようにしても良い。
次に、解析結果分析DB作成部10bは、分析シナリオ(パラメータQ、R、Sをそれぞれ含む)毎に、取引解析サーバ9で計算された取引解析結果DBの一通貨あたり損益を計算し、Q日間の平均一通貨当たり損益(Sa)、Q日間の平均一通貨当たり損益の標準偏差σを計算し、その計算結果を解析結果分析DB10dに記憶する。
例えば、”Q日”を”5日”として、それぞれの日の一通貨あたりの収益を、1日目がA、2日目がB、3日目がC、4日目がD、5日目がEとすると、一通貨あたりの収益のQ日間の平均(Sa)は、
Sa=(A+B+C+D+E)÷5・・・(1)
である。
また、一通貨あたりの収益の標準偏差σを計算する。
一通貨あたりの収益の標準偏差σは、

Figure 2013210851
詳しくは、解析結果分析DB作成部10bでは、以下の処理を行う。
まず、計算期間をQ取引日(5日、10日、20日等)として収益(金額/枚)と収益の標準偏差を求める。
この計算結果を、「翌取引日」に適用して例えば平均「1.5銭/通貨」以上収益を上げられる、取引シナリオを選びだすための分析シナリオのルールを求める。図14は、平均「1.5銭/通貨」以上収益を上げられたルールを示す例である。通常、ブローカーがCPからの気配値に対し、自己のマークアップ分を加味して顧客に提示するブローカー気配値との差額による一通貨当たりの収益が0.5銭であることを考慮すると、1.5銭/通貨は通常の取引の3倍の利益が得られるルールとなる。
すなわち、「1.5銭/通貨」以上の平均収益(Sa)を上げられる分析シナリオのシミュレーションルールを見極めることが出来る。
この結果、解析結果分析DB10dには、図12(b)に示すように、取引日、取引通貨、分析シナリオNO、取引シナリオNO、取引日損益、取引日一通貨あたり損益(銭)、平均損益(期間Q)、一通貨あたり損益(期間Q)、翌取引日損益、翌取引日数量が解析結果分析データとして記憶される。
以下、図11に示す解析結果分析サーバ10の分析部10eによる取引解析パラメータの設定処理について説明する。
ここで、図13に示すフローチャートを参照して、分析部10eによる収益予想に関するシミュレーション処理について説明する。
連続した取引日(Q日)について計算後、分析部10eは次の評価を行う。
ステップS310では、分析部10eは、連続したQ取引日について、PM(=PM(Q)×PM(R)×PM(S))個のパターンの取引シナリオ毎に、一通貨あたりの収益の平均(Sa)を計算する。
そして、ステップS315では、一通貨あたりの収益の標準偏差σを計算する。
ステップS320では、分析部10eは、ステップS310で並べられた各分析パターンについて、上位1〜R番目の取引シナリオについて、一通貨あたりの標準偏差の小さい順(昇順)に並び替え、最上位の取引シナリオが翌取引日にどのような収益および一通貨あたりの収益をあげたかを検証する。
ここで、「平均値」の1〜10位を、「標準偏差」で昇順にソートして並び変え、一通貨あたりの標準偏差の小さい取引シナリオを選択してもよい。
図15(a)は前述した取引シナリオの各パラメータ(α1(買)、α2(売)、β1(買)、β2(売)、L、X)をそれぞれ設定し、取引を行った場合のシミュレーション結果を、分析シナリオに基づいて分析して平均値や標準偏差を求めた結果を示す図であり、図14に示したシミュレーションルールのNo.1〜No.9が、1〜9(図15では○数字で記載)に相当する。図15(b)は、図15(a)に示す「平均値」の1〜10位を「標準偏差」で昇順にソートして並び変えたことを示す図である。
さらに分析部10eは、複数の解析結果を所定の分析シナリオに基づいて分析し、予め記憶されている複数の取引シナリオの中から1つの取引シナリオを選択し、CP気配値に対するカバー取引による収益を取引シナリオにより測定し、一定期間の間の取引シナリオ毎の収益に関する一通貨当たり平均収益Sa、および一通貨当たり収益の標準偏差σを測定し、分析シナリオにより選択した取引シナリオにより、翌取引日に獲得した収益を測定する。
ステップS325では、分析部10eは、ステップS320の検証を一定期間S行う。
ここで、分析シナリオDB10cに一定期間として記憶される分析パラメータの設定について説明する。
パラメータQとして、3日、4日、・・・等を分析シナリオDB10cに複数記憶する。また、記憶されたパラメータQのパターン数をPM(Q)とする。
パラメータRとして、最上位(1位まで)、10位まで、20位まで、・・等を分析シナリオDB10cに、複数記憶する。記憶されたパラメータRのパターン数を、PM(R)とする。
パラメータSとして、1ヶ月、2ヶ月、・・・等を分析シナリオDB10cに複数記憶する。記憶されたパラメータSのパターン数をPM(S)とする。
ステップS330では、分析部10eは、上記分析シナリオDB10cに記憶された分析パラメータに基づき、全部でPM(分析)(=PM(Q)×PM(R)×PM(S))個のパターンに対して検証し、検証結果の良い取引シナリオを分析シナリオによって選び出す。
そして、分析結果送信部10sは、選び出された取引シナリオをインターネット7を介して金融商品取引管理サーバ4に設けられたカバー取引シナリオ管理部4iに送信する。
この結果、金融商品取引管理サーバ4は、翌取引日の取引に用いることが可能な取引シナリオ(パラメータN(一取引日の時間分割パターン)、パラメータα1(買)、パラメータα2(売)、パラメータL(時間長)、パラメータβ1(買)、パラメータβ2(売)、パラメータX(許容損失累計額)を取得することができる。
以上のように、本実施形態によれば、FXカバー取引による収益を、カバー取引方法を細分化し、細分化したそれぞれの取引シナリオに基づいて、実際の相場であるCP気配値を対象として収益を測定し、それぞれの取引シナリオの収益が一定期間、どれだけの平均収益(Sa)があり、どれだけ安定しているか(収益の標準偏差σ小さいか)を測定し、分析シナリオにより選び出した取引シナリオが、翌取引日にどのような収益を上げたかを測定する。
分析シナリオにより選びだした取引シナリオが、翌取引日にどのような収益を上げたかを一定期間測定し、当該分析シナリオの有効性を評価する。
収益の標準偏差が小さくかつ高い収益を獲得する取引シナリオを選択した分析シナリオを最良の分析シナリオとして選択する。
そして、選び出した分析シナリオを最良として、最良の分析シナリオが選び出した取引シナリオを金融商品取引管理サーバ4に配信する。
特に、損失累計が一定額(X円)に達した場合、以降の顧客注文は自動化システムの対象外とし、直接カウンタパーティに繋ぐとともに、未約定分はCP気配値に対して速やかに成行で約定することで、損失拡大を制限していることで効果が大きく、一通貨あたりの平均収益(Sa)を押し上げており、顧客約定を速やかにカウンタパーティにカバー取引をしているFXブローカーと比べて、約定一通貨あたりの収益が2〜3ぐらいとなっているディーラが売買タイミングを計りながらカバー取引をしているFXブローカーを上回る収益を上げることができる。
すなわち、上記の実施の形態では7128通りの取引シナリオに基づいて取引をした場合をシミュレーションし、一取引日における損益を算出し、更に利用者の所望の条件に応じた分析シナリオに基づいて分析し、どの取引シナリオによる条件が利益を生むか、或いは利益の標準偏差が少ないかを確認することで、設定すべき取引シナリオのパラメータを見極めることができ、その結果、ディーラを介在させるカバー取引と同じかそれ以上の利益を得ることができる。
<第2実施形態>
図16は、本発明の第2実施形態に係わる取引自動化システムのシステム構成図である。図1に示した第1実施形態と比較し、FXカバー取引自動化システム8がFXブローカーのブローカーシステムの外に存在している点が異なる。このように構成することで、金融用品取引管理サーバ4で収集した各銀行サーバ2a〜2cから提供されるCP気配値と、各クライアント端末6a〜6cから提供される買い又は売りの注文の気配値に関するデータをインターネット7を介して入手し、取引解析サーバ9および解析結果分析サーバ10ではそれぞれ第1実施形態で説明したように取引シナリオおよび分析シナリオに基づいて、損益をシミュレーションし、FXブローカーの希望する分析シナリオ条件で最も収益性の高い取引シナリオに含まれる様々な条件をFXブローカーに提供し、翌日の取引の条件に設定することで、高い収益性を確保することができる。
また、FXブローカーの既存の金融用品取引管理サーバおよび実取引を実行するシステムは様々存在するが、第2実施形態のようにFXカバー取引自動化システム8をブローカーシステムとは独立して設けることで、ブローカーシステムの構成に左右されることなく、FXカバー取引自動化システム8を構築することが可能となる。
なお、第2実施形態の場合、取引解析サーバ9と解析結果分析サーバ10は取引シナリオに基づいてシミュレーションを実施し、一取引日における取引シナリオによるシミュレーション結果および分析シナリオによる分析結果をFXブローカーに提供し、FXブローカーでは翌日の取引条件(取引シナリオと同じ)を指定することでFXブローカーの金融商品取引管理サーバに備えている注文情報生成部と約定情報生成部を機能させる。
以上のように、本発明によれば、FXカバー取引による収益を、カバー取引方法を細分化し、細分化したそれぞれの取引シナリオを、実際の相場であるCP気配値で収益を測定し、それぞれの取引シナリオの収益が一定期間、どれだけの平均収益があり、どれだけ安定しているか(収益の標準偏差が小さいか)を測定し、分析シナリオにより選びだした取引シナリオが、翌取引日にどのような収益を上げたかを測定する。
分析シナリオにより選びだした取引シナリオが、翌取引日にどのような収益を上げたかを一定期間測定し、当該分析シナリオの有効性を評価する。
最も安定して(標準偏差の小さい)、高い収益を上げる取引シナリオを選び出した分析シナリオを最良として、最良シナリオが選び出した取引シナリオをFXブローカーに配信する。
このように、細分化した取引シナリオを定義し、細分化した取引シナリオ毎の収益を、日々測定する。
この日々測定した取引シナリオ毎の収益について分析シナリオを用いて分析することで、最も安定して(標準偏差の小さい)、高い収益を上げる取引シナリオを選び出した分析シナリオを最良として、最良シナリオが選び出した取引シナリオをFXブローカーに配信することができる。
特に、損失累計が一定額(X円)に達した場合、以降の顧客注文は自動化システムの対象外とし、直接カウンタパーティに繋ぐとともに、未約定分はCP気配値に対して速やかに成行で約定することで、損失拡大を制限していることが効果が大きく、一通貨あたりの平均収益を押し上げており、顧客約定を速やかにカウンタパーティにカバー取引をしているFXブローカーと比べて、約定一通貨あたりの収益が2〜3ぐらいとなっているディーラが売買タイミングを計りながらカバー取引をしているFXブローカーを上回る収益を上げることができる。
<他の実施形態>
第1実施形態では、取引解析サーバでの処理が終了した後に解析結果分析サーバが処理を開始するように構成したが、本発明はこのような構成に限定されるものではなく、例えば、取引解析サーバでの処理と、解析結果分析サーバでの処理とを並列に扱うように構成してもよく、これにより、処理効率を向上することができる。
また、第1および第2実施形態では、解析結果分析サーバが1取引日単位で取引シナリオを金融商品取引管理サーバ4に送信するように構成したが、本発明はこのような構成に限定されるものではなく、例えば、例えばニューヨーク市場や東京市場やロンドン市場がオープンしている時間帯が異なるため、それぞれの市場の時間帯に適応した取引シナリオを順次最適なものに切り替え、金融商品取引管理サーバ4に送信するように構成してもよく、これにより、開催市場毎の収益の変動リスクを抑え、かつ開催市場毎に高い収益期待というメリットを追求することができる。
さらに、第1および第2実施形態では、金融商品取引管理サーバと、取引解析サーバと、解析結果分析サーバとの設置場所を分散させるように構成していたが、本発明はこのような構成に限定されるものではなく、例えば、金融商品取引管理サーバの機能と、取引解析サーバの機能と、解析結果分析サーバの機能とを有する1つの装置として扱ってもよく、この場合、相互間の通信情報がインターネットを介して外部に漏れないので、金融商品を扱う上でのセキュリティの向上に寄与することができる。
なお更に、第1および第2実施形態では、取引シナリオのパラメータとして、上乗せレートα1、α2、ロスカットレートβ1、β2、指値での約定を諦める時間L、一取引日における時間の区分数Nのうち、α1とα2とを同じ数値とし、更にβ1とβ2とを同じ数値とした場合の取引シナリオの数として7128通りのものが存在する旨の説明を行ったが、本発明はこれに限定されるものではなく、α1、α2、β1、β2、L、Nを所望のものを用いることができる。またこれらのパラメータに加え、累計損失額Xを可変パラメータの一つとして取り扱うことにより更に詳細な取引シナリオを作成することができ、シミュレーションの精度を高めることができる。
時間帯の個数を指定する諦める時間Lの代わりに、直接諦める時間を指定することもできる。
1 金融商品取引管理システム、2a、2b、2c 銀行サーバ、4 金融商品取引管理サーバ、4a フロントページ配信部、4b 注文入力受付部、4c 入出金情報生成部、4d 約定情報生成部、4e 口座情報生成部、4f 注文情報生成部、4g データベース、4h 価格情報受信管理部、4i カバー取引シナリオ管理部、5 インターネット、6a、6b、6c クライアント端末、7 インターネット、8 FXカバー取引自動化システム、9 取引解析サーバ、9a 顧客約定データ、9b 取引解析計算DB作成部、9c 取引シナリオDB、9d 取引解析計算DB、9f 約定測定部、9i 損益集計部、9k 取引解析結果DB、9m エリア(セル)、9r データ受信部、9s 取引解析結果出力部、9t シナリオ/時間帯・展開テーブル、9ts エリア(セル)、10 解析結果を解析結果分析サーバ、10a 取引解析結果DB、10b 解析結果分析DB作成部、10c 分析シナリオDB、10d 解析結果分析DB、10e 分析部、10g 取引シナリオDB、10h 分析結果集計DB、10r データ受信部、10s 分析結果送信部

Claims (11)

  1. 外国為替に関するカバー取引を行うための複数のパラメータからなる取引シナリオを予測するシミュレーション装置であって、
    通信回線を介して受信される顧客約定データおよびカウンタパーティ気配値を解析して複数の解析結果を生成する取引解析手段と、
    前記複数の解析結果を分析シナリオに基づいて分析し、予め記憶されている複数の取引シナリオの中から1つの取引シナリオを選択する解析結果分析手段と、
    選択された取引シナリオを取引装置に送信する送信手段と、を備えたことを特徴とするシミュレーション装置。
  2. 前記取引解析手段は、
    前記カバー取引を行うための複数の取引シナリオを記憶する取引シナリオデータベースと、
    前記顧客約定データおよび気配値に対して、前記取引シナリオデータベースから読み出した取引シナリオ毎に収益を計算する収益計算手段と、
    該計算結果を取引日毎にデータベースに保存する保存手段とを備え、
    前記解析結果分析手段は、
    前記分析シナリオを記憶する分析シナリオデータベースと、
    前記取引解析により生成される取引日の取引シナリオ毎の収益計算結果に対して、分析シナリオデータベースから読み出した分析シナリオに基づいて分析する分析手段と、
    前記分析手段からの分析結果を分析シナリオ毎に保存する解析結果分析データベースと、
    前記解析結果分析データベースから読み出した分析結果を評価し、1つの取引シナリオを選択する評価選択手段とを備えることを特徴とする請求項1記載のシミュレーション装置。
  3. 前記解析結果分析手段は、前記気配値に対するカバー取引による収益を取引シナリオにより測定し、一定期間の間の取引シナリオ毎の収益に関する平均収益、および収益の標準偏差を測定し、分析シナリオにより選択した取引シナリオにより、翌取引日に獲得した収益を測定する測定手段を備えることを特徴とする請求項1記載のシミュレーション装置。
  4. 前記評価選択手段は、前記分析シナリオにより選択した取引シナリオが、翌取引日に獲得した収益を一定期間の間測定し、当該分析シナリオの有効性を評価することを特徴とする請求項2記載のシミュレーション装置。
  5. 前記評価選択手段は、収益の標準偏差が小さくかつ高い収益を獲得する取引シナリオを選択した分析シナリオを最良シナリオとして選択する選択手段を備えることを特徴とする請求項4記載のシミュレーション装置。
  6. 請求項1乃至5の何れか1つに記載のシミュレーション装置と、
    外国為替を売買するために銀行に設けられた銀行サーバと前記外国為替を売買するためにクライアントに設けられたクライアント端末との間にそれぞれ通信回線を介して接続され、前記シミュレーション装置から予め取得した取引シナリオを用いて、翌取引日のカバー取引を行う取引管理サーバとを備えることを特徴とする取引自動化システム。
  7. 外国為替に関するカバー取引を行うための複数のパラメータからなる取引シナリオを予測するシミュレーション装置に設けられたプロセッサに実行させるプログラムであって、
    通信回線を介して受信される顧客約定データおよび気配値を解析して複数の解析結果を生成する取引解析ステップと、
    前記複数の解析結果を所定の分析シナリオに基づいて分析し、予め記憶されている複数の取引シナリオの中から1つの取引シナリオを選択する解析結果分析ステップとを有することを特徴とするプログラム。
  8. 前記取引解析ステップは、
    前記カバー取引を行うための複数の取引シナリオを取引シナリオデータベースに記憶する記憶ステップと、
    前記顧客約定データおよび気配値に対して、前記取引シナリオデータベースから読み出した取引シナリオ毎に収益を計算する収益計算ステップと、
    該計算結果を取引日毎にデータベースに保存する保存ステップとを有し、
    前記解析結果分析ステップは、
    前記分析シナリオを分析シナリオデータベースに記憶する記憶ステップと、
    前記取引解析により生成される取引日の取引シナリオ毎の収益計算結果に対して、前記分析シナリオデータベースから読み出した分析シナリオに基づいて分析する分析ステップと、
    前記分析ステップからの分析結果を分析シナリオ毎に解析結果分析データベースに保存する保存ステップと、
    前記解析結果分析データベースから読み出した分析結果を評価し、1つの取引シナリオを選択する評価選択ステップとを有することを特徴とする請求項7記載のプログラム。
  9. 前記解析結果分析ステップは、前記気配値に対するカバー取引による収益を取引シナリオにより測定し、一定期間の間の取引シナリオ毎の収益に関する平均収益、および収益の標準偏差を測定し、分析シナリオにより選択した取引シナリオにより、翌取引日に獲得した収益を測定する測定ステップを有することを特徴とする請求項7記載のプログラム。
  10. 前記評価選択ステップは、前記分析シナリオにより選択した取引シナリオが、翌取引日に獲得した収益を一定期間の間測定し、当該分析シナリオの有効性を評価することを特徴とする請求項8記載のプログラム。
  11. 前記評価選択ステップは、収益の標準偏差が小さくかつ高い収益を獲得する取引シナリオを選択した分析シナリオを最良シナリオとして選択する選択ステップを有することを特徴とする請求項10記載のプログラム。
JP2012080735A 2012-03-30 2012-03-30 シミュレーション装置、取引自動化システムおよびプログラム Pending JP2013210851A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012080735A JP2013210851A (ja) 2012-03-30 2012-03-30 シミュレーション装置、取引自動化システムおよびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012080735A JP2013210851A (ja) 2012-03-30 2012-03-30 シミュレーション装置、取引自動化システムおよびプログラム

Publications (1)

Publication Number Publication Date
JP2013210851A true JP2013210851A (ja) 2013-10-10

Family

ID=49528620

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012080735A Pending JP2013210851A (ja) 2012-03-30 2012-03-30 シミュレーション装置、取引自動化システムおよびプログラム

Country Status (1)

Country Link
JP (1) JP2013210851A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019145060A (ja) * 2018-02-21 2019-08-29 クリプトリンク株式会社 仮想通貨管理システム
JP2020166313A (ja) * 2019-03-28 2020-10-08 みずほ情報総研株式会社 シナリオ管理システム、シナリオ管理方法及びシナリオ管理プログラム
JP7277677B1 (ja) * 2023-01-24 2023-05-19 直樹 神田 為替マッチング処理プログラム、為替マッチング処理方法、及び、為替マッチング処理システム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019145060A (ja) * 2018-02-21 2019-08-29 クリプトリンク株式会社 仮想通貨管理システム
JP2020166313A (ja) * 2019-03-28 2020-10-08 みずほ情報総研株式会社 シナリオ管理システム、シナリオ管理方法及びシナリオ管理プログラム
JP7277677B1 (ja) * 2023-01-24 2023-05-19 直樹 神田 為替マッチング処理プログラム、為替マッチング処理方法、及び、為替マッチング処理システム

Similar Documents

Publication Publication Date Title
JP7102031B2 (ja) 取引管理装置、取引管理システム、取引管理システムにおける取引管理方法、プログラム
US11593305B2 (en) Data conversion and distribution systems
KR20010039776A (ko) 자산운용 조언시스템 및 그 프로그램을 수록한 기록매체
JP2002366741A (ja) 資産管理支援システム、資産管理支援用サーバ装置、および資産管理支援方法
US20090240557A1 (en) Method, apparatus and computer program product for valuing a technological innovation
JP2013210851A (ja) シミュレーション装置、取引自動化システムおよびプログラム
JP2023168630A (ja) 金融商品取引管理装置、金融商品取引管理システム、プログラム
JP2020198140A (ja) 金融商品取引管理装置、金融商品取引管理方法、プログラム
JP2002024547A (ja) 株式売買タイミング決定支援システム
CA3081254C (en) Data conversion and distribution systems
JP4329644B2 (ja) 市場分析装置
JP2012168599A (ja) 金融ポートフォリオ分析システム
JP6902311B1 (ja) 抽出システム、抽出方法および、抽出プログラム
JP2021193633A (ja) 金融商品取引管理装置、金融商品取引管理方法、プログラム
JP2007265295A (ja) 顧客支援システム