適応型取引システムは、過去の市場および資産データから「学習」するように設計された戦略であり、新しい市場の動向に合わせてルールを調整することを可能にします。自己適応型または自動適応型の取引システムは、過去におけるそれらのルールのパフォーマンスに基づいて、売買ルールを変更することができます。.
アルゴリズム取引において、トレーダーはデータに基づいた取引の参入や撤退の判断を下すため、さまざまな戦略やテクニカル指標を活用します。これらの戦略における重要な要素の一つが比較ブロックの使用であり、これらは市場環境を特定し取引シグナルを生成するための不可欠なツールです。新しい高度な比較ブロックの一つが、「上方クロス(適応型)/下方クロス(適応型)」ブロックです。.
この記事では、比較ブロックの概念を深く掘り下げ、自動売買におけるその機能と重要性を解説します。また、「Crosses Above Adaptive」ブロックの詳細な分析を行い、その適応型の性質の背後にあるロジック、変化する市場環境への対応方法、そしてそれを組み込むことで全体的なトレーディング戦略をどのように強化できるかを探求します。.
トレーディング戦略における比較ブロックの理解
StrategyQuant Xにおいて、比較ブロックはチャート上のさまざまな指標、価格、または値を比較するために不可欠なツールです。これらは、自動取引戦略において買いシグナルや売りシグナルを発動させる条件を定義するのに役立ちます。例えば、比較ブロックを使用することで、短期移動平均線が長期移動平均線を上抜けるかどうかを確認し、潜在的な買いチャンスを示すことができます。.
比較ブロックは、意思決定のチェックポイントとして機能し、「ある値が別の値より高いか?」「インジケーターが主要な閾値を上抜けた(または下抜けた)か?」といった問いに答えます。複数の比較ブロックを組み合わせることで、トレーダーは高度なルールを作成し、戦略を洗練させ、市場状況に基づいた意思決定を改善することができます。.
トレーダーがさまざまな指標、価格、またはカスタム値を比較して自動取引戦略を構築できるよう設計された比較ブロックには、いくつかの種類があります。これらのブロックを使用することで、特定の条件が満たされたタイミングを柔軟かつ正確に制御することができます。StrategyQuant X で利用可能な主な比較ブロックの種類は以下の通りです:
- 上抜け / 下抜け
- より大きい / より小さい
- 等しい / 等しくない
- 大いなるカウント / 小さなカウント
- 上位パーセンタイル / 下位パーセンタイル
- 以上 / 以下
- 真 / 偽
基本的な比較ブロックはトレーディング戦略で広く使用されていますが、大きな制限があります。それは、シグルの信頼性を考慮していないという点です。例えば、あるインジケーターが別のインジケーターを上抜けしたからといって、利益が出るトレードが保証されるわけではありません。そこで登場するのが適応型比較ブロックであり、これはシグナルを確認する前に過去のパフォーマンスや市場環境を考慮することで、より洗練されたアプローチを提供します。.
適応型クロスオーバーシグナル入門:「適応型を上抜け/適応型を下抜け」“
その 適応的移動平均を上抜け ブロックは高度な比較ブロックです。現在の市場状況を見るだけの単純なクロスオーバーとは異なり、適応型バージョンはより深く分析します。あるインジケーターが別のインジケーターを上回ったかどうかを確認するだけでなく、同様のクロスオーバーの過去のパフォーマンスも評価し、シグナルが統計的に信頼できるかどうかを判断します。.
このブロックの目的は、リアルタイムのクロスオーバーのみに依存して偽のシグナルを引き起こすことが多い方法ではなく、過去のデータに基づいて成功確率の高い、よりインテリジェントなシグナルを提供することです。.
適応型トレーディングシグナルの仕組み
クロスオーバーシグナルの基本から始めましょう。クロスオーバーは、1つのインジケーター(多くの場合、短期移動平均線)が別のインジケーターを上抜けまたは下抜けするときに発生します。「上抜け」イベントは、モメンタムが上向きにシフトしていることを示し、買いの機会を示唆する可能性があります。.
単純なクロスオーバー戦略では、トレーダーはこうしたクロスオーバーが発生すると即座に対応しようとします。しかし、市場はダイナミックでノイズに満ちているため、これでは過剰売買や、利益にならないシグナルに反応してしまうことにつながりがちです。.
単純なクロスオーバーシグナルの限界
クロスオーバーは単純で理解しやすいものの、常に信頼できるとは限りません。ボラティリティの高い市場では、価格が急速に一方向に動き、クロスオーバーを引き起こした直後に反転することがあります。これにより、トレーダーは持続的な市場の動きにつながらない可能性のあるシグナルに基づいて取引に参加することになります。.
言い換えれば、単純なクロスオーバー戦略は硬直的です。これらは、類似したクロスオーバーの過去の成功率を考慮していません。ここで適応型比較ブロックのような 適応的移動平均を上抜け 発効する.
適応メカニズムの仕組み
Crosses Above Adaptive / Crosses Below Adaptive ブロックは、追加の評価レイヤーを統合することで、従来のクロスオーバー戦略を強化します。その仕組みは以下の通りです:
- 基本クロスオーバーイベント
最初のステップは、基本的なクロスオーバーイベントの発生を検出することです。これは、指標Aが指標Bを上抜けたときに発生します。例えば、20期間移動平均線が50期間移動平均線を上抜けたり、RSI(14)が50を上抜けたりする場合です。.
- 過去のパフォーマンス評価
クロスオーバーイベントが特定されると、システムはその過去のパフォーマンスを評価します。指定された数の過去のバー(Xバー)とトレード(Xトレード)に基づいて、過去に同様のクロスオーバーイベントがどのようなパフォーマンスを示したかを確認します。これはバックテストの中のバックテストとして機能し、過去のパフォーマンスを分析して現在のシグナルの潜在的な信頼性を測定します。.
- ユーザー定義のメトリックとなしきい値
その後、クロスオーバーのパフォーマンスがユーザー定義の閾値と比較されます。ユーザーは次のようなさまざまな評価指標を選択できます。
- Proフィット係数
- 勝率
- 平均パフォーマンス
- 内部 Proフィット係数
- 最終決定:市場環境への適応
過去のパフォーマンスを評価し、ユーザー定義のしきい値と比較した後、システムは現在の市場状況が、そのシグナルが過去に良好なパフォーマンスを発揮した状況に類似しているかどうかを確認します。状況と指標が一致する場合(例:プロフィットファクター > 1.5)、トレードが確定します。それ以外の場合、システムはトレードへの参入を控え、誤ったシグナルのリスクを軽減します。.
比較ブロックの重要なパラメータ

