« アスペルガー、ご本人のブログなど--心理、教育、社会性の発達(68) | トップページ | 今度は「通報受けるも出動せず」、妻も怒る--妻が、車に撥ねられる(22) »

一日で数億円を稼ぐ株取り引きシステム--アルゴリズム戦記(21)

(「鐘の声 ブログ」記事マップ)

2008/08/25
一日で数億円を稼ぐ株取り引きシステム--アルゴリズム戦記(21)

前回取り上げたMMLのシステムのあと、タンパク質に関連するお仕事が続いた。
平成1~2年 IBM様向け「タンパク質設計支援システムデータ構造変換サブシステム」の設計製造業務
平成2~3年 帝人様向け「タンパク質設計支援システム」の企画調査、設計業務(ニューロネットワークを利用した自動学習型の人工知能システム)
これらは、いずれも、EWS(エンジニアリングワークステーション)上でC言語による開発である。
そのほか、平成4年には、エステー化学株式会社様向けシステムアドバイズとDSS-CUBICカストマイズ作業などもあった。
これらと並行して、10年間(平成1~10年)にわたって川越市教育委員会様の中学校向けのCAI教材開発を実施した。
パソコン向け化学ソフトウエアのパッケージを日本一たくさん収集しラインナップして、販売したのもこの当時のことである。
これらのことも、振り返って触れることがあるかも知れないが、今回は、ちょっとばかり変わり種のお話をしたい。

