メインとしているオリジナルEAの運用にはパラメーターの開発が必要不可欠な作業です。毎日、欠かさずにバックテストで最適化を走らせていますが、幾らPCのスペックがあっても満足することは無いでしょう。(苦笑)
MT4のバックテストは色々とコツがあるので、よく知られていることもあれば、大量のバックテストから見えてくる傾向などもあったりします。その中でも、少しでもバックテストの速度を上げる為に行う努力は大切になります。
CPUの演算能力が一番、大切なのは事実ですが、搭載メモリーの量も大切、さらに大切なポイントがストレージの転送速度です。信頼性の高いEvery tickモードでバックテストする場合、ヒストリカルデータの10倍以上のキャッシュファイルが生成される事も多々あります。このファイルはMT4のインストールフォルダにある\tester\historyへ生成され、.fxtと拡張子が付きます。
このfxtファイルは長期のバックテストを行う場合、数GB以上にもなる事も珍しくありません。巨大な仮想ティックのキャッシュファイルを読み書きするので、HDDだと遅くてストレスになりますし、せっかく強い演算能力のあるCPUや沢山のメモリを積んでも、ストレージからのデータ転送がボトルネックになることがあります。
私自身、SSDが普及するまでの間はメモリーをより多く積んでRAMディスクを生成してMT4をこのディスクに入れてバックテストを進めていました。そんな苦労もSSDの普及、特にハイエンドなM.2の読み書き速度はRAMディスクに迫るスペックがあるので、メモリーでRAMディスクを作るよりもコスパがとても良くなりました。
ですが…DIMMのような揮発性メモリと異なり、SSDには寿命がある点が問題になりそうです。SSDの寿命は使用した時間と書き込みを行った総量、TBWと呼ばれる数値で判断されます。ここで疑問になるのは、読み込みについては耐久性に上限は無いのだろうか?と考えられる点です。
実際に私自身はサンディスク製120GBのSSDでメーカーの表示しているTBWは40TBW位だったと思います。このディスクを使ってバックテストを進めていた結果、書き込み量は1TBにも届かないのに対し、読み込みは130TB位まで行われ、その時点でディスクがエラーを起こして使えなくなった経験があります。
書き込み総量であるTBWは1にも満たないのに、故障してしまったわけですから、納得いかないなぁ…と思っていました。たまたま、製造ロットの当たりはずれの原因と考えられないこともありませんが。(汗)
今現在に利用しているバックテスト専用SSDの情報をキャプチャーしてみました。信頼のインテル製で耐久は良いのではないかと期待しています。
見て頂ければわかりますが、書き込みは342GBに対して読み込みは170,102GBも利用しています。MT4は極端にストレージの読み込みを行うことがよくわかると思われます。
このSSDはインテルが公開しているTBWは144TBWです。すでに読み込み量は超えていますが、書き込みではないので大丈夫…のはずでエラーやブルースクリーンなどの発生は見られません。
それでも心配だなぁ…と懸念は払拭できなかったので、ネットで多くの情報を集めましたが、読み込み量による耐久性について、書かれたページは皆無でした。(悲)仕方ないので、インテルのサポートへ「SSDの読み込み量は耐久性に影響がありますか?」と問い合わせる事となりました。
結果を申し上げますと、「読み込み量によってSSDは消耗する事はなく、耐久性に影響はありません」と明確な答えを頂けました。
ならば、なぜサンディスクのSSDは故障したのだろう…と疑問は残りますが、読み込みによる劣化が無いならば、MT4のバックテスト用にはSSDは理想的なストレージです。
サンディスクのSSDは読み込み量がTBWの3倍くらいで故障しましたので、信頼には定評のあるインテルのSSDはどのくらいまだ耐えてくれるのか、また故障する事になったら報告しようと思います。