上の画像では、Comparisonブロックの「Crosses Above Adaptive」の設定を確認できます。.
クロスオーバーが検出されると、主要な条件が満たされた場合にのみシグナルが確定します。意思決定プロセスを形作る上で、以下のパラメータが不可欠です。
- トレードの振り返り: これは、プロフィトラシオや勝率などのパフォーマンス指標を計算するために、システムが検証する過去のトレードの数を指定します。たとえば、50に設定した場合、システムは情報に基づいた決定を下すために、直近の50回のクロストレードを分析します。.
- バーの後の終了: このパラメータは、決済を決定する前に、システムがエントリー後のトレードを監視する期間(バー数または期間数)を定義します。例えば、5バーに設定した場合、システムは5期間経過後のトレードのパフォーマンスを評価し、トレードが無期限に保有されず、時間制限が設けられるようにします。.
- 指標 信号の信頼性を判断するために、次のような複数の評価指標から選択できます:
- Proフィット係数: 類似した過去の取引における総利益対総損失の比率。値が高いほど、より信頼性の高いシグナルを示します。.
- 勝率: 類似のクロスオーバー事象をきっかけとして行われた過去の取引のうち、利益で終了したものの割合。勝率が60%以上であれば、一般的に高いとみなされます。.
- 平均パフォーマンス: 方向(上昇または下降)に関係なく、同様のクロスオーバーから生じる絶対平均利益または損失。これは潜在的なリスクのニュートラルな測定基準を提供します。.
- 内部 Profit 係数: ポジション保有中の個別のバーの利益の合計を、バーの損失の合計で割ることによって従来のプロフィートルーカスを洗練させ、より詳細で現実的なパフォーマンスの測定基準を提供します。.
- パフォーマンスしきい値 これは、シグナルが確定される前に満たされなければならない最低限のパフォーマンス水準を設定します。シグナルの過去のパフォーマンスがプロフィットファクター1.5以上などのこの閾値を満たさない場合、システムはそのトレードを無視し、信頼性の低いシグナルを排除してリスクを最小限に抑えます。.
-
TS Max Bars Back TradeStationまたはMultiChartsエンジンでのバックテスト専用に使用されるパラメータです。このパラメータは、TradeStationまたはMultiChartsの「TS Max Bars Back」設定で直接指定された値と完全に一致している必要があります。.
使い方 適応的移動平均を上抜け / 適応的移動平均を下回る StrategyQuant X にて
ブロックのインポートスニペットのインポート方法については、ドキュメントセクションをご覧ください。 ここ
インポートが成功したら、新しい比較ブロックを次で使用できます:
ビルダー
ビルダーでは、「ビルダー / ブロック」からこのブロックを有効にできます。ブラインドデータマイニングを行う際は、方向性がなくシグナルの平均的な絶対的強度を計算する「平均パフォーマンス(Avg Performance)」指標の使用が推奨されます。設定における詳細度や具体性は、各ユーザーの判断に委ねられます。.
AlgoWizard – カスタムブロック