平成4-5年のころだったろうか、某証券会社の依頼で株取り引きシステムを引き受けた。
あるとき、この証券会社の知恵者たちは、必勝のアルゴリズムを考え出した。これを使用すれば毎日数十億円の稼ぎも夢ではないと思われた。そこで、当時は最大手のシステムハウスとして名高かったC社にプログラムの作成が発注された。
提示されたアルゴリズムは線形計画法に似ていたが、1次の項と2次の項が規則正しく並ぶような性質のものである。一般解を求めるのは困難である。C社の担当者は、N98-BASICでこのソフトを作った。発注者の専門がなまじ応用数学(東大工学部修士)の出身者だったので、100分割メッシュ法が指定されていたのである。18次元だったので、100分割/次元とすると、計算量は100の18乗となり、天文学的計算回数となり、計算は不能となってしまった。10分割に減らしても10の18乗なので、天文学的計算回数は変わらない。ためしに分割数を10分割に減らしてパソコンを昼夜運転したら13日目に計算が終了したということである。C社が請け負う前に計算量を見積もって適切にアドバイズしたのかどうかわからないが、結果としては、使い物にならない代物だった。なにしろ、本日の取引実績をもとにして翌日の朝の取引に間に合わなければ意味のないものだからである。13日も計算の結果を待っていたら、次の日の朝の取引に間に合うはずがない。
C社は我々にとってはいつも恵みの神であった。彼らが通った後にゆくと、人々は名のない小さな当社に対しても賞賛の言葉を惜しまなかったのである。C社に対して我々はいつも感謝感激だった。
証券会社の担当者は、困り果てていた。人を介して頼んできたときには「せめて半日で計算が終わるようにしてくれないか」ということだった。しかし、この担当者はアルゴリズムの詳細を知られたくないという一点で情報の開示を拒んだ。手元にあるものはプログラムのソースコードだけ。変数名から銘柄を推測することもできないような徹底した秘密主義のプログラムである。まぁいいや、動けばいいんでしょとお預かりして、一晩プログラムとにらめっこするとどうやら18元2次の線形方程式があり、利益の大きさは4次式であらわされる内容を含んでいた。投資比率を変えることによって利益最大にすればよいとわかった。これをC社のSEさんは言われるままに100分割メッシュ法でやっていたのである。知っていて、お金さえもらえれば失敗でもいいという心掛けでやっていたなら営業的には成功だろうが、成果を出したかったのならその能力は考えものという代物だった。これらの方程式の性質を調べると、利益軸の性の方向にすべて凸の形になっている。ちょいと偏微分を試みればすべて明らかだった。
ラッキー! 私は小躍りした。大域的最大値と局所的な局大値とが一致するケースである。18個のランダム数値を基に「山登り法」(大きくなるほうに数値をずらしてゆく。一部ニュートン法の手法も取り入れた)で約7時間で計算が終わることがかかることがわかった。よし、とばかりに翌日証券会社の担当者に事の次第を告げると「メッシュ法が最も優れた方法」と言って譲らない。「結果が最適値かどうかわからないじゃないか。証明してほしい」というので、100分割と比べること出来ないが10分割と比較しましょうと言って引き取った。約2週間後、最適投資配分は10分割法では原理的に少数以下1桁だけ(10%刻み)、私の方法では計算上少数以下13桁まで出ている。四捨五入すればほぼ10分割法の結果に一致する。利益額は、6%ほど私の方法のほうが多いことがわかった。方や計算時間が13日間、方やわずか7時間である。速くて正確。私の方法に軍配が上がった。
それでも証券会社のご担当者は悔し紛れか、「7時間では残業になってしまう。オペレータの女性が残業しないですむ時間にまで短縮してくれ」というのである。お客様というものは欲が深いものである。
さて、どうしたものか、・・・、収束が早い近似計算には古来いろいろあるが、この方程式に適したものは何か、と思いめぐらせて、その場で、「じゃ2分割法でやってみましょう」と約束した。ついでに「3時間以内に計算が終わればOKですね。3時間を切るプログラムになったらお支払いもお願いします」と頭を下げておいた。彼は"できるものか"と思っていたのかもしれない。
ここでいう2分割法とは、次のようなものである。まず各軸の計算範囲(初期は0.0~1.0)を18次元の空間においてみると18次元の立体ができる。この立体を、一つの軸に直行するように2つに分ける。二つの立体のどちらに利益最大の投資配分点があるかが簡単な計算で判定できる場合はたいへん好運である。今回の場合は、どの従属変数に着目して2階偏微分をしても連続であって且つマイナスになるという特性があった。また、1階偏微分は、連続で減少する。目的変数はすべての従属変数に対して凸という特異的な性質をもっていた。その性質を利用すれば、たとえばそれぞれの立体の中央部の目的変数(利益)を求めてその値の高いほうを選べば目的変数の最大値は選ばれた立体の中にあることが証明できる。選ばれた立体を次には別の軸の中間の値で2つに分割してどちらに最大値が含まれているかを判定する。そのような操作をすべての軸について2分割にし終えたら最初の軸に戻って直前に選択されている小さな立体をさらに2分割すればよい。この操作を繰り返してゆくと、最大値を含むごく小さな立方体が求められてゆくことになる。2分割した小さな2つの立方体の中央の目的変数の差が誤差程度になったら計算を打ち切ればよい。たまたま幸運な数式だったのである。実験してみると初期値にもよるが、250~300回程度で収束している。時間にして1分未満である。
やった! 気分爽快、ルンルン気分で、証券会社まで出向いて、成果を示してご担当者に説明する。しかし。彼は一貫して不機嫌だった。成果を出すということと、顧客を喜ばせるというのは違うことだというのは頭でわかっていても、なかなか実行は難しい。顧客の求める成果を予想以上にあげているのに担当者が不機嫌というのはやりきれない。彼は、まだ「メッシュ法じゃだめなのか。メッシュ法って知っているよね」などと見当違いなことを声高に言い立てる。辛抱強く、メッシュ法の限界を説明するが、東大工学部の修士様は信じないという顔をする。挙句の果てに「あんたはどの大学出なんだよ」という。学部は違いますが同じ大学ですと答える。「理学部なんて、実務のこと何んかわかんないんじゃないの」とまだ彼は抵抗する。内心、あ~ぁ、やってられんなと思う。知性よりもプライドが優っている人とはこういう人なのだろう。私は「それでは、このプログラムをお預けしますから、どなたかに調べてもらってください」と言って、帰ってきた。1週間たっても10日たっても音沙汰はない。
間に立って紹介してくれたこの証券会社の人事部の友人に電話をしてどうなっているのか、と尋ねると、電話を切ってしばらくして折り返し電話をかけてきた。「もうそのプログラムは使っているってよ。君んところへの支払はどうなっている?」と心配してくれる。「いや、まだ契約も済んでいないんだ」と私。「彼は取引先とよくトラブルがあってね。ちょっと待っててくれ。支払をするように手配するから」と友人。
3日ほどすると、女性のオペレータという方から、入力の部分の改良を求める電話があったので、「いや、お支払もいただいていないので、その件はなかったことにさせてほしい」と私が言うと、慌てふためいて「じゃ誰に頼めばいいんですか」と半泣きの声。人事部の友人の名前をあげて、相談してほしいと私は頼んだ。月末、数百万のお金が振り込まれた。すぐに女性のオペレータの方から、支払いがされたはずなので、すぐに来てくださいというのである。その時の電話では、このプログラムのおかげで毎日約5億円程度の利益が上がっているということだった。
のこのこと出かけてゆくと、契約書が用意されていて、バックデイトで契約したいということだった。数百万円が大きいのか小さいのか、証券会社の取り扱う金額の大きさに圧倒されてよくわからなかったが、とてもうれしかったことは事実である。一も二もなく署名捺印した。
このプログラムを私から受け取った翌年には初めの担当者が退職していた。その後7年ほどこのプログラムは使用された。次第に、市場のフレームワークが変化して、銘柄の選択や係数が合わなくなってきただけではなく、背後にある取引に参加する人々の行動も変化してきた。このプログラムで期待できる利益幅が次第に小さくなりついに利用をやめた、と後で聞かされた。それにしてもこのプログラムでこの証券会社はいくら稼いだのだろうか。2005年、この巨大な証券会社は違法な取引が監督官庁から摘発されて事業廃止になり外資に買収されたことで、世間をひどく驚愕させた。
一人ひとりの問題というよりも、輝かしてい歴史と名声の影で組織をむしばみ続けたある種の「おごり」だったのか、と考えさせられたものである。

