SSLと株

投稿日:

 もう10年以上くらいにもなるだろうか、株式売買の指標表示を自動化し、「小魚を釣る」ようにして株を売買している。ところが、先週頃から、その自動化システムが動かなくなってしまった。

 私の株式売買は、夜に自作の株式売買シミュレータを作動させ、そのシミュレーション結果に従って手動で翌日の注文を出すという方法だ。注文そのものの自動化もやればできるだろうが、証券会社がAPIを公開してでもくれない限り、多少技術的な敷居が高いので、そこまではしていない。

 株式売買にはいろいろな指標があるが、その指標を使うのに必要な日数などのパラメータは、銘柄ごとに違う。また、指標ごとにも違うので、色々な組み合わせが出てくる。サラリーマンの場合、何十もの銘柄について、銘柄ごとに手作業でそんな組み合わせ作業を毎日している時間など、あるはずがない。

 そこで、色々なパラメータを組み合わせて、過去のデータを使って売買のシミュレーションを行うのだ。トレーディング用語では「バックテスト」と言う。私のシミュレータでは、現在は1銘柄につき約1万通り程度の組み合わせで売買を試す。

 そのシミュレーション結果で、「90%~100%成功するパラメータの組み合わせ」を抽出して表示するのである。実際のところ、そのパラメータの組み合わせで売買サインが出た時に売買すれば、まず9割は儲かる。1割の確率で損をするのだが、これは10銘柄を束にして注文しておけば、「1銘柄はハズレでも、残り9銘柄は当たり」になる。つまり、期待値として「9割は儲かる」理屈になるわけである。

 だが、私が最も工夫した点は実はそこではない。

 私は勤めており、職務に専念する義務がある。これはサラリーマンなら誰でも同じだと思う。仕事中に株式の売買などすれば、免職になってしまう。そこで、このシミュレーションは、売買サインをリアルタイムの株価で出すのではなく、「前日までの株価でシミュレーションし、翌日約定の注文を出した場合で最適なパラメータの組み合わせ」をシミュレーションにより求める。こうすることで、「前日の夜から当日の朝にかけて、自宅で注文しておく」ことができる。つまり、「サラリーマンが職務外の余暇に自宅で自分の金融資産の管理をしているだけ」という形を整えることができるのだ。

 多くのサラリーマンは株で損をするが、それは、株式の必勝本などには、「今の株価」で売買しなければならないような方法しか書かれていないからだ。これだと、例えば、ある日の経済ニュースなどでその日の株価について知り、夜帰宅して、翌日の注文などを出しても、もう手遅れなのだ。だが、私のシミュレータは翌日の注文で十分なように計算するので、サラリーマン向けなのだ。

 シミュレーションに必要な日々の時系列データは、「Yahoo!ファイナンス」から無料で拝借してくる仕組みである。夜にその日の終値が確定した頃、自動的に株価をダウンロードしてくる。無料で済ませるため、生のhtmlを持ってきて株価データをその中から切り取り、データベースに格納する仕組みだ。

 システムはLinux上で動作する3層クライアントサーバシステムである。ユーザインターフェイスはphpで書かれており、Webサービスだ。株価データは、Perlで書かれたスクリプトを定期起動して、前述のようにしてネットから無料で持って来る。データベースはPostgreSQLを使用している。シミュレーションは高速化を図るためCで書いてある。

 ここ数年、何ら不調なく快調に作動していた。ところが、先週から急に動かなくなってしまった。

 短期の株式売買は毎日の値動きに注意していなければならない。私はこの値段の監視を自動化していたわけだ。ところがこれが動かなくなるとお手上げだ。自分で毎日株価を見なければならなくなってしまう。私もそれなりに忙しいので、何十銘柄もの株価チェックを自分でするなんて馬鹿々々しいことは御免である。

 早く原因を調べなければならなかったが、春の人事異動で職場が変わったりして、手が付けられないでいた。ようやく、今日になって原因を調べることができた。

 調べてみると、どうやら、株価データの拝借先である「Yahoo!ファイナンス」の仕様が変わったようだ。これまで非SSLでもサービスしていたのだが、先週頃完全にSSLに改まったらしい。他方、私の「株価データ拝借スクリプト」はPerlで書いてあり、内部で「wget」を呼び出し、これを用いて「時系列株価ページ」を持って来て、その中からデータを切り出す仕組みなのだが、ハードコーディングしてあるURLのスキームは「http」なのである。

 なるほどよしきた、とばかり、これを「https」に変えて試したが、wgetはブラウザのように簡単にはSSL証明書を扱うことができない。

 ググッてみると、「そういう時にはwgetのオプションに『––no-check-certificate』って書いとけ!」と、どなたかが既に調べて書いておられる。ありがたや。

 そこで、作動させるwgetのコマンドラインは次のようになるわけだ。