StrategyQuant Xのカスタムブロックを使用すれば、トレーダーはコーディングを行うことなく、自身の取引戦略に合わせた独自の構成要素を作成できます。これらのブロックを活用することで、ユーザーの要件に合わせた特定の条件、指標、またはロジックを定義することが可能です。 作成されたカスタムブロックは、StrategyQuantのビジュアル戦略ビルダーであるAlgoWizardにシームレスに統合され、複雑で適応性の高い取引戦略を構築することができます。.
カスタムブロックは、インジケーターの期間、プロフィットファクター、勝率などの主要な指標をパラメータ化できるようにすることで柔軟性を高め、戦略の挙動に対するより優れたコントロールを提供します。要するに、カスタムブロックはより正確で、動的で、洗練された
クロス・オブ・アダプティブ(Crosses Above Adaptive)/クロス・アンダー・アダプティブ(Crosses Below Adaptive)は、カスタムブロックまたはクロスサイトテンプレートとしてAlgoWizardで使用することが強く推奨されるブロックです。これらのブロックには慎重な設定が必要であるため、各設定が論理的な構造に従うカスタムブロックを作成することが有益です。戦略テンプレートの作成はやや高度なトピックですが、これらのブロックはそのような高度な戦略に最適です。次の記事では、それらの使用方法に関する詳細なチュートリアルを提供します。”
現在、この条件に基づいていくつかのカスタムブロックを用意しました。こちらからダウンロードできます
リンク 以下の手順に従ってインポートします。.
AlgoWizard – テンプレート
これは、今後の記事でより詳しく解説する高度なトピックです。カスタムブロックとランダムグループを組み合わせることで、プロトタイプの戦略を作成し、特定のタイプの戦略を検索しつつその適応性を維持するようSQXに指示することができます。.
戦略改善の例
以下の戦略は、「上向きにクロスする適応型」のロジックが、古典的な「上向きにクロスする」アプローチと比較して、パフォーマンスをどのように向上させることができるかを示す例です。.
適応ロジックなしオリジナル
この戦略はボリンジャーバンドを用いたブレイクアウトロジックをベースにしており、10本のエグジット(決済)を伴います。古典的な設定ではプラスのパフォーマンスを示しますが、長期間の停滞期や、資産曲線(エクイティカーブ)における大きな変動を経験します。.

適応論理適用済み
適応型バージョンでは、これらの大きな変動が安定化され、パフォーマンスが劇的に向上しました。.

適応ロジックなしオリジナル
この戦略は、日足の高値/安値のブレイクアウトに基づき、10本後に手仕舞いするものです。近年はそのパフォーマンスが良好ですが、以前の年は芳しくありませんでした。言い換えれば、この戦略は長期的には一貫性に欠けています。.

適応論理適用済み
適応型ロジックを適用すると、トレード数が大幅に減少し、その結果、エクイティカーブがはるかに滑らかになります。.

