JP7168063B2 - 取引プログラム、取引方法及び取引装置 - Google Patents

取引プログラム、取引方法及び取引装置 Download PDF

Info

Publication number
JP7168063B2
JP7168063B2 JP2021503379A JP2021503379A JP7168063B2 JP 7168063 B2 JP7168063 B2 JP 7168063B2 JP 2021503379 A JP2021503379 A JP 2021503379A JP 2021503379 A JP2021503379 A JP 2021503379A JP 7168063 B2 JP7168063 B2 JP 7168063B2
Authority
JP
Japan
Prior art keywords
price
dissatisfaction
executions
contract
trading
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.)
Active
Application number
JP2021503379A
Other languages
English (en)
Other versions
JPWO2020179069A1 (ja
Inventor
俊宏 清水
章仁 中村
資広 小崎
章紘 桑原
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2020179069A1 publication Critical patent/JPWO2020179069A1/ja
Application granted granted Critical
Publication of JP7168063B2 publication Critical patent/JP7168063B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0282Rating or review of business operators or products
    • 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

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Development Economics (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Technology Law (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Description

本発明は、取引プログラム、取引方法及び取引装置に関する。
株などの取引においては、板寄せとザラ場がある。板寄せとは、注文を受け付けてから売買開始までの注文をまとめ、売買を成立させて始値を決定する取引である。ザラ場とは、すでに発注されている注文と新たに発注された注文、あるいは、新たに発注された注文同士で売買を成立させる取引である。
取引には、売り注文の売り指値及び売り注文数と買い注文の買い指値及び買い注文数を示す板情報が用いられる。図13は、株取引における板情報の一例を示す図である。図13において、中列は指値の価格、左列は価格に対応する売り注文の枚数、右列は価格に対応する買い注文の枚数を示す。ここで、1枚は単位株数である。例えば、102円を売り指値とする売り注文の枚数は4であり、102円を買い指値とする買い注文の枚数は3である。
株取引の板寄せでは、約定装置は、売り注文の安い順、買い注文の高い順に順番に売り注文と買い注文を約定させる。そして、約定装置は、売り注文と買い注文が同一価格となったところで約定をやめ、この時の価格を現在値とする。そして、約定した全ての取引は全て現在値で行われる。
図14は、株取引の板寄せを説明するための図である。図14に示すように、約定装置は、まず、98円の売り4件と104円の買い4件を約定させる。次に、約定装置は、99円の売り3件と102円の買い3件を約定させる。次に、約定装置は、99円の売り2件と101円の買い2件を約定させる。そして、約定装置は、100円の売り3件と100円の買い3件を約定させ、約定を終了する。この場合、約定装置は、合計で12件を100円で約定させ、現在値を100円とする。
なお、従来技術として、取引の双方における関係者のために取引価格を最適化する方法で連結取引を行うシステムがある。ここで、連結取引とは、個々の同時取引においてコンピュータ化された複数の有価証券取引である。このシステムは、連結取引ワークステーションと、複数の取引者ワークステーションと、中央制御エンジンとを備える。
連結取引者は、連結取引ワークステーションを用いて、取引の全費用に基づいて同時に複数の有価証券を取引する満足度を定義する満足密度プロファイルを入力する。個々の有価証券取引者は、取引者ワークステーションを用いて、価格/量の関数として特定の有価証券を取引する満足度を示す満足密度プロファイルを入力する。
中央制御エンジンは、取引者の入力に基づいて個々の有価証券の各々に対する満足密度関数を決定し、個々の満足密度関数から全ての有価証券に対する合同満足関数を決定する。そして、中央制御エンジンは、連結満足関数と、連結取引者によって入力された満足密度プロファイルとから相互満足関数を決定し、相互満足関数を最大化して、個々の有価証券の各々を取引する1組の価格、量と当事者を確定する。中央制御エンジンは、さらに、識別された当事者の間で確定された価格と量で複数の有価証券の取引を同時に実行する。
また、従来技術として、複数の(価格、量)の組み合わせで文書を売買することへの満足の程度を表す満足度密度プロファイルに基づいて買い注文と売り注文とをつりあわせ、価格表示情報を出力するマッチングシステムがある。
特表2001-522487号公報 特表平11-504455号公報
図14に示した板寄せには、現在値より高い売り注文と、現在値より安い買い注文と、現在値の売り注文又は現在値の買い注文のいずれかとが決済されずに保留になるため、保留分は板に残ってしまい、約定数が少ない。そこで、現在値にはとらわれず、指値より投資家にとって有利な価格であれば約定させることで約定数を増やすことが考えられる。ここで、有利な価格とは、売り注文なら指値より高い価格であり、買い注文なら指値より安い価格である。
ただし、現在値にはとらわれず、指値より投資家にとって有利な価格であれば約定させると、約定ごとに約定価格が異なるため、次の株価をどのように決定するかを定める必要がある。そこで、投資家の不満を定量化し、約定数最大の条件の下で投資家の不満が最小になるように次の株価を決定することが考えられる。
しかしながら、約定数最大の条件の下では、投資家の不満が最小になるように次の株価を決定したとしても、投資家の不満が大きすぎるという問題がある。約定数と投資家の不満はトレードオフの関係にあり、約定数を減らせば投資家の不満は少なくなる。
本発明は、1つの側面では、板寄せにおいて複数の約定価格がある場合に投資家が許容できる不満の下で約定数を決定することを目的とする。
1つの態様では、取引プログラムは、コンピュータに、売り指値と次の取引価格の差分と、該次の取引価格と買い指値の差分とに基づいて、該次の取引価格を変数として投資家の不満を表す不満関数を約定ごとに作成する作成処理を実行させる。そして、取引プログラムは、コンピュータに、約定ごとに作成した不満関数に基づいて全約定の総不満関数を作成し、作成した総不満関数の値のうち小さい方から所定の数番目の値を特定する特定処理を実行させる。そして、取引プログラムは、コンピュータに、前記作成処理と前記特定処理を約定数を最大約定数まで変化させながら実行することで得られる複数の前記所定の数番目の値に基づいて最適約定数を決定する処理を実行させる。
本発明は、1つの側面では、板寄せにおいて複数の約定価格がある場合に投資家が許容できる不満の下で約定数を決定することができる。
図1は、実施例に係る約定装置による板寄せの例を示す図である。 図2は、投資家の不満の定義を説明するための図である。 図3は、活性化関数A(d)の例を示す図である。 図4は、不満関数DC(q)の例を示す図である。 図5は、不満総和関数の例を示す図である。 図6は、約定数の変化に対するDCS(q)の最小値の変化を示す図である。 図7は、約定数の変化に対するDCS(q)の最小値の傾きの変化を示す図である。 図8は、実施例に係る取引システムの構成を示す図である。 図9は、約定装置による処理のフローを示すフローチャートである。 図10は、不満総和関数の最小値と次の株価を黄金分割探索を用いて特定する処理のフローを示すフローチャートである。 図11は、DS(q)の値を計算する処理のフローを示すフローチャートである。 図12は、実施例に係る約定プログラムを実行するコンピュータのハードウェア構成を示す図である。 図13は、株取引における板情報の一例を示す図である。 図14は、株取引の板寄せを説明するための図である。
以下に、本願の開示する取引プログラム、取引方法及び取引装置の実施例を図面に基づいて詳細に説明する。なお、実施例は開示の技術を限定するものではない。
まず、実施例に係る約定装置による板寄せ方式について説明する。実施例に係る約定装置は、現在値にとらわれず、指値又は指値より投資家にとって有利な価格であれば約定させる。
図1は、実施例に係る約定装置による板寄せの例を示す図である。図1に示すように、実施例に係る約定装置は、98円売りの4件と98円買いの4件、99円売りの5件と100円買いの5件、100円売りの3件と102円買いの3件、103円売りの3件と104円買いの3件の合計15件を約定させる。図13に示した場合と比較して、実施例1に係る約定装置による板寄せ方式では、約定数が3件増える。
このように、実施例に係る約定装置による板寄せでは、どの売り注文とどの買い注文を約定させるかに自由度ができるため、約定数の最大化や約定値段差の最小化などの約定方式の選択が可能になる。また、実施例に係る約定装置による板寄せでは、約定価格は、次の株価をq円とすると売り手と買い手の指値の区間のうち、q円に近い値段とする。
また、実施例に係る約定装置は、投資家の不満を次の株価を用いて定量化し、次の価格を投資家の不満を最小にする価格に決定する。図2は、投資家の不満の定義を説明するための図である。図2では、97円の売りと103円の買いが約定する。
q<97の場合、約定価格は97円である。この場合、売り手には、指値以上で売れたので、不満はない。一方、買い手には、97円で買ったのに次の株価q円がより安いので、不満がある。差分(97-q)が大きいほど買い手の不満は大きい。例えば、差分2を不満関数DC(q)の定義とすると、q=94の場合、DC(94)=(97-94)2=9が買い手の不満となる。
97≦q≦103の場合、約定価格と次の株価が等しいので、売り手にも買い手にも不満はない。
103<qの場合、約定価格は103円である。この場合、売り手には、103円で売ったのに次の株価q円がより高いので、不満がある。差分(q-103)が大きいほど売り手の不満は大きい。一方、買い手には、指値以下で買えたので、不満はない。例えば、差分2を不満関数DC(q)の定義とすると、q=107の場合、DC(107)=(107-103)2=16が売り手の不満となる。
そこで、実施例に係る約定装置は、差分dに応じた不満を返すための関数である活性化関数A(d)、売り指値s円、買い指値b円を用いて、不満関数DC(q)を
DC(q)=A(s-q)+A(q-b)
と定義する。図3は、活性化関数A(d)の例を示す図である。図3(a)は、活性化関数A(d)が線形である場合を示し、図3(b)は、活性化関数A(d)が平方である場合を示す。
図3(a)に示すように、d≧0の場合はA(d)=dであり、d<0の場合はA(d)=0である。また、図3(b)に示すように、d≧0の場合はA(d)=d2であり、d<0の場合はA(d)=0である。
図4は、不満関数DC(q)の例を示す図である。図4では、s=97、b=103である。図4(a)は、線形の活性化関数を用いた場合を示し、図4(b)は、平方の活性化関数を用いた場合を示す。図4に示すように、不満関数は下に凸な凸関数である。
そして、実施例に係る約定装置は、次の株価q円に対する不満総和関数DCS(q)を
DCS(q)=ΣDCi(q)
と定義し、DCS(q)を最小にするqを特定する。ここで、DCi(q)は、約定iにおける不満関数である。DCS(q)は下に凸な関数である。
図5は、不満総和関数の例を示す図である。図5に示すように、q=100とすると、101円売りと105円買い、106円売りと108円買いの2件の約定について買い手に不満があり、DCS(100)=12+62=37となる。なお、この例では、活性化関数A(d)に平方が用いられている。
DCS(q)の最小値は、約定数によって変化する。図6は、約定数の変化に対するDCS(q)の最小値の変化を示す図である。横軸は約定数であり、縦軸はDCS(q)の最小値である。実施例に係る約定装置は、例えば第1閾値を40として、約定数を最大約定数から減らしていき、DCS(q)の最小値が最初に第1閾値40より小さくなった約定数を最適な約定数として決定する。
このように、実施例に係る約定装置は、投資家が許容できる不満の限界をDCS(q)の最小値の第1閾値として定義し、約定数を最大約定数から減らしながら、DCS(q)の最小値が最初に第1閾値より小さくなった約定数を最適な約定数として決定する。したがって、実施例に係る約定装置は、投資家が許容できる不満の下で最適な約定数を決定することができる。
なお、実施例に係る約定装置は、約定数を最大約定数まで増やしながら、DCS(q)の最小値が最初に第1閾値を超える直前のた約定数を最適な約定数として決定してもよい。
また、実施例に係る約定装置は、投資家が許容できる不満の限界をDCS(q)の最小値の傾きの第2閾値として定義してもよい。図7は、約定数の変化に対するDCS(q)の最小値の傾きの変化を示す図である。横軸は約定数であり、縦軸はDCS(q)の最小値の傾きである。実施例に係る約定装置は、例えば第2閾値を1.5として、約定数を最大約定数まで増やしていき、DCS(q)の最小値の傾きが1.5を超える直前の約定数を最適な約定数として決定する。
実施例に係る約定装置は、DCS(q)の最小値の傾きの計算に例えば最小二乗法を用いる。傾きを計算する約定数及び周辺の約定数をx1、x2、・・・、xnとし、対応するDCS(q)の最小値をy1、y2、・・・、ynとすると、実施例に係る約定装置は、n個のデータ(x1,y1)、(x2,y2)、・・・、(xn,yn)をy=ax+bに当てはめる。a及びbは以下の式(1)で計算され、aが傾きである。
Figure 0007168063000001
実施例に係る約定装置は、傾きを計算する約定数uの周辺の約定数を、例えば、u-5、u-4、・・・、u-1、u+1、・・・、u+4、u+5の10個を選択する。
このように、投資家が許容できる不満の限界をDCS(q)の最小値の傾きの第2閾値として定義することで、不満が急に増大する前の約定数を最適な約定数として決定することができる。
次に、実施例1に係る取引システムの構成について説明する。図8は、実施例に係る取引システムの構成を示す図である。図8に示すように、実施例に係る取引システム1は、受付装置11と、注文管理装置12と、約定装置13とを有する。受付装置11と注文管理装置12と約定装置13は内部ネットワーク2で接続される。
受付装置11は、注文情報を受け付け、注文管理装置12に送信する。注文情報には、例えば、注文者を識別する注文者識別子、銘柄、売り買いの区別、指値、株数などが含まれる。受付装置11は、例えば、外部ネットワークを介して情報処理装置から送信される注文情報を受信する。情報処理装置は、例えば、投資家がマウスやキーボードを用いて入力した注文に基づいて注文情報を送信する。
また、受付装置11は、注文管理装置12から約定結果を受信して情報処理装置へ送信する。約定結果には、例えば、注文者識別子、銘柄、売り買いの区別、約定価格、約定株数などが含まれる。受付装置11は、例えば、注文者識別子に対応付けられたIPアドレスを用いて、注文情報の送信元の情報処理装置に約定結果を送信する。
注文管理装置12は、注文情報を例えば注文を識別する注文識別子を付加して管理する。注文管理装置12は、板寄せ開始までに受付装置11により受け付けられた注文情報を全て記憶し、板寄せ開始時に、銘柄ごとに売り指値と売り注文数、買い指値と買い注文数を約定装置13に送信する。
また、注文管理装置12は、銘柄ごとに約定情報を約定装置13から受信し、注文情報を更新する。また、注文管理装置12は、約定情報に基づいて約定結果を作成し、受付装置11に送信する。約定情報には、1つ以上の約定について、例えば、売り指値、買い指値、約定価格、約定株数などが含まれる。
約定装置13は、板寄せにおいて、内部ネットワーク2を介して注文管理装置12から、銘柄ごとに、売り注文と買い注文の情報を受信し、売り注文と買い注文を約定させ、約定価格と次の株価を決定する。各売り注文の情報には、売り指値と売り注文数が含まれ、各買い注文の情報には、買い指値と買い注文数が含まれる。また、約定装置13は、内部ネットワーク2を介して、銘柄ごとに、約定情報を注文管理装置12に送信する。
約定装置13は、取得部21と、約定決定部22と、出力部23とを有する。取得部21は、内部ネットワーク2を介して注文管理装置12から、銘柄ごとに、売り注文と買い注文の情報を受信する。
約定決定部22は、銘柄ごとに、最大約定数kを特定し、マッチング数nをkから1ずつ減らしながら、n件のマッチング、不満関数及び不満総和関数の作成、不満総和関数の最小値及び次の株価の特定を不満総和関数の最小値が第1閾値より小さくなるまで繰返す。そして、約定決定部22は、不満総和関数の最小値が第1閾値より小さくなったときのnを最適約定数とし、n、次の株価、及び、約定ごとの売り指値と買い指値と株数と約定価格を銘柄ごとに出力部23に渡す。
出力部23は、銘柄ごとに約定情報を注文管理装置12に内部ネットワーク2を介して送信する。
約定決定部22は、制御部30と、最大数特定部31と、マッチング部32と、不満関数作成部33と、総和関数作成部34と、最小値特定部35と、約定価格決定部36とを有する。
制御部30は、最大数特定部31、マッチング部32、不満関数作成部33、総和関数作成部34、最小値特定部35及び約定価格決定部36を制御して、銘柄ごとに、最適約定数、次の株価、及び、約定ごとの売り指値と買い指値と株数と約定価格を特定し、出力部23に渡す。
制御部30は、銘柄ごとに、最大数特定部31に最大約定数kを特定させる。そして、制御部30は、約定数nをkから1ずつ減らしながら、不満総和関数の最小値<第1閾値となるまで、マッチング部32、不満関数作成部33、総和関数作成部34及び最小値特定部35に処理を繰返させることで、最適約定数と約定と次の株価を特定する。そして、制御部30は、特定した約定ごとに約定価格を約定価格決定部36に決定させる。そして、制御部30は、最適約定数、次の株価、及び、約定ごとの売り指値と買い指値と株数と約定価格を銘柄ごとに出力部23に渡す。
なお、制御部30は、不満総和関数の傾きが最初に第2閾値より大きくなる直前の約定数を最適約定数としてもよい。この場合、制御部30は、不満総和関数の傾きを周辺の約定数の不満総和関数の最小値を用いて最小二乗法により計算する。
最大数特定部31は、売り注文と買い注文の情報に基づいて、銘柄ごとに最大約定数を特定する。最大数特定部31は、例えば、二分探索を用いて最大約定数kを特定する。具体的には、l件がマッチングし、r(>l)件はマッチングしない場合に、最大数特定部31は、次に(l+r)/2件がマッチングするかを判定する。そして、最大数特定部31は、マッチングする場合には、次にlを(l+r)/2で置き換え、マッチングしない場合には、rを(l+r)/2で置き換える。このような処理をlとrが連続する数になるまで繰り返すことによって、最大数特定部31は、kを特定する。あるいは、最大数特定部31は、二部グラフを用いて最大約定数kを特定してもよい。
マッチング部32は、売り注文と買い注文の情報と、制御部30により指定された銘柄及び約定数nとに基づいて、売り注文と買い注文をn件マッチングさせる。マッチング部32は、現在値にとらわれず、指値又は指値より投資家にとって有利な価格であればマッチングさせる。
例えば、マッチング部32は、売り注文と買い注文をランダムに選択することでマッチングを行ってもよい。具体的には、マッチング部32は、売り注文j件のリストAと買い注文j件のリストBを作成する。そして、マッチング部32は、Aのj件とBのj件の組み合わせを1つ選択し、j件全てについて売り指値が買い指値以下である組み合わせをマッチング候補として記録する記録処理を行う。マッチング部32は、この記録処理を、Aのj件とBのj件の組み合わせを変えながら全組み合わせについて実行する。さらに、マッチング部32は、この記録処理を、A又はBを変更しながら、AとBの全組み合わせについて実行する。さらに、マッチング部32は、この記録処理を、マッチング件数jを1からuまで変化させながら行う。ここで、uは、売り注文数と買い注文数の小さい方である。
そして、マッチング部32は、マッチング候補の中から最適なマッチングを選択する。ここで、最適なマッチングとは、例えば、売り指値の平均が最も安い、買い指値の平均が最も高い、マッチング数が最大である、同一証券会社間のマッチングが少ないなどがある。
あるいは、マッチング部32は、売り注文と買い注文をランダムに選択することでマッチングを行ってもよい。具体的には、マッチング部32は、売り注文j件のリストAと買い注文j件のリストBを作成する。そして、マッチング部32は、AとBからランダムに1件ずつ選択して売り指値が買い指値以下であるかを判定し、AとBのj件全てについて売り指値が買い指値以下である組み合わせをマッチング候補として記録する記録処理を行う。マッチング部32は、この記録処理を、A又はBを変更しながら、AとBの全組み合わせてについて実行する。さらに、マッチング部32は、この記録処理を、マッチング件数jを1からuまで変化させながら行う。そして、マッチング部32は、マッチング候補の中から最適なマッチングを選択する。
あるいは、マッチング部32は、分岐限定法によるマッチングを行ってもよい。具体的には、マッチング部32は、売り注文と買い注文のマッチングにおいて深さ優先探索を行い、ある探索点でより深い探索を行っても最適なマッチングは得られないと判定すると、より深い探索を行わない。
あるいは、マッチング部32は、遺伝的アルゴリズムを用いて売り注文と買い注文をマッチングさせてもよい。具体的には、マッチング部32は、2つのマッチング案の交配ルールを決めておき、交配ルールによって2つのマッチング案を交配させ、次世代のマッチング案を作る。マッチング部32は、次世代のマッチング案の作成を繰り返すことで、よりよいマッチング案を作成する。マッチング部32は、例えば、数千世代のマッチング案を作成する。
不満関数作成部33は、全約定(マッチング)について、マッチング部32から約定ごとの売り指値及び買い指値を取得し、取得した売り指値及び買い指値と、次の株価q円、活性化関数A(d)とを用いて不満関数DC(q)を約定ごとに作成する。
総和関数作成部34は、不満関数作成部33により約定ごとに作成された不満関数DC(q)を全約定について加えて不満総和関数DCS(q)を作成する。
最小値特定部35は、不満総和関数DCS(q)の最小値と、DCS(q)を最小にするqの値qminを特定し、次の株価をqmin円とする。最小値特定部35は、例えば黄金分割探索を用いてqminを特定する。最小値特定部35は、二分探索、四分探索を用いてqminを特定してもよい。
約定価格決定部36は、制御部30により特定された約定に基づいて、約定ごとの約定価格を決定する。約定価格決定部36は、売り指値をs円、買い指値をb(s≦b)円とし、次の株価をq円とし、区間[s,b]のうちqに近い値をrとすると、約定価格をr円とする。すなわち、約定価格決定部36は、次の株価に基づいて約定価格を決定する。
次に、約定装置13による処理のフローについて説明する。図9は、約定装置13による処理のフローを示すフローチャートである。なお、約定装置13は、銘柄ごとに図9に示す処理を行う。図9に示すように、約定装置13は、板寄せの開始時に注文管理装置12から売り注文と買い注文の情報を受信する(ステップS1)。
そして、約定装置13は、最大約定数kを特定し(ステップS2)、nの初期値をkとする(ステップS3)。そして、約定装置13は、売り注文と買い注文の情報に基づいて、n件約定させ、約定ごとに売り指値、買い指値、株数を記憶する(ステップS4)。
そして、約定装置13は、約定ごとに不満関数を作成し(ステップS5)、全約定の不満関数を加えて不満総和関数を作成する(ステップS6)。そして、約定装置13は、不満総和関数の最小値と次の株価を特定し(ステップS7)、特定した最小値が第1閾値より小さいか否かを判定する(ステップS8)。そして、特定した最小値が閾値より小さくない場合には、約定装置13は、nから1を引き(ステップS9)、ステップS4に戻る。
一方、特定した最小値が第1閾値より小さい場合には、約定ごとに約定価格を決定し(ステップS10)、注文管理装置12に、n、次の株価、及び、約定ごとの売り指値と買い指値と株数と約定価格を送信する。
このように、約定装置13は、約定数を最大約定数kから1ずつ減らしながら不満総和関数の最小値が第1閾値より小さくなった最初の約定数を最適約定数として特定するので、投資家が許容できる不満の下で約定数を特定することができる。
図9では、ステップS5~ステップS7において、不満関数及び不満総和関数を作成して不満総和関数の最小値と次の株価を特定したが、不満総和関数の最小値と次の株価を黄金分割探索を用いて直接特定することもできる。そこで、不満総和関数の最小値と次の株価を黄金分割探索を用いて直接特定する処理について説明する。
図10は、不満総和関数の最小値と次の株価を黄金分割探索を用いて特定する処理のフローを示すフローチャートである。図10に示すように、最小値特定部35は、全約定について売り指値と買い指値を取得する(ステップS31)。そして、最小値特定部35は、売り指値及び買い指値の最小値をm、最大値をMとしたときの初期値をx1=m、x3=Mとし、x1、x3を1:φに内分する値を四捨五入してx2とする(ステップS32)。ここで、φは黄金比((1+√5)/2)である。
そして、最小値特定部35は、x1+1とx3が等しいか否かを判定し(ステップS33)、x1+1とx3が等しくない場合には、x1、x3をφ:1に内分する値を四捨五入してx4とする(ステップS34)。そして、最小値特定部35は、DS(x1)>DS(x2)>DS(x4)であるか否かを判定し(ステップS35)、DS(x1)>DS(x2)>DS(x4)である場合には、(x1,x2,x3)を(x2,x4,x3)で置き換える(ステップS36)。一方、(DS(x1)>DS(x2)>DS(x4))でない場合には、最小値特定部35は、(x1,x2,x3)を(x1,x2,x4)で置き換える(ステップS37)。そして、最小値特定部35は、DSの値も置き換えて(ステップS38)、ステップS33へ戻る。
ステップS33において、x1+1とx3が等しい場合には、最小値特定部35は、x1を次の株価として、DS(x1)を不満総和関数の最小値として特定する(ステップS39)。
図11は、DS(q)の値を計算する処理のフローを示すフローチャートである。図11に示すように、最小値特定部35は、不満の総和S=0とし(ステップS41)、i=1とする(ステップS42)。そして、最小値特定部35は、Sに約定iの不満の値A(si-q)+A(q-bi)を足し(ステップS43)、i=i+1とする(ステップS44)。
そして、最小値特定部35は、iがn以下か否かを判定する(ステップS45)。ここで、nは約定数である。そして、最小値特定部35は、iがn以下の場合には、ステップS43に戻り、iがn以下でない場合には、Sの値をDS(q)として返す(ステップS46)。
このように、最小値特定部35は、不満総和関数の値を最小にする次の株価と不満総和関数の最小値を黄金分割探索を用いて直接特定するので、次の株価及び不満総和関数の最小値を効率よく特定することができる。
上述してきたように、実施例では、マッチング部32が、売り注文と買い注文の情報に基づいて、n件マッチングさせる。そして、不満関数作成部33が、売り指値と次の株価の差分と、次の株価と買い指値の差分とに基づいて、不満関数を約定ごとに作成する。また、総和関数作成部34が、約定ごとに作成された不満関数に基づいて全約定の不満総和関数を作成する。そして、最小値特定部35が、不満総和関数の最小値を特定する。そして、制御部30が、nを最大約定数kから1ずつ減らしながら、不満総和関数の最小値が第1閾値より小さくなるまで、マッチング部32、不満関数作成部33、総和関数作成部34及び最小値特定部35に処理を繰り返させる。したがって、約定装置13は、投資家が許容できる不満の下で約定数を特定することができる。
なお、最小値特定部35は、iを正の整数として不満総和関数の最小値からi番目の値を特定してもよい。この場合、制御部30は、不満総和関数の最小値からi番目の値が第1閾値より小さくなるまで、マッチング部32、不満関数作成部33、総和関数作成部34及び最小値特定部35に処理を繰り返させる。
また、実施例では、制御部30は、不満総和関数の最小値の傾きが最初に第2閾値より大きくなる直前の約定数を最適約定数としてもよい。また、実施例では、制御部30は、不満総和関数の最小値の傾きを、周辺の約定数の不満総和関数の最小値に基づき最小二乗法を用いて計算するので、不満総和関数の最小値の傾きを正確に計算することができる。
なお、実施例では、約定装置13について説明したが、約定装置13が有する構成をソフトウェアによって実現することで、同様の機能を有する約定プログラムを得ることができる。そこで、約定プログラムを実行するコンピュータについて説明する。
図12は、実施例に係る約定プログラムを実行するコンピュータのハードウェア構成を示す図である。図12に示すように、コンピュータ50は、メインメモリ51と、CPU(Central Processing Unit)52と、LAN(Local Area Network)インタフェース53と、HDD(Hard Disk Drive)54とを有する。また、コンピュータ50は、スーパーIO(Input Output)55と、DVI(Digital Visual Interface)56と、ODD(Optical Disk Drive)57とを有する。
メインメモリ51は、プログラムやプログラムの実行途中結果等を記憶するメモリである。CPU52は、メインメモリ51からプログラムを読み出して実行する中央処理装置である。CPU52は、メモリコントローラを有するチップセットを含む。
LANインタフェース53は、コンピュータ50をLAN経由で他のコンピュータに接続するためのインタフェースである。HDD54は、プログラムやデータを格納するディスク装置であり、スーパーIO55は、マウスやキーボード等の入力装置を接続するためのインタフェースである。DVI56は、液晶表示装置を接続するインタフェースであり、ODD57は、DVDの読み書きを行う装置である。
LANインタフェース53は、PCIエクスプレス(PCIe)によりCPU52に接続され、HDD54及びODD57は、SATA(Serial Advanced Technology Attachment)によりCPU52に接続される。スーパーIO55は、LPC(Low Pin Count)によりCPU52に接続される。
そして、コンピュータ50において実行される約定プログラムは、コンピュータ50により読み出し可能な記録媒体の一例であるDVDに記憶され、ODD57によってDVDから読み出されてコンピュータ50にインストールされる。あるいは、約定プログラムは、LANインタフェース53を介して接続された他のコンピュータシステムのデータベース等に記憶され、これらのデータベースから読み出されてコンピュータ50にインストールされる。そして、インストールされた約定プログラムは、HDD54に記憶され、メインメモリ51に読み出されてCPU52によって実行される。
また、実施例では、取引システム1が受付装置11と注文管理装置12と約定装置13とを有する場合について説明したが、受付装置11と注文管理装置12と約定装置13の機能を1つにまとめて取引装置を構成してもよい。あるいは、受付装置11と注文管理装置12の機能を1つにまとめるなど、任意の2つの機能を1つにまとめて1つの装置としてもよい。
また、実施例では、株を取引する場合について説明したが、取引システム1は、他の有価証券や品物を取引してもよい。
1 取引システム
2 内部ネットワーク
11 受付装置
12 注文管理装置
13 約定装置
21 取得部
22 約定決定部
23 出力部
30 制御部
31 最大数特定部
32 マッチング部
33 不満関数作成部
34 総和関数作成部
35 最小値特定部
36 約定価格決定部
50 コンピュータ
51 メインメモリ
52 CPU
53 LANインタフェース
54 HDD
55 スーパーIO
56 DVI
57 ODD

Claims (8)

  1. コンピュータに、
    売り指値と次の取引価格の差分と、該次の取引価格と買い指値の差分とに基づいて、該次の取引価格を変数として投資家の不満を表す不満関数を約定ごとに作成し、
    約定ごとに作成した不満関数に基づいて全約定の総不満関数を作成し、
    作成した総不満関数の値のうち小さい方から所定の数番目の値を特定する
    処理を約定数を変化させながら実行することで複数の前記所定の数番目の値を特定し、約定数ごとに特定した前記複数の前記所定の数番目の値のうち、当該所定の数番目の値が投資家が許容できる不満に応じて定めた条件を満たす約定数から最適約定数を決定する
    処理を実行させることを特徴とする取引プログラム。
  2. 前記最適約定数を決定する処理は、前記複数の前記所定の数番目の値が約定数を最大約定数から減少させていくときに最初に第1閾値より小さくなる約定数を前記最適約定数として決定することを特徴とする請求項1に記載の取引プログラム。
  3. 前記最適約定数を決定する処理は、前記複数の前記所定の数番目の値の傾きが約定数を増加させていくときに最初に第2閾値を超える直前の約定数を前記最適約定数として決定することを特徴とする請求項1に記載の取引プログラム。
  4. 前記最適約定数を決定する処理は、約定数に対する前記傾きを該約定数より一定数小さい約定数から前記一定数大きい約定数と各約定数に対応する前記所定の数番目の値を用いて最小二乗法で算出することを特徴とする請求項3に記載の取引プログラム。
  5. 前記特定する処理は、作成した総不満関数の最小値を特定することを特徴とする請求項1~4のいずれか1つに記載の取引プログラム。
  6. 前記特定する処理は、前記総不満関数の最小値を黄金分割探索を用いて特定することを特徴とする請求項5に記載の取引プログラム。
  7. コンピュータが、
    売り指値と次の取引価格の差分と、該次の取引価格と買い指値の差分とに基づいて、該次の取引価格を変数として投資家の不満を表す不満関数を約定ごとに作成し、
    約定ごとに作成した不満関数に基づいて全約定の総不満関数を作成し、
    作成した総不満関数の値のうち小さい方から所定の数番目の値を特定する
    処理を約定数を変化させながら実行することで複数の前記所定の数番目の値を特定し、約定数ごとに特定した前記複数の前記所定の数番目の値のうち、当該所定の数番目の値が投資家が許容できる不満に応じて定めた条件を満たす約定数から最適約定数を決定する
    処理を実行することを特徴とする取引方法。
  8. 売り指値と次の取引価格の差分と、該次の取引価格と買い指値の差分とに基づいて、該次の取引価格を変数として投資家の不満を表す不満関数を約定ごとに作成する第1作成部と、
    前記第1作成部により約定ごとに作成された不満関数に基づいて全約定の総不満関数を作成する第2作成部と、
    前記第2作成部により作成された総不満関数の値のうち小さい方から所定の数番目の値を特定する特定部と、
    前記第1作成部、前記第2作成部及び前記特定部に約定数を変化させながら処理を実行させることで複数の前記所定の数番目の値を特定し、約定数ごとに特定した前記複数の前記所定の数番目の値のうち、当該所定の数番目の値が投資家が許容できる不満に応じて定めた条件を満たす約定数から最適約定数を決定する制御部と
    を有することを特徴とする取引装置。
JP2021503379A 2019-03-07 2019-03-07 取引プログラム、取引方法及び取引装置 Active JP7168063B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/009189 WO2020179069A1 (ja) 2019-03-07 2019-03-07 取引プログラム、取引方法及び取引装置

Publications (2)

Publication Number Publication Date
JPWO2020179069A1 JPWO2020179069A1 (ja) 2021-10-21
JP7168063B2 true JP7168063B2 (ja) 2022-11-09

Family

ID=72338528

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021503379A Active JP7168063B2 (ja) 2019-03-07 2019-03-07 取引プログラム、取引方法及び取引装置

Country Status (3)

Country Link
US (1) US20210383473A1 (ja)
JP (1) JP7168063B2 (ja)
WO (1) WO2020179069A1 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001357210A (ja) 2000-04-03 2001-12-26 Masato Doujo 証券売買システム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL117424A (en) * 1995-04-27 1999-09-22 Optimark Tech Inc Crossing network utilizing satisfaction density profile
US5689652A (en) * 1995-04-27 1997-11-18 Optimark Technologies, Inc. Crossing network utilizing optimal mutual satisfaction density profile

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001357210A (ja) 2000-04-03 2001-12-26 Masato Doujo 証券売買システム

Also Published As

Publication number Publication date
WO2020179069A1 (ja) 2020-09-10
JPWO2020179069A1 (ja) 2021-10-21
US20210383473A1 (en) 2021-12-09

Similar Documents

Publication Publication Date Title
Gallaugher E-commerce and the undulating distribution channel
US7680686B2 (en) System and methods for business to business price modeling using price change optimization
US20080126264A1 (en) Systems and methods for price optimization using business segmentation
JP6340428B2 (ja) ビジネス関係ネットワークの発見、及び関係の関連性の評価
JPH11504455A (ja) 満足度密度プロファイルを利用したかけあわせネットワーク
KR20010108282A (ko) 입찰가 판정 방법, 시스템 및 컴퓨터
JP7462564B2 (ja) 資産ポートフォリオを作成するためのコンピュータ実施方法
CN113191814B (zh) 一种自动询价采购的方法及系统
JP7168063B2 (ja) 取引プログラム、取引方法及び取引装置
US20210374856A1 (en) Computer-readable recording medium storing trading program, trading method and trading device
KR20240002900A (ko) 데이터 이코노미에서 금융 데이터 가치 측정 방법 및 이러한 방법을 수행하는 장치
JP7124950B2 (ja) 取引プログラム、取引方法及び取引装置
Burgess Machine Earning–Algorithmic Trading Strategies for Superior Growth, Outperformance and Competitive Advantage
JP2006127155A (ja) サービサ連携システム、ポートフォリオ形成支援システム、ポートフォリオ形成支援方法、中継コンピュータ、及びコンピュータプログラム
CN113744024A (zh) 一种商家匹配方法、装置、计算机设备及存储介质
JP7205614B2 (ja) 取引プログラム、取引方法及び取引装置
JP5086038B2 (ja) 投資配分装置、投資配分プログラム
Sarbijan et al. Using Grey Data Envelopment Analysis For Evaluation And Selection Of Efficient Suppliers Based On Uncertainty
US20110131126A1 (en) Trade Management System For Reducing Securities Positions
JP4500006B2 (ja) ポートフォリオ算出装置、ポートフォリオ算出方法、ならびに、ポートフォリオ算出プログラム
KR20230064085A (ko) Ai를 이용한 불용 자재 추천 서비스 제공방법
CN115063203A (zh) 理财产品的推荐方法、推荐设备及计算机可读存储介质
CN117242478A (zh) 对来自分布式模型系统和方法的估值进行置信处理
Bhardwaj Vendor Selection Practices in Automobile Industry
US20150187008A1 (en) Customizing baskets for exchange-traded funds

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210607

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210607

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220621

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220809

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220927

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221010

R150 Certificate of patent or registration of utility model

Ref document number: 7168063

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150