パンローリング社の「チャートギャラリー」というチャートソフトは、
チャート機能よりも、大量の株価情報を管理するデータベースとして利用価値がある。
その機能「Pan Active Market Database」は、32ビット環境しか動作しない等、
やや陳腐化しているものの、約30年分のデータを外部プログラム、EXCEL、ACCESS等から自由自在に扱えて、しかも毎日、最新データを簡単に更新できるので、必需品である。
株価の更新は、毎晩7時頃に、[Panメニュー] から [Panデータ管理]ボタンを押して、
[データ管理] – [取り込み] – [Pan Rolling] という順番でメニュー選択が必要なので、意外と面倒くさい。
最初のうちはこれをいちいち、手でやっていた。
でも、トレード分析ツールを自作し始めてからは、だんだん面倒になってきた。
この作業を毎晩7時に、自動的に実行して最新データを更新してくれると便利だなぁ、と私なら当然考える。
チャート機能を使うだけの人は、手動更新でも十分かもしれないけれども、
「Pan Active Market Database」の株価データを二次加工して使用する場合は、
自動更新できるようにシステム化しておかないと、更新を忘れることも出てくる。
さて私は、ボタン押しを自動化するのに便利なツールとして、
uwsc というWindows操作の自動化ツール を使っている。
インストールの必要はなく、zipファイルを展開するだけですぐに使用できる。
展開したフォルダ内に1つ、拡張子 .uws のテキストファイルを1つ作成し、
そこにスクリプトを描き込むだけで、Windows操作が自動化できる。
// Pan強制終了 ※念のため EXEC("taskkill /IM pandtmgr.exe") // 5秒待つ SLEEP(5) // Pan起動 // PanID = EXEC("C:\Program Files (x86)\Pan\pandtmgr.exe") PanID = EXEC("C:\Program Files\Pan\pandtmgr.exe") // Pan操作 CLKITEM(PanID, "Pan取り込み", CLK_ACC) // 更新が終了するまで監視 REPEAT SLEEP(5) PanID2 = GetID("データ更新") CLKITEM(PanID2, "閉じる", CLK_ACC) UNTIL GetID("データ更新") = -1 // Pan終了 PanID3 = GetID("Panデータ管理") KBD(VK_ALT, DOWN) KBD(VK_F4 , CLICK) KBD(VK_ALT, UP)
そして、Windows標準のタスクスケジューラー機能を使って定時起動させれば、
この株価自動更新は、実現化する。
ちなみに私は、「チャートギャラリー」のプロ版を使用していて、日本株、日経先物、米国株を使用している。
米国株は毎日15時頃に前日分が更新され、日本株は毎日19時頃に当日分が更新される。
ごくまれに、更新時間が30分以上遅れる日もあるのを考慮して、
毎日、15時から20時までを、1時間毎に自動更新するように設定している。
土曜日に更新するのは、前日の米国株データを反映させるため、である。
株価データの更新後に、ウィンドウが閉じずに残ってしまう場合があるので、
定時起動スクリプトの最初に、強制終了を入れている。
ともかくこんな方法で、どうにか自動更新は、実現できている。