どちらの例も、こちらからダウンロードできる私が用意したカスタムブロックから生成された戦略を示しています。このブロックはカスタムブロックとしてのみ使用することをお勧めします。ビルダーでインジケーターが有効になっており、適応比較ブロックを使用している場合は、次のように比較ブロックを非常に保守的な設定にすることをお勧めします。.

結論
これはほんの始まりに過ぎません。このロジックを拡張する方法はいくつかあります。例えば、トレーディングシステム内で売買ロジックをシミュレーションし、実質的にバックテストの中でのバックテストを実行することができます。さらに、複数の市場で同時にこれらのルールの収益性を分析することも可能です(はい、これは本当に可能です!)。.
これらのスニペットを改善するためのフィードバック、コメント、提案を歓迎します。近い将来、このようなスニペットをさらに提供する予定であり、最終的にはそれらをSQXに直接統合することを目指しています。.
これらの比較ブロックは、以下のように実装されています。 メタトレーダー 4、メタトレーダー 5、トレードステーション, 、および マルチチャーツ. コードベース内のすべてのスニペットをダウンロードできます。 ここ.

原則として、カスタムブロックを使用したシステム改善というアイデアには一見魅力を感じます。しかし、後でその戦略をSQXインプローバーで実行したい場合、それらの戦略はSQXインプローバーによって拒否されてしまいます。したがって、この利点は、SQXインプローバーを使用して戦略を自動的に改善したいと思うまでの、期間限定のものにすぎません。.
これが、そしてこれに類する多くの機能が、SQXの次期バージョンに統合され、完全な互換性を持つようになることを期待しています。多くのインジケーターには、プロのトレーディングにおいて明確な役割があります。.
エントリーポイント用のものもあれば、主にエグジット用のもの、そしてトレンドをとらえるためのものもある。.
It does not make sense to mix them in a purely random way in most cases.
Having more such intelligent rules builtin SQX, will prevent SQX from generating a large percentage of unusable strategies and help improve the results.
Especially for people with slower computers this will help a lot.
Yeah, I totally get what you mean, and I couldn’t agree more. Having smarter logic built into SQX would be a game-changer. Indicators aren’t just random tools—they each have a purpose. Some are great for entries, others work better for exits, and some help with trend identification. Mixing them randomly doesn’t make much sense and often leads to weak strategies that don’t hold up in real trading. If SQX could recognize and apply these roles more intelligently, it would cut down on the number of useless strategies and make the whole process much more efficient. And for people with slower… 続きを読む »
hello, First, Amazing work SQx team! I love these adaptive comparison blocks. I am using this Adaptive Cross blocks into Algowizard to manually build my strategies logic to very good results so far. Thumbs up. Not used in Builder. Question: Are the performance metrics of the Adaptive Cross signals backtested with directional bias such as a “cross above” implies bullish buy signals, for example 3SMA Crosses Above 10SMA. Simply, It would return Profit Factor etc for buy scenario, right? But what if we want to use a 3SMA ‘Cross below’ 10SMA as a bullish Buy signal too? Does the Adaptive… 続きを読む »
Hello Tony, Great, thanks for your response, I appreciate it. Let me answer your question. Custom blocks, as they are designed, have a bias. This means that when we use crosses above adaptive with an indicator, it inherently has a long bias. Unfortunately, this issue cannot be easily fixed afterward. The only way to remove this bias is by using non-directional metrics, such as average performance, which measures the absolute average movement after a signal—whether up or down. I also recommend looking into is above is below adaptive. These blocks provide even better results for me compared to crosses above… 続きを読む »
To clarify the issue in detail, the bug is highly specific to the AlgoWizard UI when editing the “Crosses Above Adaptive” condition. In AlgoWizard: The parameter named “Performance Threshold” is incorrectly displayed as an Integer field. It shows [ - ] and [ + ] buttons and will not accept any decimal values. (For example, typing 1.5 is auto-rounded to 2, and 1.3 is rounded to 1). This makes it impossible to set a proper Profit Factor or Win Rate threshold. The Key Evidence: This bug only exists in the AlgoWizard UI. If I go into the Builder settings (under the “Parameter values” tab for this same block), the “Performance Threshold” parameter is CORRECTLY identified as a double and allows me to set decimal values and a step: 0.1. This confirms… 続きを読む »