△次の記事: アルゴリズム戦記(22)
(準備中)
▽前の記事: アルゴリズム戦記(20)
http://shyosei.cocolog-nifty.com/shyoseilog/2008/03/mmlmml420_9517.html

琵琶


(補1)「鐘の声 ブログ」はリンクフリーです。ただし、「鐘の声 ブログ」の記事の一部または全部を引用または翻案して、公的に発言または発表される場合は、事前にメール等でお知らせください。[→連絡先]
(補2)ブログ「鐘の声」には、10個ほどのシリーズとシリーズ以外の一般記事があります。シリーズの全体構成やシリーズ別の記事一覧は下記(別サイト)にあります。
  ☆「鐘の声」の全体構成(「鐘の声 ブログ」記事マップ)☆ (GO!)
  ・独創力の創り方シリーズ
  ・心理、教育、社会性の発達シリーズ
  ・社長の条件シリーズ
  ・アルゴリズム戦記シリーズ
  ・情報デザイン研究ノートシリーズ
  ・「情報社会学、予見と戦略」シリーズ
  ・感性的研究生活シリーズ
  ・街に活力をシリーズ
  ・交友の記録シリーズ
  ・オヤジと家族のお料理ライフシリーズ
  ・我が家の愛犬様シリーズ
  ・妻が、車に撥ねられるシリーズ
  ・その他、シリーズ外

|
|

« アスペルガー、ご本人のブログなど--心理、教育、社会性の発達(68) | トップページ | 今度は「通報受けるも出動せず」、妻も怒る--妻が、車に撥ねられる(22) »

「日記・コラム・つぶやき」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/73834/42238629

この記事へのトラックバック一覧です: 一日で数億円を稼ぐ株取り引きシステム--アルゴリズム戦記(21):

« アスペルガー、ご本人のブログなど--心理、教育、社会性の発達(68) | トップページ | 今度は「通報受けるも出動せず」、妻も怒る--妻が、車に撥ねられる(22) »