【開発録】バックテストを検証せず実行するとどうなるか — 見えないコストの正体
1.検証とはバックテストの実行にとどまらない
EAの導入にあたり、多くの利用者が行うのはストラテジーテスターを実行し、プロフィットファクタや勝率を確認するところまでである。良好な数値が得られれば、そのまま実運用に移行するケースが一般的である。
しかし、本来の検証とはより広い範囲を含む作業である。各パラメータが何を意味するか、どのような前提条件のもとでその数値が導出されているか、その前提が自身の取引環境でも成立するかを確認して、初めて検証が完了したといえる。数値のみを確認して終える利用者は少なくないが、これは検証工程の一部にすぎない。
2.見えないコスト(1):パラメータの誤解
典型例として、損切り幅(StopLoss)の初期値をそのまま使用するケースが挙げられる。ブローカーによって通貨ペアの表示桁数(4桁/5桁)が異なるため、同一の数値「300」であっても、ある口座では30pip、別の口座では3pipを意味することがある。桁数の確認を怠ったまま初期値を使用すると、想定の10倍のリスクを負っていたという事態が生じ得る。
ロット数の入力についても同様の問題が存在する。「0.1」と入力したつもりでも、口座の最小ロット単位や証拠金計算の仕様によって、想定を大きく上回るポジションサイズとなる事例も確認されている。
3.見えないコスト(2):検証環境と実運用環境の乖離
バックテストの多くは、理想的な執行条件を前提として実行される。スプレッドが固定され、約定遅延が存在しない設定になっている場合もある。一方、実際のブローカーにおいては、時間帯によってスプレッドが拡大し、約定に一定の遅延が生じることが通常である。
この差異を確認しないまま実運用に移行した場合、バックテスト上では利益であったはずの取引が、手数料やスプレッドの差によって実質的に損失に転じる事例が積み重なる。1回あたりの差は僅少であっても、年間数百回規模のトレードが積み重なれば、想定していた期待値を徐々に侵食する要因となる。
4.見えないコスト(3):想定外の挙動への対応コスト
パラメータの意味を理解しないまま運用を開始した場合、相場が想定外の動きを示した際に、それが正常な挙動であるのか、異常な挙動であるのかを判断する基準を持たない。
ロジックの内容を理解していれば許容範囲内の含み損と判断できる局面であっても、理解が不足している場合には、本来操作すべきでないタイミングでEAを停止したり、手動で決済したりする判断に至りやすい。これはロジック自体の成績とは独立した、運用者の判断に起因する損失であり、広義の「見えないコスト」に含まれる。
なお、こうした見えないコストは、ロジックそのものの優劣とは別の軸で発生する点に留意すべきである。いかに優れたロジックであっても、運用者がパラメータの意味を理解していなければ、本来の性能を発揮させることはできない。逆に、比較的単純な構造のロジックであっても、内容を十分に理解したうえで運用すれば、バックテストに近い成績を実運用でも再現しやすくなる。ロジックを選定する能力と同等に、ロジックを理解したうえで運用する姿勢が求められる。
5.検証を省略した場合の事例
ある利用者がEAを導入し、バックテストの数値のみを確認したうえで即座に実運用を開始した事例を想定する。パラメータの単位や自己の口座仕様については一切確認を行わなかった。
結果として、表示桁数の相違により想定の数倍のロットでエントリーが発生し、数週間のうちに年間で許容していた損失額を上回る含み損を抱えるに至った。ロジック自体には問題がなかったにもかかわらず、パラメータの誤解のみによって、本来回避し得た損失を被った事例である。
6.最低限確認すべき項目
実務上、以下の項目については最低限の確認を行うことが推奨される。第一に、各パラメータの単位と意味を、マニュアルまたはソースコードを通じて確認すること。第二に、自己の口座における表示桁数(4桁/5桁)とロット計算の仕様を確認すること。第三に、バックテストの前提条件(スプレッド、約定モデル)が自己の取引環境とどの程度乖離しているかを把握すること。第四に、小ロットまたはデモ口座において想定通りの挙動が再現されるかを確認したうえで、本番運用へ移行することである。
いずれも地味な作業ではあるが、この工程を省略するか否かによって、同一のロジックであっても実際の成績には大きな差が生じる。
検証を省略する判断は、一見すると時間の節約のように見える。しかし実際には、後に負担する代償の方が大きいケースが大半である。導入初期の数十分の確認作業を省いた結果、数週間にわたる含み損への対応を迫られることになる。これが検証省略における最も看過しがたい問題点である。
また、こうした検証不足は単体のEAに限った問題ではない。複数のEAを組み合わせて運用する場合、個々のEAのパラメータ誤解が積み重なることで、ポートフォリオ全体のリスク量が想定を大きく上回る結果につながることもある。組み合わせ運用を行う際には、個別のパラメータ点検に加えて、全体としてのリスク量を事前に試算しておくことが望ましい。
ロジックの性能を十分に発揮させるためには、数値の確認にとどまらず、パラメータの意味と前提条件を理解したうえで運用することが不可欠である。
ご相談は下記よろず相談所まで。