یہ حکمت عملی ایک جامع تجارتی نظام ہے جو کثیر ٹائم فریم تجزیہ ، فیئر ویلیو گیپ (ایف وی جی) ، اور بریک آف اسٹرکچر (بی او ایس) کو یکجا کرتا ہے۔ یہ کم ٹائم فریم پر فیئر ویلیو گیپ کے مواقع کی تلاش کرتے ہوئے اعلی ٹائم فریموں پر ڈھانچے کے وقفوں کا پتہ لگاتے ہوئے ممکنہ تجارتی اندراجات کی نشاندہی کرتا ہے۔ اس حکمت عملی میں خودکار اسٹاپ نقصان اور منافع لینے کی ترتیبات کے ساتھ رسک مینجمنٹ سسٹم بھی شامل ہے۔
بنیادی منطق تین اہم ستونوں پر مبنی ہے۔ پہلا ، یہ ٹرانزیکشن ڈائریکشن کے لئے بنیادی فریم ورک فراہم کرنے والے بریک آف ڈھانچے (بی او ایس) کی نشاندہی کرنے کے لئے ایک اعلی ٹائم فریم (ڈیفالٹ 1 گھنٹہ یا اس سے زیادہ) کا استعمال کرتا ہے۔ دوسرا ، یہ کم ٹائم فریم پر فیئر ویلیو گیپس (ایف وی جی) کی تلاش کرتا ہے ، جو ان علاقوں میں ممکنہ سپلائی ڈیمانڈ عدم توازن کی نشاندہی کرتا ہے۔ آخر میں ، یہ ان حالات کو موجودہ قیمت کی پوزیشن کے ساتھ جوڑتا ہے تاکہ جب قیمت سازگار مقامات پر ہوتی ہے تو تجارتی سگنل کو متحرک کیا جاسکے۔ یہ نظام رسک ریوارڈ تناسب اور اسٹاپ نقصان کے عوامل کے ذریعہ خطرے کا انتظام کرتا ہے۔
یہ حکمت عملی ملٹی ٹائم فریم تجزیہ ، قیمت کی ساخت کی خرابی ، اور منصفانہ قیمت کے فرق کے جامع استعمال کے ذریعے ایک مکمل تجارتی نظام تیار کرتی ہے۔ اس کی طاقت اس کے کثیر جہتی تجزیہ کے نقطہ نظر اور جامع رسک مینجمنٹ میکانزم میں ہے ، لیکن تاجروں کو ابھی بھی مارکیٹ کے اصل حالات کے مطابق پیرامیٹرز کو بہتر بنانے اور خطرات پر قابو پانے کی ضرورت ہے۔ مزید اصلاحات سگنل کی تصدیق ، متحرک پیرامیٹر ایڈجسٹمنٹ ، اور مارکیٹ کے ماحول کی فلٹرنگ پر توجہ مرکوز کرسکتی ہیں تاکہ حکمت عملی کے استحکام اور وشوسنییتا کو مزید بہتر بنایا جاسکے۔
/*backtest start: 2024-01-17 00:00:00 end: 2025-01-15 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}] */ //@version=5 strategy("ICT Strategy with Historical Backtest", overlay=true) // === Настройки === tf = input.timeframe("60", title="Higher Timeframe (1H or above)") // Таймфрейм для анализа BOS fvg_length = input(3, title="FVG Lookback Length") // Длина для поиска FVG risk_reward = input(2, title="Risk-Reward Ratio") // Риск-вознаграждение show_fvg_boxes = input(true, title="Show FVG Boxes") // Показывать FVG stop_loss_factor = input.float(1.0, title="Stop Loss Factor") // Множитель для стоп-лосса // === Переменные для анализа === var float bos_high = na var float bos_low = na // Получаем данные с более старшего таймфрейма htf_high = request.security(syminfo.tickerid, tf, high) htf_low = request.security(syminfo.tickerid, tf, low) htf_close = request.security(syminfo.tickerid, tf, close) // Определение BOS (Break of Structure) на старшем таймфрейме bos_up = ta.highest(htf_high, fvg_length) > ta.highest(htf_high[1], fvg_length) bos_down = ta.lowest(htf_low, fvg_length) < ta.lowest(htf_low[1], fvg_length) // Обновляем уровни BOS if (bos_up) bos_high := ta.highest(htf_high, fvg_length) if (bos_down) bos_low := ta.lowest(htf_low, fvg_length) // === Определение FVG (Fair Value Gap) === fvg_up = low > high[1] and low[1] > high[2] fvg_down = high < low[1] and high[1] < low[2] // Визуализация FVG (Fair Value Gap) // if (show_fvg_boxes) // if (fvg_up) // box.new(left=bar_index[1], top=high[1], right=bar_index, bottom=low, bgcolor=color.new(color.green, 90), border_color=color.green) // if (fvg_down) // box.new(left=bar_index[1], top=high, right=bar_index, bottom=low[1], bgcolor=color.new(color.red, 90), border_color=color.red) // === Логика сделок === // Условия для входа в Лонг long_condition = bos_up and fvg_up and close < bos_high if (long_condition) strategy.entry("Long", strategy.long, stop=low * stop_loss_factor, limit=low + (high - low) * risk_reward) // Условия для входа в Шорт short_condition = bos_down and fvg_down and close > bos_low if (short_condition) strategy.entry("Short", strategy.short, stop=high * stop_loss_factor, limit=high - (high - low) * risk_reward) // === Надписи для прогнозируемых сделок === if (long_condition) label.new(bar_index, low, text="Potential Long", color=color.green, style=label.style_label_up, textcolor=color.white, size=size.small) if (short_condition) label.new(bar_index, high, text="Potential Short", color=color.red, style=label.style_label_down, textcolor=color.white, size=size.small)