年率10%で同じ二つの戦略でも、一方が数カ月で回復し、もう一方が三年間含み損なら投資体験は大きく違う。Ulcer Indexは各時点の高値からの下落率を二乗し、平均して平方根を取る。
最大DDが最悪一点だけを見るのに対し、下落の深さと滞在時間を反映する。
計算例
高値から0%、マイナス5%、マイナス10%、マイナス5%なら二乗平均は(0+25+100+25)÷4=37.5、平方根約6.12%である。
同じ最大10%でも翌日回復する系列ならUIは小さく、10%下落が続けば大きくなる。
図解

基準高値
通常は累積最高値を基準にする。月次リセットや固定ベンチマークを使うと意味が変わるため定義を明記する。
配当込み指数と価格指数を混ぜず、入出金による資産増減を運用収益から除く。
Martin比
平均超過収益をUlcer Indexで割るMartin比を使えば、深く長い下落一単位当たりの収益を比較できる。
UIが極端に小さい短期間では比率が不安定になる。最低観測期間と信頼区間を置く。
運用利用
UIが過去90%点を超えたら建玉を減らすルールは、下落後の縮小になりやすい。変更上限と再投資条件を事前に決める。
複数戦略のUIが同時上昇する危機を想定し、ポートフォリオ全体でも計算する。
比較

検証
実務検証では、設計期間と評価期間を分け、未来のデータを計算条件へ混ぜない。取引費用、未約定、データ欠損を含め、利益例だけでなく失敗した期間を保存する。
運用開始後は推定値と実績の差を月次で監査する。誤差が想定の二倍を超えた場合は閾値を都合よく変えず、利用を停止して入力と前提を点検する。
データを作る手順
対象銘柄、観測頻度、調整価格、欠損処理、計算窓を分析前に固定する。現在残る銘柄だけでなく、当時の上場廃止や取引停止を含む母集団を使い、生存者バイアスを避ける。
指標の算出日と売買可能日を分け、終値で完成する値を同じ終値で取引したことにしない。翌営業日の始値または一定時間後の気配を用いる。
推定誤差を表示する
点推定だけでランキングを作らず、ブートストラップや期間分割で信頼区間を作る。値が高くても区間が広い銘柄は強い判断材料にしない。
20日、60日、250日など複数窓で符号と順位が維持されるか確認する。最も成績が良い窓だけを後から選ばない。
具体的な資金管理
資産1,000万円、一取引の損失予算を0.5%の5万円とする。ストレス時に5%逆行する可能性があるなら、理論上の建玉上限は100万円である。指標が良好でも損失予算を超えて増額しない。
複数銘柄が同じ市場要因へ反応する場合、個別上限を単純合計しない。危機時相関を高く置き、同時損失を計算する。
費用後バックテスト
手数料だけでなく、買いは売気配、売りは買気配を使い、注文参加率に応じた滑りを追加する。未約定をゼロ損益として捨てず、評価時点価格との差を機会損失にする。
費用前で有意でも、費用後期待値がスプレッド推定誤差より小さければ運用候補から外す。利益率と同時に回転率、容量、最大ドローダウンを示す。
アウトサンプル評価
前半期間で閾値と計算方法を決め、後半期間へ固定適用する。後半が悪いから条件を追加する場合、その改良はさらに次の未使用期間で評価する。
上昇相場、下落相場、高ボラ、低ボラで結果を分ける。特定局面だけで機能するなら、その局面をリアルタイムで識別できるかも検証する。
運用停止ルール
直近20回の費用後期待値がマイナス、推定誤差が想定の二倍、データ欠損が許容値超過のいずれかで新規利用を停止する。
停止中に損失を取り戻すため建玉を増やさない。再開条件は次の完全な評価期間で事前基準を満たすこととする。
確認チェックリスト
- 定義と単位を明記したか
- 利用可能時刻を守ったか
- 外れ値を恣意的に除いていないか
- 信頼区間を確認したか
- 費用と未約定を含めたか
- 停止条件を事前に決めたか


コメント