マルチ期間価格アクション機関取引戦略:ICTコンセプトに基づく日中空売りシステム

ICT 价格行为 多时段 犹大摆动 机构交易 PA HT
作成日: 2025-03-26 15:40:23 最終変更日: 2025-03-26 15:40:23
コピー: 3 クリック数: 429
2
フォロー
319
フォロワー

マルチ期間価格アクション機関取引戦略:ICTコンセプトに基づく日中空売りシステム マルチ期間価格アクション機関取引戦略:ICTコンセプトに基づく日中空売りシステム

概要

多時段価格行動機関取引戦略は,ICT (イントラバンク取引) 理念に基づく日内取引システムで,特に市場の下落傾向を捕捉するために設計されている.この戦略は,ロンドン,ニューヨーク,アジアの3つの主要な取引時間の価格行動を追跡することによって,機関資金の流れを識別し,重要な価格領域で空白の機会の高い確率を探します.戦略の中心は,異なる取引時間の間の関連性と価格構造を利用し”,ユダの振動”などの機関取引概念と組み合わせて,流動性の集中区域での精準化を行うことです.

戦略原則

この戦略は,複数の取引時間における価格構造の分析に基づいて動作し,主に以下のいくつかの重要な構成要素を含む.

  1. ロンドンのオープン設定 (ニューヨーク時間2時~8時20分)変数によるコード:sessionLondonロンドン時間帯の開始時間を設定し,その時間の最高価格をリアルタイムで更新します.londonHigh最低価格とlondonLowロンドン時間帯は通常,日中の最初の方向を確立する.

  2. ニューヨークの殺人区 (ニューヨーク時間8時20分から10時)コード設定:sessionNYOpenニューヨークの開業時間を捕捉する.価格がニューヨーク時間帯でロンドン時間帯の高点を破った後,下がる (いわゆる”ユダの揺れ”),条件を満たすjudasSwing = high >= londonHigh and time >= sessionNYOpenシステムが空白する準備が整ったとき

  3. ロンドン・クローゼット・バイ・イン・セット (ニューヨーク時間10:30~13:00)コードで:londonCloseBuy条件は,ロンドンの閉店時刻の多重信号を触発するかどうかを判断し,価格がロンドンの時間帯の低点から落ちる必要があり,目標は,リコール反発を捕捉することです.

  4. アジアの空白設定 (ニューヨーク時間19:00~2:00)コードが表示されました.sessionAsia価格がアジア時間帯のピークを突破したときに,アジア時間帯が始まります.close > asiaHighブログを投稿する際には,

戦略の核心的な取引論理は,価格がニューヨーク時間帯のロンドン高点を短期間突破した後に戻ってくるという”ユダの振動”という概念を利用し,大手機関が高い水準で出荷する可能性を示し,空白する際の勝利率が高い. 同時に,戦略は,ロンドン閉盤時間帯の多反転とアジア時間帯の空白策を含み,全天候の取引システムを形成する.

戦略的優位性

この戦略は,コードを深く分析することで,以下の顕著な利点があります.

  1. 複数の時間帯の共同分析戦略は,価格データを3つの取引時間から組み合わせ,変数によってlondonHighnyHighそしてasiaHigh単一期間の分析の限界を回避するために,さまざまな市場の価格の動きを全面的に追跡する.

  2. 組織的な理念に基づく入学論理戦略の中心は”ユダの揺れ”という概念だ.judasSwing条件判定) 直接的に標識機関資金の取引行為,大手の機関の誘導的行為と真の意図を効果的に識別することができる.

  3. 精密な時間制御通過しましたtimestampこの関数は,各取引時間の開始と終了時間を正確に設定し,最も活発な市場時間に取引を確実にし,取引の有効性を高めます.

  4. リスク管理の明確さこのコードには,明示的な止損設定が含まれています.stopLoss = high + 10 * syminfo.mintick) と収益目標profitTarget = low - 20 * syminfo.mintick取引のリスクを管理する.

  5. ビジュアルサポート戦略は成立しましたplot機能は,各時間の高低点をマッピングし,取引決定に直感的な視覚的参照を提供し,戦略の実用性を強化します.

戦略リスク

