ふぅ、ようやく一息つけるな。☕️

最近、EA(自動売買システム)の開発に興味を持つ人が増えているけれど、多くの人が「どんなインジケーターを組み合わせれば勝てるか」という点にばかり意識を向けがちだ。もちろんそれも大事だが、実はもっと手前にある「市場の構造」という視点を持つと、トレードの世界はぐっと知的で面白いものになる。

今日は、僕がデータベースで見つけた、ちょっと視点の鋭い戦略の話をしようと思う。

名付けて、「ボラティリティ正規化ティックサイズ依存型トレンドフォロー戦略」。……名前だけ聞くと、論文みたいで身構えてしまうかもしれないけれど、中身は至ってシンプルで、かつ非常に理にかなっている。

「ダマシ」の正体を突き止める

トレードをやっていると必ずぶち当たるのが「ブレイクアウトのダマシ」だ。 「ここを抜けたら上昇トレンドだ!」と思って買いを入れたのに、直後にひょいと戻ってきて損切りに遭う。あの感覚は、何度経験しても心地よくない。

なぜダマシが起きるのか。僕の考えでは、それは市場に「ノイズ」が多すぎるからだ。

ここで面白い考え方が出てくる。市場には、価格が動く最小単位である「ティックサイズ」というものがある。そして、最近の価格変動の幅を示す「ATR(平均真の範囲)」がある。

この2つの比率、つまり 「ティックサイズ ÷ ATR」 を計算してみるんだ。

ここが知的なポイント: この比率が高い銘柄は、いわば「階段の一段一段が高い」状態にある。つまり、価格が動くにはそれなりのエネルギーが必要で、ちょこまかとした小さな動き(ノイズ)に惑わされにくい「大ティック構造」を持っているということになる。

つまり、闇雲にどの銘柄でもいいからトレードするのではなく、「構造的にノイズが少ない銘柄」だけをあらかじめフィルターで選別する。このひと手間を加えるだけで、戦略の信頼性は格段に上がる。

シンプルなルールに、確かな根拠を

銘柄さえ絞り込めれば、あとは古典的な手法で十分だ。ここで使うのが「ドンチャンチャネル」という、非常にシンプルなブレイクアウト手法。

やり方はこうだ。

  • エントリー: 過去20日間の最高値を更新したら買い。最安値を更新したら売り。
  • エグジット: 買いポジションなら、過去10日間の最安値を下回ったところで撤退。

「えっ、それだけ?」と思うかもしれない。でも、ここが大人の戦略の面白いところだ。複雑な数式を重ねるのではなく、「ノイズが少ない環境」という前提条件を揃えた上で、王道のトレンドフォローを執行する。

余計な飾りを削ぎ落とし、本質的な波だけを捉える。効率的だと思わないか。

実装へのアプローチ

もし君がこれをプログラムに落とし込むなら、PythonやMQL5でこんな風に考えることになる。

まず、SymbolInfo からティックサイズを取得し、iATR でボラティリティを計算して、比率 $R_{micro}$ が 0.0005 以上かどうかを判定させる。このフィルターを通過しなかった銘柄には、絶対に手を出さない。これが規律だ。

あとは、rolling().max()iHighest() を使って最高値を追いかけるだけ。実装自体はそれほど難しくない。

📊 リスク管理の美学 もちろん、どんなに優れた戦略でも100%はない。だからこそ、1銘柄あたりのリスクを総資産の1.0%に制限する。この「負けても致命傷を負わない」設計こそが、システムトレーダーとしての知的な余裕を生む。

最後に

プログラミングやEA開発と聞くと、数学的な才能や高度なコード書きのスキルが必要だと思われがちだ。でも実際は、こうして「どうすれば市場のノイズを排除できるか」「どうすれば感情を排してルールを徹底できるか」という、論理的なパズルを解くような快感に近い。

難しそうに見える壁も、一つひとつ分解して理解していけば、実はとてもエキサイティングな遊びになる。

もし君が、単なるギャンブルではない「知的な投資」に興味があるなら、ぜひ自分なりのフィルターを探求してみてほしい。市場の裏側に隠れた構造が見えてきたとき、チャートの景色はきっと変わるはずだ。

さて、そろそろコーヒーを飲み干して、僕もコードを書きに戻るとしよう。☕️\n