$ wget --no-check-certificate -q -O - https://info.finance.yahoo.co.jp/history/?sy=1983&sm=1&sd=1&tm=d&code=銘柄コード&p=1 | nkf -w 

 URLのスキーム部分を「https」にし、「––no-check-certificate」にするだけである。

 株価時系列データのページの作りが変わってしまっているとこれだけでは駄目なのだが、どうやらページの作りは同じらしく、今のところうまく行っているようだ。

時事無責任寸感幾つか

投稿日:
共産党藤野政策委員長党職辞任の一件

 共産党の代議士、標記藤野何某(なにがし)。「人を殺すための予算ではなくて、人を支えて、育てる予算を優先していく」とした発言を取り上げられ、ついに党職を辞任させられた。

 左翼主義者の肩など持ちたくないが、しかし、これは少し気の毒ではなかろうか。揚げ足取りというものだ。

 私は、「防衛費は、究極、人を殺す予算だ。で?それで何が悪いの?」と思っている。人殺しと言われた程度のことで傷つくような自衛官は修行が足りない。防衛大や新隊員教育隊に入りなおして駆け足でもしてこい。

 こんなのは、ものの言い方、気分の話だ。「何を言う、人を守る予算だ」というのは微細な話で、何によって人を守るのかと言うと、敵を殺すことで人を守るのだ。

 以前、民主党(当時)の菅氏が「暴力装置」と言ってブッ叩かれたが、これも左翼が良く使う術語で、そんな目くじら立てるようなことではなかった。菅氏には天与のインテリジェンスが災いした “時事無責任寸感幾つか” の続きを読む

SMビッグデータ

投稿日:

 子供の頃から鼻が弱い。

 ダニがアレルゲンのアレルギー性鼻炎だ。鼻に弱点を持つから、風邪をひくにしてもまず鼻からだし、副鼻腔炎や鼻中隔側弯もある。私は割合に鼻が高い部類の面相なので、鼻中隔側弯だと言うと「ウソでしょう」と言われるのだが、片鼻は常時つまっている。激しい運動をすると、血管運動性の鼻炎になってますます鼻水とくしゃみが止まらない。私が勉強や球技が苦手なのは、この鼻のせいであると言い訳している。

 秋の暮れ、冬の初め辺りには衣類の出し入れがあるが、これがダニを巻き出し、強烈に来る。電車に乗ると、更衣(ころもがえ)した人の上着にたっぷりダニがついていて、もう、鼻水とくしゃみが止まらない。

 それゆえ、鼻洗浄は欠かせず、毎朝顔を洗うときは鼻からズズズーッ!と水を吸い込み、これをぶはぁーっ、と吐き出すことを繰り返す。

 症状がひどいときには、衛生器具の「ゴムシリンジ」を使って鼻を洗う。ゴムシリンジというのはこういうもので……

L_00618501

……これは、一般には「エネマシリンジ」と呼ばれる。エネマ、というのは言わずと知れた「浣腸」のことである。

 このゴムシリンジが古くなってしまい、ゴムが脆化してボロボロになり、使えなくなってしまった。大きな薬局に行くと売っているのだが、近くの薬局にはどうも置いていない。

 それで、Amazonでポチッた。明日には届くだろう。

 だが、Amazonで買うと、なんとも迷惑と言うか、購入データが「ビッグデータ」のカオスに混ぜ込まれ、分析にかけられてしまうのである。

 このゴムシリンジは浣腸器具なので、SM関係のリコメンド広告、薔薇系漫画やマゾヒズム小説などが推進されてくるようになってしまうのであった。

 まったく、ビッグデータはけっこうだが、俺はSMとちゃうッちゅーねんっ!!(笑)