岡三RSSのフリーズ対策

以前の記事で2017年11月9日の急落時に岡三RSSがフリーズしたことを紹介した。
(こちらの記事、『フェールセーフという考え方』)
このとき、「岡三RSSのフリーズは滅多におきることではない」と書いたが、ここ数日の乱高下相場で頻繁にフリーズしている。
2018年2月5日のナイトセッション(アメリカで歴史的暴落を記録した日)から始まり、2月7日の日中まで、毎セッションフリーズしている。
ちょっと多すぎる。
年に1度程度なら無視できるレベルとしても、こう何日も続発すると何らかの対策を入れなければならない。

フリーズ時の例を示す。

下図は、データ収集ツールが吐き出したエラーログ。
2018年2月6日のナイトセッションの状況。

マーキングした箇所は、ミニの歩値が1000件以上抜け落ちている箇所。
(右端の数字が抜け落ちた件数。通常、欠落は数件程度)
最も多いときで、30,378件抜け落ちていることが確認できる。
これだけ抜け落ちると、自動売買では使い物にならない。
(なお、歩値の飛び番問題は『岡三RSSを使う際の注意事項~まとめ~』で紹介した。)

対策として、

  • 歩値の欠落がしきい値を超えると新規エントリーをしない

といったことが考えられる。
しかし、今回は、フリーズを直ぐに復旧させる、あるいは事前回避する方向で検討してみた。

2月6日の日中、それと、2月7日の日中において岡三RSSのフリーズが目の前で発生したので、いろいろ試してみた。
結果、分かったことは、

  • Excelを再起動させずとも、岡三RSS(アドイン)を再起動すれば、復旧する
  • フリーズし始めたときの岡三RSSのメモリ使用量は900MB~1GBだった

2017年11月9日の急落時に岡三RSSがフリーズしたとき、メモリ使用量が1GBを超えていたことを書いたが、
2月6日の日中も気が付いたときにはフリーズしており、メモリ使用量が1GBを超えていた。
そして、2月7日の15時過ぎ、たまたまフリーズした瞬間を見ていた。
このときの岡三RSSのメモリ使用量が900MB~1GBの間だった。
タスクマネージャーで確認した。
下図はタスクマネージャーの表示例。(フリーズしたときのものではない)

ただ、この結果はあくまでも私のPC環境での結果であり、しかもこれは、開発用マシンでの結果。
Excelファイルの内容などにより、フリーズするポイントが違うかもしれない。
ちなみに、本番用マシンは2月5日のナイトセッションの大暴落の数時間前、CPUファンが異音を発し、逝ってしまった。
夜中に騒音でたたき起こされた・・・
2016年の夏にもCPUファンが故障したが、わずか1年半ほどで、また故障した。
やはり、ウルトラブックの24時間稼働は無茶かな・・・
ただいま部品取り寄せ中。
なお、使用しているマシンの詳細についてはこちらの記事に記載、『トレードシステムの開発環境、運用環境』。

で、今回導入した岡三RSSのフリーズ対策は次の2点

  • 岡三RSSのメモリ使用量を定期的に監視し、しきい値を超えれば岡三RSSを再起動する
  • 歩値の欠落がしきい値を超えれば岡三RSSを再起動する

ヘルシーチェック』で紹介したように、場中に岡三RSSを再起動するプログラムは既にある。
このときは、「ログアウト状態」と判断すれば再起動するものだった。
このプログラムを流用すれば良いので技術的な難しさは無い。
メモリ使用量の定期チェックは5分毎とした。
ただ、プログラムでメモリ使用量を取得した場合、タスクマネージャーで表示している値と異なり、50~100MB程度大きな数字となっている。
この差異を余裕代とし、メモリ使用量のしきい値を900MBとした。
(タスクマネージャーの表示では800MB程度で再起動する)
歩値の欠落本数のしきい値は1000件としたが、もう少し小さい方が良いかも知れない。
様子を見ながら調整する。

早速、昨夜(2月7日のナイトセッション)から対策プログラムを導入した。
結果、日付が変わった2月8日の1時13分にメモリ使用量が900MBを超え、岡三RSSを再起動していた。
下図が、データ収集ツールが吐き出したイベントログとエラーログ。

さて、岡三RSSを再起動した効果があったのかどうか?
再起動しなかった場合との比較ができないため、判断が難しい。
ただ、再起動直後から飛び番が頻発しているので、再起動が何らかの悪影響を及ぼしているようだ。
数件程度の飛び番なので大したことはないが。
一方、再起動せずに放置しておくと、フリーズしていたかも知れない。
判断が悩ましいところだ。

<広告>

TOP