ActivePerl5.8系でGDを使う

今日は、詳細は後で書くが、デイトレのシミュレーションを繰り返し作業をしている。
最初は単発のシミュレーションで時間がかからないが、
終盤にさしかかってくると、どうしても多くの計算が必要になって時間がかかる。
今まではMacで作業をして、たまにNetBSDなホームサーバに作業をさせていたが、
ホームサーバは決して速度が速いわけではないので、我が家の最速マシンのWindows機で
テストする必要が出てきた。(Pen4-1.6GHzを2.1GHzで稼動中(^^;)
今まで使わなかった理由は、ActivePerlの5.8系はppmのモジュールが貧弱で、
結構、必須なモジュールが対応できていない。
GDもその一つで、今回のシミュレーション結果をグラフで表示させるのに使っている。
実はそのモジュールがいままで使えなかったので、テストを任せられなかったのだ。
今回はさすがに必要性を感じたので、WEBでしらべてみた。
http://cpan.uwinnipeg.ca/dist
ここでppmに正式対応していないモジュールの多くが手に入る。
早速、ppmでInstallしてみると、あっというまにインストールされた。
いままでは、無理やりCPANでインストールしようとしたりしていたが、
これからはここでいただくことにしようと思う。

日足取得等サポート用システムの検討

最近、日足データを収集している。
40銘柄ほどのデータを日足で取得しているが、
取得している時のCPU使用率が70%くらいの負荷がかかっている。
Macで株取引だから、当然にMacで取引をしたいのであるが、
実際の発注システムなどを動かすことを考えると、日足データだけの取得だけで、
CPU70%は喰いすぎである・・。
そんなわけでいざと言うときのために、サポート用のシステムが欲しいのあるが、
当然にそんな予算もなく、昼間使わない、私の仕事用PCと子供用PCが候補となる。
ただ、UNIXなシステムにしてしまうと、日頃の使用に支障がでてしまうため、
ネットブートできるようにしておき、朝出勤前に電源をいれておくと、
収集関係を代行してくれるようにしたい。
と、いうことで、この土日に環境を整備すべく、作業を行った。
今日はその作業を書き込みたい。

JDBCのお勉強

JavaでのDBアクセスは、JDBCがお約束であり、今回もそれを利用する。
以前から、データ取得などでは、PerlからDBIをつかっていたので、
たぶん、おなじような感じでしょう。
早速、MySQLのHPにおじゃまして、JDBC3.1をいただく。
プロジェクトにjarを追加して、適当なHPで操作手順を参考にさせていただく。
うごかん・・・
プロジェクトの見直しなどするが、なかなか原因がわからない。
結局、MySQL本家のHPのドキュメントを読む(始めからそうしとけばいいんですが)。
あっけなく、解決。
Class.forNameで記述する文言が違いました(;;)
com.mysql.jdbc.Driver
です。
一度、接続してしまうと、あとは、PerlのDBIより、簡単に取得ができました。
これで、Javaで分析ができます。
先日からいろいろと考えているのですが、このシステムは自分で勝手に使うシステムなので、
別にGUIにこだわらなくてもいいような気がしてきました。
GUIに時間かけるくらいなら、CUIでシミュレーションの精度をあげて、自動売買を進めて
いくほうが先決ですから。
そんなわけで、GUIは後回しで、画面には、ボタンと状況を表示するコンソール画面で、
当面は作業をしようと思います。

Perlの開発環境

Perlの開発環境を考える。

AppleのXcodeでは、Perlを扱えない(と思う)ので、別の環境でつくらなくてはならない。
前から一度使ってみたかった、Eclipseをつかってみよう。

Eclipseには、EPICというアドインがあって、Perlを快適に使えるようだ。
早速HPで調べてインストールしてみる。(私はあまり本を買わない(^^;)
(実際は結構右往左往してます(^^;)

無料でこの開発環境!!すごいです。
今までシェル上のviでPerlを書いていたのとは、だいぶ違いますね。
まー私が素人なんで、環境が変わったからと言って、開発速度が大幅に上がることはないですけど。

Macの環境を整える

現在のMacの環境を整えることにする。
今の環境はスペック的にはチープな感じであるが、
OSはMacOSX Tigerで、安定性は十分。
環境がチープであれば、それに合わせた環境を構築すれば良いだけである。
ちなみに、このマシンは私のメイン機でもあるので、昼間はフルで作業してもらってもいいが、
夜は私の作業の邪魔になってもらっては困る。(^^;
とりあえず、最低限必要な
MySQLをインストールする。
新しいことはいいことだと思うので、5.0.18をインストしてみる。
起動などの管理に、純正(?)の、
MySQL Administrator と MySQL Query Browser
を、使ってみるが、なんでか、落ちる・・(–;
Windowsで使ったときは快適だったんですけどね。
UNIX的な使い方をするので、MySQL管理用に、
Webminをインストールする。
やはり定番ツールだけあって、使いやすい。
今後、自動起動などのプログラムも増えるので、これで登録すればよいので助かる。
UNIXのシェルでは、viを使っているが、やはり、最近はなまぐさGUIになれてしまい、
コマンドを忘れてしまうので助かる。

自動運転にはsubmit

日足データの取得ができれば、
その応用で、銘柄の個別情報、会社名、上場市場、売買単位、純資産、配当なんかの情報を
取得することは、難しくない見込み。
見栄えの問題や、チャートの表示(ローソク足、出来高、移動平均線とか)も、力業と微調整で
時間さえかければ、なんとかなる。
あと、買いタイミングや売りタイミングで、注文を発注するシステムで必要な、submitを考える。
証券会社のHPにアクセス、IDとパスワードを入力し、submit(ボタンを押す)。
注文条件などを設定して、submitする。
よく考えると、webkitって、表示関係や解析関係は充実しているけど、
プログラムからのアクションってできるんだろうか・・・。
サーーーーー(血の気が引く)

Xcodeにしとこ

いろいろとHPを調べてみる。
AppleのHPとか、みてみると、
「Xcode」ってのが、かっちょいい開発環境のようだ。
早速、Amazonでこの本をGetしてみる。
結構、わかりやすく説明されている。
昔、System7の頃にプログラムをしていたけど、だいぶ違いますな・・・。
Apple純正の開発ツールだけど、非常に良くできているよう。
こんな開発環境を無償で提供してくれるAppleってば、ほんとに太っ腹です。
Interface Builder で、ボタンなどの配置をして、
Xcode でコーディング、デバッグまでできる。
これで、しばらく開発していこうかな。