この戦略は合理的に設計されていますが,以下の潜在的なリスクがあります.

  1. 偽の突破の危険性:高波動の市場では”,ユダの振動”シグナルが偽の突破を生じ,誤った空白を引き起こす可能性があります. 解決策は,合成取引量確認またはより明確な価格逆転パターンを待つなどのフィルタリング条件を追加することです.

  2. 時間がかかっています戦略は,特定の時間帯の市場行動に高度に依存しており,市場特性が変化したり,重要なニュースが非典型的な時間に発表された場合,戦略の有効性が低下する可能性があります. 市場ニュースカレンダーの使用と連携して,重要なデータの発表の前に取引を一時停止することをお勧めします.

  3. ストップダスト設定は固定: コード内のストップ・ロスは固定ポイント数 ((10 * syminfo.mintick),異なる市場と時間帯の変動差を考慮しない.ATRなどの波動指標に基づくダイナミックストップに改めることができる.

  4. フィルタリングの欠如: 戦略は,市場全体の傾向と波動的環境を考慮していない.強気な上下走行状況で誤った空調シグナルが頻繁に発生する可能性がある.移動平均の方向または動量指数などのトレンドフィルター条件を追加することを推奨する.

  5. 偏差のリスクを測る: 戦略は特定の時間帯の価格行動に依存するので,低時間周期の回測時に前向きの偏差がある可能性があります.実際の取引では,戦略のパフォーマンスと回測結果の違いを注意してください.

戦略最適化の方向性

この戦略は,以下の方向で最適化できます.

  1. ダイナミック・ストップ・メカニズムポイントを固定するストップ (((stopLoss = high + 10 * syminfo.mintickATRベースの動的ストップに変更される.stopLoss = high + atr(14) * 1.5市場環境の波動的な性質に適応する.

  2. トレンドフィルター: 日線や4時間図の移動平均の方向など,より高い時間周期のトレンド判断条件を追加し,大トレンドと一致する方向のみで取引することで,戦略の勝利率を上げることができます.

  3. 交付確認: “ユダの振動”シグナルがトリガーされたときに取引量分析を加え,価格の逆転が取引量増加に伴い実行される時のみで空白を実行します.これは偽の突破による損失を減らすことができます.

  4. 市場情緒指数に加入する:VIXまたは他の市場波動指標と組み合わせて,極端な波動環境で戦略を調整または一時停止し,不安定な市場での取引を避ける.

  5. 入学タイミングを最適化公開条件は以下の通りです.close < open価格が重要なサポートレベルに戻るまで待って (ロンドン時間帯の開場価格またはVWAPなど) 再び入場を改善し,入場精度を向上させることができます.

  6. 多周期確認を追加する: より短い時間周期の価格構造を組み合わせて,主要な入場条件を満たした後,より正確な入場点を探し,滑り場と不必要なリスクを減らす.

これらの最適化方向は,戦略の安定性と信頼性を高め,異なる市場環境で良好なパフォーマンスを維持できるようにすることを目的としています.

要約する

多時間区間の価格行動機関取引戦略は,ICT取引理念を統合した総合的な日内取引システムで,ロンドン,ニューヨーク,アジア3つの主要取引時間の価格構造を分析することによって,機関資金の流れによってもたらされる高確率取引機会を捕捉する.この戦略の最大の特徴は,機関資金の流れをフォローする取引,特に”ユダの振動”概念を利用して空白の機会を捕捉することであり,反転多多とアジア時間区間の空白戦略も含め,包括的な取引システムを形成する.

戦略は合理的に設計され,明確な入場条件とリスク管理ルールを含んでいるが,偽の突破リスクや特定の時間依存性の強さなどの欠陥が残っている.動的ストップ,トレンドフィルター,取引量確認などの最適化措置を加えることで,戦略の安定性と適応性がさらに向上することができる.

この戦略は,日中取引の機会を追求するトレーダーにとって,異なる取引時間帯の市場特性を理解し,利用するための構造化された方法を提供し,特に,機関取引の理念を習得し,日中ショートラインで利益を得たいトレーダーに適しています.

ストラテジーソースコード
/*backtest
start: 2024-03-26 00:00:00
end: 2025-03-25 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/

//@version=5
strategy("ICT Bread and Butter Sell-Setup", overlay=true)

// Get current date values
t = time
currentYear = year(t)
currentMonth = month(t)
currentDay = dayofmonth(t)

// Time Settings
sessionNYOpen  = timestamp(currentYear, currentMonth, currentDay, 08, 20) // CME Open
sessionLondon  = timestamp(currentYear, currentMonth, currentDay, 02, 00) // London Open
sessionAsia    = timestamp(currentYear, currentMonth, currentDay, 19, 00) // Asia Open
sessionEnd     = timestamp(currentYear, currentMonth, currentDay, 16, 00) // Market Close

// Session Ranges (Initialize to the first bar values)
var float londonHigh = high
var float londonLow = low
var float nyHigh = high
var float nyLow = low
var float asiaHigh = high
var float asiaLow = low

// Update Highs & Lows for Each Session
if (time >= sessionLondon and time < sessionNYOpen)
    londonHigh := math.max(londonHigh, high)
    londonLow := math.min(londonLow, low)

if (time >= sessionNYOpen and time < sessionEnd)
    nyHigh := math.max(nyHigh, high)
    nyLow := math.min(nyLow, low)

if (time >= sessionAsia and time < sessionLondon)
    asiaHigh := math.max(asiaHigh, high)
    asiaLow := math.min(asiaLow, low)

// New York Judas Swing (Temporary Rally)
judasSwing = high >= londonHigh and time >= sessionNYOpen and time < sessionEnd

// Short Entry in NY Kill Zone
shortEntry = judasSwing and close < open
stopLoss = high + 10 * syminfo.mintick
profitTarget = low - 20 * syminfo.mintick

if shortEntry
    strategy.entry("Short", strategy.short)
    strategy.exit("Take Profit", from_entry="Short", limit=profitTarget, stop=stopLoss)

// London Close Buy Setup
londonCloseBuy = time >= timestamp(currentYear, currentMonth, currentDay, 10, 30) and time <= timestamp(currentYear, currentMonth, currentDay, 13, 00) and close < londonLow
if londonCloseBuy
    strategy.entry("Buy", strategy.long)
    strategy.exit("Take Profit Buy", from_entry="Buy", limit=close + 20 * syminfo.mintick, stop=low - 10 * syminfo.mintick)

// Asia Open Sell Setup
asiaSell = time >= sessionAsia and time < sessionLondon and close > asiaHigh
if asiaSell
    strategy.entry("Asia Short", strategy.short)
    strategy.exit("Asia Profit", from_entry="Asia Short", limit=close - 15 * syminfo.mintick, stop=high + 10 * syminfo.mintick)

// Plot High/Low of Sessions
plot(londonHigh, color=color.blue, title="London High")
plot(londonLow, color=color.blue, title="London Low")
plot(nyHigh, color=color.red, title="NY High")
plot(nyLow, color=color.red, title="NY Low")
plot(asiaHigh, color=color.orange, title="Asia High")
plot(asiaLow, color=color.orange, title="Asia Low")