(57)【要約】【課題】ネットワーク上において、一般の商品を対象として取引時間の制約なく、不特定多数のユーザの成行を含む希望価格、希望数量を受け付けて公開した上で付け合せを行って、需要と供給に見合った価格にて素早い取引を可能とする。【解決手段】注文を受け付けるごとに付け合せ処理を実行する方式により、不特定多数のユーザによる一般の商品を対象とした取引において、取引時間の制約無くザラバ方式を実現する。その際、付け合せ処理は、成行優先・価格優先・時間優先にて行われ約定が成立する。【選択図】図１
2008084147.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して複数の端末に接続するサーバ装置であって、
第１の商品番号、第１の売買区分、第１の成行フラグ、第１の価格、第１の注文数量、第１の注文日時を含む第１の注文情報を注文ファイルに記憶する記憶手段と、
前記複数の端末のいずれかから第２の商品番号、第２の売買区分、第２の成行フラグ、第２の価格、第２の注文数量を含む第２の注文情報を受信する受信手段と、
前記注文ファイルを更新する第１の更新手段であって、
前記第２の成行フラグの値がオフの場合、前記第２の注文情報および第２の注文日時を含む第２の注文レコードで前記注文ファイルを更新し、
前記第２の成行フラグの値がオンの場合、前記注文ファイルから前記第２の商品番号と同一の前記第１の商品番号を有し、前記第１の成行フラグの値がオフで、かつ、前記第２の売買区分と異なる第１の売買区分を有する第１の注文レコード中の前記第１の注文数量の合計が、前記第２の注文数量の合計以上の場合に、前記第２の注文レコードにより前記注文ファイルを更新する第１の更新手段と、
前記注文ファイルから、前記第２の商品番号と同一の前記第１の商品番号と、前記第２の売買区分と異なる前記第１の売買区分と、前記第２の注文日時より早い前記第１の注文日時とを有する第１の注文レコードを抽出し、当該抽出した第１の注文レコードについて、優先順位を決定する優先順位決定手段と、
約定手段であって、
前記第２の成行フラグの値がオンの場合、前記優先順位に従い前記抽出した第１の注文レコードと前記第２の注文レコードとで、前記第２の注文数量に達するまで約定し、
前記第２の成行フラグの値がオフの場合、前記優先順位に従い前記抽出した第１の注文レコードと前記第２の注文レコードとで、前記第２の価格に基づく条件内で約定する約定手段と、
前記注文ファイルにおいて、前記第１の注文レコードと第２の注文レコードのうち、前記第１の注文数量または前記第２の注文数量すべてを約定したレコードを削除し、前記第１の注文数量または前記第２の注文数量の一部を約定したレコードについて、約定数量を減じた残数量で該前記第１の注文数量または前記第２の注文数量を更新する第２の更新手段と
を備えることを特徴とするサーバ装置。
【請求項２】
前記優先順位決定手段は、前記抽出した第１の注文レコードのうち、
前記第１の成行フラグの値がオンのレコードの優先順位を、該第１の成行フラグがオフのレコードより高く設定し、
前記第１の売買区分が売りのレコードについて、価格がより低いレコードの優先順位を高く設定し、
前記第１の売買区分が買いのレコードについて、価格がより高いレコードの優先順位を高く設定し、
価格同一のレコードについて、前記第１の注文日時のより早いレコードの優先順位を高く設定する
ことを特徴とする請求項１に記載のサーバ装置。
【請求項３】
前記第１の更新手段は、前記第１の注文レコードに、前記第２の売買区分と同一の第１の売買区分を有し、かつ、前記第１の成行フラグの値がオンであるレコードが含まれる場合、前記第１の注文数量の合計が、該レコードの第１の注文数量と前記第２の注文数量の合計以上の場合に、当該第２の注文レコードにより前記注文ファイルを更新することを特徴とする請求項１または２に記載のサーバ装置。
【請求項４】
前記第１の商品番号が同一である前記第１の注文レコードについて、前記第１の売買区分別、前記第１の価格の昇順または降順別に前記第１の注文数量の合計を含む取引状況を示す表示画面を生成し前記複数の端末に送信する表示画面生成手段を更に備えることを特徴とする請求項１ないし３のいずれかに記載のサーバー装置。
【請求項５】
コンピュータを請求項１乃至４のいずれかに記載のサーバー装置として機能させるためのコンピュータプログラム。
【請求項６】
請求項５に記載のコンピュータプログラムを格納したコンピュータで読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ装置、コンピュータプログラム及び記憶媒体に関する。
【背景技術】
【０００２】
ネットワーク上のオークションシステムでは、例えば出品された売りの商品に対して、所定期間の応札を受け付け、最高値を提示した応札者が落札者となる。しかし、所定期間が経過するまで落札者が判明しない問題点がある。また所定期間の終了間際に応札が集中し、一時的にシステム負荷が大きくなる問題点がある。
【０００３】
また、不特定多数のユーザによるネットワーク上での物品のトレードシステムがある（例えば、特許文献１参照）。このトレードシステムでは、ユーザの売却希望価格、または、購入希望価格の申し入れを受け付け、条件を満足する双方に最も有利となる取引条件を選出し、取引成立させる。しかし、希望価格の条件提示はできるが、数量の条件提示ができないため、複数個の売買を行う場合は希望数に達するまで注文を繰り返して行わなければならない問題点がある。このトレードシステムではさらに、他のユーザの希望価格を公開しないため、需要と供給に見合った価格形成が困難である。
【０００４】
東京証券取引所や東京工業品取引所のシステム売買における取引の締結方法の一つとして、ザラバ方式（ザラバ仕法、ザラバ付合せともいう）が採用されている。ザラバ方式とは、立会い開始から立会い終了までの間において、ある銘柄の売買注文の価格と数量との条件が対等する都度、約定させる方式である（例えば、非特許文献１、非特許文献２参照）。しかし、この方式では、予め登録された会員が予め登録された銘柄について、定められた立会時間に取引を行わなければならないという制約があり、不特定多数のユーザによる一般の商品を対象とした取引には利用できない。
【特許文献１】特開２００２−７４０７４号公報
【非特許文献１】"システム売買の基礎知識"、[online]、東京工業品取引所、[平成18年8月16日検索]、インターネット＜URL:http://www.tocom.or.jp/jp/profile/doc/system.pdf＞
【非特許文献２】"内国株  売買制度"、[online]、東京証券取引所、[平成18年8月16日検索]、インターネット＜URL:http://www.tse.or.jp/cash/stock/sttrading.html＞
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記のように、従来の売買システムでは、ネットワーク上において、一般の商品を対象として取引時間の制約なく、不特定多数のユーザの成行を含む希望価格、希望数量を受け付けて公開した上で付け合せを行うことができなかった。
【０００６】
そこで、本発明では、ネットワーク上において、一般の商品を対象として取引時間の制約なく、不特定多数のユーザの成行を含む希望価格、希望数量を受け付けて公開した上で付け合せを行って、需要と供給に見合った価格にて素早い取引を可能とすることを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するための本発明は、ネットワークを介して複数の端末に接続するサーバ装置であって、
第１の商品番号、第１の売買区分、第１の成行フラグ、第１の価格、第１の注文数量、第１の注文日時を含む第１の注文情報を注文ファイルに記憶する記憶手段と、
前記複数の端末のいずれかから第２の商品番号、第２の売買区分、第２の成行フラグ、第２の価格、第２の注文数量を含む第２の注文情報を受信する受信手段と、
前記注文ファイルを更新する第１の更新手段であって、
前記第２の成行フラグの値がオフの場合、前記第２の注文情報および第２の注文日時を含む第２の注文レコードで前記注文ファイルを更新し、
前記第２の成行フラグの値がオンの場合、前記注文ファイルから前記第２の商品番号と同一の前記第１の商品番号を有し、前記第１の成行フラグの値がオフで、かつ、前記第２の売買区分と異なる第１の売買区分を有する第１の注文レコード中の前記第１の注文数量の合計が、前記第２の注文数量の合計以上の場合に、前記第２の注文レコードにより前記注文ファイルを更新する第１の更新手段と、
前記注文ファイルから、前記第２の商品番号と同一の前記第１の商品番号と、前記第２の売買区分と異なる前記第１の売買区分と、前記第２の注文日時より早い前記第１の注文日時とを有する第１の注文レコードを抽出し、当該抽出した第１の注文レコードについて、優先順位を決定する優先順位決定手段と、
約定手段であって、
前記第２の成行フラグの値がオンの場合、前記優先順位に従い前記抽出した第１の注文レコードと前記第２の注文レコードとで、前記第２の注文数量に達するまで約定し、
前記第２の成行フラグの値がオフの場合、前記優先順位に従い前記抽出した第１の注文レコードと前記第２の注文レコードとで、前記第２の価格に基づく条件内で約定する約定手段と、
前記注文ファイルにおいて、前記第１の注文レコードと第２の注文レコードのうち、前記第１の注文数量または前記第２の注文数量すべてを約定したレコードを削除し、前記第１の注文数量または前記第２の注文数量の一部を約定したレコードについて、約定数量を減じた残数量で該前記第１の注文数量または前記第２の注文数量を更新する第２の更新手段と
を備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、ネットワーク上において、一般の商品を対象として取引時間の制約なく、不特定多数のユーザの成行を含む希望価格、希望数量を受け付けて公開した上で付け合せを行うため、需要と供給に見合った価格にて素早く取引を行うことができる。
【発明を実施するための最良の形態】
【０００９】
以下、添付する図面を参照して、本発明の実施形態を説明する。
【００１０】
本実施形態に対応する電子取引システム（以下、「本システム」ともいう。）の全体構成の一例は図１に示すとおりである。取引の仲介を行う取引サーバ１０１と、取引サーバ１０１を介して取引を行う取引当事者が使用する複数の取引端末１０２（ＡからＮ）とが、インターネット等のネットワーク１０３を介して接続されている。取引端末１０２は、汎用のパーソナルコンピュータ等で構成される。即ち、取引サーバ１０１は、ネットワーク１０３を介して、各取引端末１０２から買い注文、売り注文を受け付け、約定を行う。
【００１１】
本実施形態に対応する取引サーバ１０１のハードウェア構成の一例を図２に示す。図２において、２０１はＣＰＵで、ＲＡＭ（ランダムアクセスメモリ）２０２やＲＯＭ（リードオンリメモリ）２０５に格納されたプログラムやデータ等を用いてサーバ１０１の制御を行うと共に、本発明に対応する電子取引処理を行う。２０２はＲＡＭで、内部記憶装置２０７内に格納された電子取引処理プログラムやデータベース２０８に格納されている情報を読み込むエリアを備えると共に、ＣＰＵ２０１が各種の処理を実行する際に用いるワークエリアも備える。
【００１２】
２０３は取引サーバ１０１の管理者から入力を受付ける入力部であり、キーボードやマウスなどで構成される。２０４は通信Ｉ／Ｆ（インタフェース）で、インターネット１０３等に接続するためのＩ／Ｆとして機能する。２０５はＲＯＭで、取引サーバ１０１全体の制御を行うプログラム（例えばブートプログラム等）等を格納する。２０６は表示画面としての表示部で、ＣＲＴや液晶画面により構成されている。
【００１３】
２０７は内部記憶装置で、主としてハードディスクで構成され、図４及び図９に示すフローチャートに対応する取引処理を行うためのプログラムや各種アプリケーションデータを格納する。ここに格納されているデータは必要に応じてＲＡＭ２０２に読み出される。２０８はデータベースであり、商品ファイル２０９、注文ファイル２１０、約定ファイル２１１、ユーザファイル２１２を格納する。また、２１３は上述の各部を繋ぐバスである。
【００１４】
商品ファイル２０９には、取引対象となる商品に関する情報が登録されている。本実施形態において取引対象となる商品は、本システムの運用管理者がユーザからの要求や自らの判断をもとに決定し、商品ファイル２０９に登録することができる。
【００１５】
商品ファイル２０９の構成の一例は、図８に示すようになる。即ち、商品ファイル２０９には、分類８０１、種類８０２、商品番号８０３、商品名８０４、登録日８０５、最新価格８０６、約定数量ｎ（ｎ＝１、２、・・・）が含まれる。このうち最新価格８０６は、本システムで約定するごとに更新される直前の約定価格である。また、約定数量１（８０７）には、予め定めた第１の期間（例えば、最新１週間）に本システムにて約定した当該商品の数量の合計が登録される。また、約定数量２（８０８）には、予め定めた第２の期間（例えば、最新１ヶ月）に本システムにて約定した当該商品の数量の合計が登録される。取引サーバ１０１側の管理者は、約定数量ｎの少ないものについて、商品ファイルから削除する候補とすることができる。
【００１６】
注文ファイル２１０には、ユーザから受け付けた注文情報が、該注文情報を受け付けた日時の情報と共に注文レコードとして登録されている。図６に一例を示すように、注文ファイル２１０には、商品番号６０１、売買区分６０２、成行フラグ６０３、価格６０４、注文数量６０５、注文日時６０６、注文番号６０７、ユーザコード６０８が含まれる。ここで、商品番号６０１には、注文を受け付けた商品を識別するための商品番号が登録される。売買区分６０２には、「売り」または「買い」のいずれかの売買区分が登録される。
【００１７】
本実施形態では、「成行（なりゆき）注文」と呼ばれる注文方式を採用する。この成行注文とは、価格を指定しない注文であり、かつ、価格を指定した注文より価格的に優先して付合せが行われる注文である。成行フラグ６０３は、成行注文であれば「オン」、成行注文でなければ「オフ」の値を持つ。成行フラグ６０３の値が「オン」であれば、価格６０４の値は「０」に設定される。
【００１８】
価格６０４は、上述のように成行フラグ６０３が「オフ」の場合にのみ、取引希望価格が登録される。注文数量６０５には、取引を希望する数量が登録される。注文日時６０６には、取引サーバ１０１が取引端末１０２から注文情報を受け付けた日時が登録される。注文日時の順を把握できるように、取引サーバ１０１が計測可能な最小単位までの値を持つことが好ましい。注文番号６０７は、注文が受領可能と判定された時点で発行される注文番号が登録される。ユーザコード６０８には、注文を行ったユーザを識別するためのユーザＩＤが登録される。
【００１９】
なお、注文ファイル２１０の構成は、商品番号６０１ごとに別ファイルとし、ファイル名の一部に商品番号を含めるようにしてもよい。
【００２０】
約定ファイル２１１には、約定した注文レコードが登録されている。約定ファイル２１１の具体例については、図１０を参照して後述する。
【００２１】
本システムを利用可能なユーザは、予めユーザファイル２１２に登録される。ユーザファイル２１２には、各ユーザを一意に識別するためのユーザＩＤとパスワード、更にはユーザの名前やメールアドレス等のユーザに関する情報が登録されている。各ユーザは、取引端末１０２から、ユーザＩＤとパスワードとを利用して、取引サーバ１０１にアクセスし取引処理を行うことが可能となっている。
【００２２】
次に、図３に、本実施形態に対応する取引端末１０２のハードウェア構成の一例を示す。図３において、３０１はＣＰＵで、ＲＡＭ（ランダムアクセスメモリ）３０２やＲＯＭ（リードオンリメモリ）３０５に格納されたプログラムやデータ等を用いて取引端末１０２の制御を行う。３０２はＲＡＭで、内部記憶装置３０７内に格納された、本実施形態に対応する処理プログラムを読み込むエリアを備えると共に、ＣＰＵ３０１が各種の処理を実行する際に用いるワークエリアも備える。
【００２３】
３０３は取引端末１０２のユーザーから入力を受付ける入力部であり、キーボードやマウスなどで構成される。３０４は通信Ｉ／Ｆ（インタフェース）で、インターネット１０３等に接続するためのＩ／Ｆとして機能する。３０５はＲＯＭで、取引端末１０２全体の制御を行うプログラム（例えばブートプログラム等）等を格納する。３０６は表示画面としての表示部で、ＣＲＴや液晶画面により構成されている。表示部３０６には、取引サーバ１０１から提供される情報に基づ画面表示が行われる。
【００２４】
３０７は内部記憶装置で、主としてハードディスクで構成され、本実施形態に対応する図４及び図９に示す処理を行うためのプログラムや各種アプリケーションデータを格納する。ここに格納されているデータは必要に応じてＲＡＭ３０２に読み出される。３１０は上述の各部を繋ぐバスである。
【００２５】
次に、図４のフローチャートを参照して本実施形態に対応する注文処理について説明する。図４は、本実施形態に対応する取引サーバ１０１と取引端末１０２との間で行われる注文処理の一例を示すフローチャートである。
【００２６】
ユーザは、取引端末１０２を操作して、取引サーバ１０１との間でログイン処理を行う（ステップＳ４０１及びＳ４０２）。このログイン処理では、取引端末１０２の表示部３０６にログイン画面が表示され、ユーザは自分に割り当てられているユーザＩＤとパスワードの入力を行う。入力されたユーザＩＤとパスワードの情報は、取引サーバ１０１へ送信され、ユーザファイル２１２内の登録内容と照合され、ログインを許可するか否かが判定される。もし登録内容と一致する場合には、ログインが許可され、ステップＳ４０３に移行する。一方、登録内容と一致しない場合には、ログインが拒否され、再度ログイン処理が実行される。
【００２７】
ステップＳ４０３では、図５に示すような注文入力画面の画面情報が取引サーバ１０１から取引端末１０２に送信される。ステップＳ４０４では、取引サーバ１０１から送信された注文入力画面の画面情報を取引端末１０２が受信する。取引端末１０２は、該受信した画面情報に従い、表示部３０６に、注文入力画面を表示して、ユーザからの注文入力を受け付ける。
【００２８】
ここで、注文入力画面の一例を図５を参照して説明する。図５において、５００は、注文入力画面全体を示している。この注文入力画面５００には、画面上に商品名欄５０１が表示される。商品名欄５０１には、ユーザが商品番号５０３の欄に希望の商品番号を入力すると、対応する商品名が表示される。
【００２９】
次に、注文番号欄５０２は、注文が受け付けられた場合に発行される注文番号を入力することができる。また、商品番号欄５０３には、ユーザが取引を希望する商品番号を入力することができる。商品番号の選択は、商品ファイル２０９を別途参照しておこなうことができる。具体的に、ユーザは、分類一覧から希望する分類を選択し、更に種類を選択して、指定分類、指定種類の商品番号、商品名、登録日、最新価格、約定数量ｎを含む一覧表を表示し、参照できる。なお、一覧表示の表示順は商品番号順、約定数量ｎの多い順などから選択できる。これらの一覧表示を参照してユーザは売れ筋商品を把握することができる。
【００３０】
売買区分欄５０４には、「売り」または「買い」のいずれかの区分を入力することができる。価格欄５０５には、ユーザが取引を希望する価格を入力することができる。なお、成行注文を希望する場合には、価格欄５０５に価格を入力せず、成行ボタン５０７をクリックする。これにより、価格欄５０５への入力が禁止され、成行注文として受け付けられる。注文数量欄５０６には、取引を希望する数量を入力することができる。メッセージ欄５０８には、取引サーバ１０１から通知されたメッセージの内容が表示される。
【００３１】
以上の入力を完了して発注を行う場合には、発注ボタン５０９を操作することができる。この発注ボタン５０９の操作により、注文入力画面５００に入力された注文情報が、取引サーバ１０１へ送信される。
【００３２】
また、注文番号が発行されている場合には、該注文番号を注文番号欄５０２に入力して、読込ボタン５１０を操作して、注文番号に対応する注文レコードを読み出して、注文入力画面５００上に表示させることができる。この場合、読込ボタン５１０の操作に応じて、取引サーバ１０１に対して、取引端末１０２から注文番号に対応する注文レコードの送信を要求する。取引サーバ１０１側では、要求に係る注文番号に基づき注文ファイル２１０を検索し、該当する注文レコードを取引端末１０２へ送信する。
【００３３】
また、注文番号に対応する注文レコードを読み出して、画面５００に表示させた場合、取消ボタン５１１を操作して、注文を取り消すことができる。この場合、取消ボタン５１１の操作に応じて、取引サーバ１０１に対して、取引端末１０２から注文番号に対応する注文レコードの取り消しを要求する。取引サーバ１０１側では、要求に係る注文番号に基づき注文ファイル２１０を検索し、該当する注文レコードを注文ファイル２１０から削除して、注文を取り消す。
【００３４】
注文入力画面５００を閉じて、取引を終了する場合には、終了ボタン５１２を操作することができる。
【００３５】
図４の説明に戻り、取引端末１０２側では、ステップＳ４０６において受け付けた注文入力に基づく注文情報を、取引端末１０２から取引サーバ１０１へ送信する。この注文情報には、商品名、商品番号、売買区分、成行フラグ、価格（成り行き注文の場合は値を「０」とする）、注文数量が含まれる。なお、成行フラグは、成行ボタン５０７がクリックされた場合に「オン」となり、クリックされていない場合に「オフ」となる。
【００３６】
次に、取引サーバ１０１側では、ステップＳ４０７において取引端末１０２から注文情報を受信し、ステップＳ４０８に移行して、注文情報に含まれる成行すフラグの値を確認する。もし、成行フラグが「オン」である場合には（ステップＳ４０８において「ＹＥＳ」）、ステップＳ４０９に移行する。一方、成行フラグが「オフ」である場合には（ステップＳ４０８において「ＮＯ」）、ステップＳ４１１に移行する。ステップＳ４０９では、注文ファイル２１０から、商品番号が同一で、売買区分が反対の注文レコード（反対注文レコード）を読み込み、その時点で受け付けている反対注文数量の合計を算出する。
【００３７】
次に、ステップＳ４１０では、取引端末１０２から受け付けた注文情報における注文数量と、算出された合計の反対注文数量とを比較する。もし、注文数量が、反対注文数量以下の場合には（ステップＳ４１０において「ＹＥＳ」）、ステップＳ４１１に移行する。一方、注文数量が、反対注文数量よりも多い場合には（ステップＳ４１０において「ＮＯ」）、ステップＳ４１３に移行する。
【００３８】
なお、ステップＳ４０８からＳ４１０までの処理の間、注文ファイル２１０の商品番号が同一の注文レコードについて、他の処理からの読み出しと書き込みとをロックして、注文状況が変更されないようにすることが好ましい。
【００３９】
ステップＳ４１１では、ステップＳ４０７で受信した注文情報に注文番号を発行して、該注文情報を注文レコードとして注文ファイル２１０に追加する。次に、ステップＳ４１２において、注文を受領したメッセージを取引端末１０２へ送信する。この際、発行された注文番号を通知する。その後、本処理を終了する。
【００４０】
ステップＳ４１３では、成行注文を受け付けることができないため、エラーメッセージを取引端末１０２に対して通知する。ここでは、成行注文を行うには反対注文の数量が足りない旨が通知される。併せて、不足する数量を通知しても良い。その後、本処理を終了する。
【００４１】
取引端末１０２側では、ステップＳ４１４において、取引サーバ１０１からメッセージを受信したか否かを監視している。もし、注文受領メッセージ、或いは、エラーメッセージを受信した場合には（ステップＳ４１４において「ＹＥＳ」）、ステップＳ４１５に移行する。ステップＳ４１５では、受信したメッセージ内容を、メッセージ欄５０８に表示する。
【００４２】
例えば、注文受領メッセージを受信した場合には、「注文を受領しました。注文番号はＸＸＸＸです。」といったメッセージが表示される。また、エラーメッセージを受信した場合には、例えば「注文は受領できません。反対注文数量がＸＸだけ不足しています。注文数量を調整してください。」と言ったメッセージが表示される。
【００４３】
続くステップＳ４１６では、エラーメッセージが表示された場合に（ステップＳ４１６において「ＹＥＳ」）、ステップＳ４０５に戻って、再度注文入力を受け付ける。一方、注文受領メッセージが表示された場合には（ステップＳ４１６において「ＹＥＳ」）、処理を終了する。なお、終了せずにステップＳ４０５に戻って、再度入力を受け付けても良い。
【００４４】
なお、ステップＳ４１０において、注文数量と反対注文数量を比較する場合、ステップＳ４０７で受信した現注文の注文情報よりも先に受領した同一商品に対する同一売買区分の成行注文であって、未だ付け合わせ処理が行われていない先行成行注文があった場合には、該先行成行注文の注文数量と現注文の注文数量との合計を反対注文数量と比較する。この場合、該合計の注文数量が反対注文数量よりも多くなってしまった場合には、現注文の受領は行わず、エラーとする。
【００４５】
以上のようにして、取引端末１０２において注文を受け付け、該注文を取引サーバ１０１において受領するか否かを決定することができる。ここで、受け付けた成行注文の注文数量が、反対注文数量よりも多い場合に注文を受け付けないこととしたのは、以下の理由に基づく。
【００４６】
仮にこのような成行注文を正常な注文として受け付けた場合、後述の付合せ処理を行った後に残った数量分の成行注文について、後から入力される反対注文によりどのような価格でも約定可能となってしまう。このような取引を容認すれば、市場価格の混乱を招く危険がある。そこで、本実施形態では、反対注文数量よりも多い注文数量の成行注文を受け付けないようにして、市場価格の形成に対する悪影響を防止している。
【００４７】
なお、ユーザは、取引端末１０２の表示部３０６において、商品番号ごとの注文状況を確認することができる。図７は、本実施形態に対応する注文状況の確認画面の一例を示す図である。
【００４８】
図７において、７００は確認画面全体を示す。商品番号７０１には、注文状況を表示する対象となる商品番号が表示される。商品名７０２には、商品番号７０１に対応する商品名が表示される。
【００４９】
売り欄７０３には、売り注文の注文数が表示される。価格欄７０４には、注文価格が表示されている。価格の表示順は昇順と降順とのどちらでもよい。買い欄７０５には、買い注文の注文数が示されている。フレーム７０６は、直前に約定した最新価格を識別可能に表示している。このフレーム７０６の位置を参照して、ユーザは自己の注文価格を設定することができる。
【００５０】
次に、図９を参照して、図４の注文処理の直後に実行される、取引サーバ１０１が取引端末１０２から受け付けた注文の付け合わせ処理の詳細を説明する。図９は、本実施形態に対応する付け合わせ処理の一例を示すフローチャートである。図９の説明に際しては、具体例として、図７に示すような商品番号pnm112の商品の注文状況において、成行注文による数量１５の買い注文を現注文として取引サーバ１０１が受領した場合を併せて考える。
【００５１】
図９において、ステップＳ９０１では、取引サーバ１０１が、図４のステップＳ４０７で受け付け、ステップＳ４１１で注文ファイル２１０を更新した現注文レコードと同一の商品番号で売買区分が反対の反対注文レコードを、注文ファイル２１０から抽出する。このとき抽出する反対注文レコードは、現注文レコードよりも注文日時６０６の早いものが選択的に抽出される。
【００５２】
上述の例では、同一商品番号pnm112に対する反対注文である売り注文の注文レコードが注文ファイル２１０から抽出される。
【００５３】
次に、ステップＳ９０２では、抽出した反対注文レコードを優先度順にソートする。ここで優先度順とは、成行フラグ６０３が「オン」の反対注文が一番優先される。次に、同一売買区分における価格により優先度が決定される。まず、反対注文レコードの売買区分６０２が「買い」の場合には、価格がより高い反対注文の優先度が高くなる。また、反対注文レコードの売買区分６０２が「売り」の場合には、価格の低い反対注文の優先度が高くなる。なお、価格同一の場合は、注文日時６０６が早い（古い）順に優先度が高くなる。
【００５４】
図７の例では、価格の低い順に「１３２０００」、「１３３０００」、「１３５０００」の順序で注文レコードがソートされる。
【００５５】
次に、ステップＳ９０３では、優先度順に並べた反対注文レコードと、現注文レコードとを比較して約定が可能か否かを判定する。ここで、現注文レコードの成行フラグ６０３が「オン」の場合には、優先度順に従い、反対注文レコードについて現注文レコードの数量に一致するまで約定を行う。成行注文の場合には、ステップＳ４１０において、反対注文数量以下の数量であるか否かを判定の上で注文を受領しているので、ここでは現注文の数量全部について約定が成立する。従って、この後、ステップＳ９０４に移行する。
【００５６】
一方、現注文レコードの成行フラグ６０３が「オフ」の場合には、優先度順に従い、反対注文レコードについて現注文レコードの価格に基づく条件内で、数量に一致するまで約定を行う。即ち、現注文が買い注文の場合には、設定価格以下の価格の売り注文について、数量に一致するまで約定を行う。逆に現注文が売り注文の場合には、設定価格以上の価格の買い注文について、数量に一致するまで約定を行う。この場合、数量全部、或いは数量の一部について約定を成立した場合には（ステップＳ９０３において「ＹＥＳ」）、ステップＳ９０４に移行する。一方、反対注文レコードに現注文の価格に対応する注文が含まれず、全く約定が成立しない場合には（ステップＳ９０３において「ＮＯ」）、本処理を終了する。
【００５７】
図７の例では、まず価格「１３２０００」にて数量１０の約定が行われ、残りの数量５について価格「１３３０００」にて約定が行われ、現注文における注文数量分の約定が成立する。
【００５８】
ステップＳ９０４では、約定した結果に基づき約定ファイル２１１を更新する。ここで図７の例に従い更新された約定ファイル２１１の一例を図１０を参照して説明する。図１０において、約定ファイル２１１には、約定した注文レコードに係る商品番号１００１、約定価格１００２、約定数量１００３、約定日時１００４、売りユーザコード１００５、買いユーザコード１００６が登録される。
【００５９】
ここで、約定価格１００２は、反対注文レコードに価格６０４が設定されている場合には、該価格６０４の値に設定される。一方、反対注文レコードが成行注文の場合には、その時点において商品ファイル２０９の最新価格８０６に登録されている価格に設定される。売りユーザコード１００５は、売り注文を行ったユーザのユーザＩＤが登録され、買いユーザコード１００６には、買い注文を行ったユーザのユーザＩＤが登録される。なお、図１０では、成行注文を行ったユーザＩＤ「tttttt」のユーザと、先に反対注文を行っていたユーザＩＤ「xxxxxx」のユーザと「uuuuuu」のユーザとが約定した例を示している。
【００６０】
次に、ステップＳ９０５では、注文ファイル２１０を更新する。ここでは、約定ファイル２１１に登録された注文レコードに基づき注文ファイル２１０の内容が更新される。具体的には、注文数量６０５の全てが約定した注文レコードは、注文ファイル２１０から削除される。図６の例では、注文番号６０７「n061087」の注文が削除される。なお、削除せずとも、約定済であることを示すフラグを設定しても良い。また、注文数量６０５の一部が約定した注文レコードについては、注文数量６０５の値を残数に更新する。例えば、当初「２０」の数量が設定されている注文番号「n061035」については、上記の例ではこのうち「５」が約定したこととなるので、残数である「１５」に更新される。
【００６１】
次に、ステップＳ９０６では、商品ファイル２０９を更新する。ここでは、最新価格８０６、約定数量１（８０７）及び約定数量２（８０８）を、約定結果に従って更新する。上記の例で説明すれば、最新価格８０６が、約定価格のうち最も高い価格である「１３３０００」に更新され、約定数量ｎがそれぞれ「１５」ずつ増加される。
【００６２】
次に、ステップＳ９０７では、取引端末１０２に対して、約定結果を通知する。具体的には、約定した商品名、商品番号、約定価格、数量等が通知される。
【００６３】
取引端末１０２側では、ステップＳ９０８において取引サーバ１０１からの約定結果の通知を受信したか否かを監視しており、もし受信した場合には（ステップＳ９０８において「ＹＥＳ」）、ステップＳ９０９に移行する。ステップＳ９０９では、通知された約定結果をメッセージ欄５０８に表示して、ユーザに約定結果を報知して、処理を終了する。
【００６４】
なお、以上の付け合せ処理を行う際は、同一の商品番号について、複数の処理が同時に稼動しないよう制御することが望ましい。
【００６５】
以上のように、本実施形態によれば、注文を受け付けるごとに付け合せ処理を実行する方式により、不特定多数のユーザによる一般の商品を対象とした取引において、取引時間の制約無くザラバ方式を実現することができる。
【図面の簡単な説明】
【００６６】
【図１】発明の実施形態に対応する電子取引システムの構成の一例を示す図である。
【図２】発明の実施形態に対応する取引サーバ１０１のハードウェア構成の一例を示す図である。
【図３】発明の実施形態に対応する取引端末１０２のハードウェア構成の一例を示す図である。
【図４】発明の実施形態に対応する取引サーバ１０１と取引端末１０２との間で行われる注文処理の一例を示すフローチャートである。
【図５】発明の実施形態に対応する注文入力画面の一例を示す図である。
【図６】発明の実施形態に対応する注文ファイル２１０のデータ構造の一例を示す図である。
【図７】発明の実施形態に対応する注文状況の確認画面７００の一例を示す図である。
【図８】発明の実施形態に対応する商品ファイル２０９のデータ構造の一例を示す図である。
【図９】発明の実施形態に対応する取引サーバ１０１と取引端末１０２との間で行われる付け合わせ処理の一例を示すフローチャートである。
【図１０】発明の実施形態に対応する約定ファイル２１１のデータ構造の一例を示す図である。
【図１】
2008084147.tif 000003
【図２】
2008084147.tif 000004
【図３】
2008084147.tif 000005
【図４】
2008084147.tif 000006
【図５】
2008084147.tif 000007
【図６】
2008084147.tif 000008
【図７】
2008084147.tif 000009
【図８】
2008084147.tif 000010
【図９】
2008084147.tif 000011
【図１０】
2008084147.tif 000012