株てくおーとトレード日記

完全自動売買システムによるトレード日記。

株てくげっとの株価取得&更新時間

2009-05-23 09:54:54 | 株てくげっと

私の環境で、株価取得&更新に必要な時間を計測しました。

(1)テスト環境

 ・Windows Edition:Windows Vista Ultimate Service Pack 1
 ・プロセッサ:インテル Core 2 Quad Q9450 2.66 GHz
 ・メモリ:4GB
 ・インターネット回線:フレッツ光(100Mbps)
 ・マルチスレッド数:6

(2)取得&更新時間

 ・ヤフー時系列株価(5日分)&時系列信用残(1週分)取得

   5分

 ・インフォシーク時系列株価(5日分)&時系列信用残(1週分)取得

   6分

 ・銘柄情報取得

   5分

 ・ヤフー決算情報取得

   30分

 ・インフォシーク決算情報取得

   2分

  注)単独決算、連結決算、中間決算が同一ページで取得可能なため、ヤフー決算情報取得より取得時間が短い。

 ・ヤフー日々株価取得

   20秒

  注)50銘柄を同一ページで取得可能なため、インフォシーク日々株価取得より取得時間が短い。

 ・インフォシーク日々株価取得

   9分

 ・分割情報報取得

   10秒


株てくげっとで株価取得時間短縮

2009-05-18 07:35:32 | 株てくげっと

 株てくてくの株価取得部分を分離した株てくげっとがほぼ完成しました。
 株てくげっとバージョン1.1.0でマルチスレッド化も行い株価取得時間が大幅に短縮しました。

 私の環境では以下のように株価取得時間が短縮されました。

 株てくてくで株価取得した場合
 ・ヤフー日々株価取得:5分
 ・ヤフー時系列株価(5日分)&信用残(1週分):37分

 株てくげっとで株価取得した場合
 ・ヤフー日々株価取得:20秒
 ・ヤフー時系列株価(5日分)&信用残(1週分):5分

 マルチスレッド化してスピードアップするのは以下の処理です。

 ・ヤフー時系列株価取得
 ・ヤフー時系列信用残取得
 ・インフォシーク時系列株価取得
 ・インフォシーク時系列信用残取得
 ・銘柄情報取得
 ・ヤフー決算情報取得
 ・インフォシーク決算情報取得
 ・ヤフー日々株価取得
 ・インフォシーク日々株価取得

 注)同時最大接続数は6に設定しています。(マルチスレッドの最大数が6)

  マルチスレッドの数は50でも100でも可能なように作成していますが、以下の理由で制限しています。

  HTTP/1.1の仕様では、「1つのサーバに対する同時接続数は2以下にすべき」とされています。
  しかし、Internet Explorer 8 で1 サーバーに対するブロードバンドでの最大同時接続数が 1 ホスト プロセスあたり6が標準のため、株てくげっとも同時最大接続数を6にしました。

  株てくげっとの場合は、持続性のある接続ではないので7以上でも問題ないと思いますが、6に制限しました。

  マルチスレッドの最大数を100にして株価取得してみましたが、使用中のスレッド数はインフォシークでは最大10、ヤフーで23ぐらいまでしか使用されていませんでした。
  (同時実行の数がサーバにより制限されている?)


株てくてくの株価取得処理変更

2009-05-06 12:20:22 | 株てくてく

 株てくてくの株価取得部分を分離し、VB.NETで作り直しをしています。

 Webアクセスの部分をWebRequestクラスとWebResponseクラスを利用するようにしています。

 今はマルチスレッドにはしていませんが、いずれはマルチスレッド化して株価取得のスピードアップを図りたいと思っています。