OPEN-SOURCE SCRIPT

CMS-Inspired SMC Strategy with Liquidity and FVG

//version=5
indicator("CMS-Inspired SMC Strategy with Liquidity and FVG", overlay=true)

// === إعدادات المستخدم ===
capital = input.float(1000, title="رأس المال ($)", step=10) // رأس المال الكلي
risk_percent = input.float(1, title="نسبة المخاطرة (%)", step=0.1) // نسبة المخاطرة
max_trades = input.int(2, title="عدد الصفقات اليومية", step=1) // الحد الأقصى للصفقات اليومية
session_start = input.time(timestamp("0000-01-01 08:00 +0000"), title="بداية الجلسة") // جلسة لندن
session_end = input.time(timestamp("0000-01-01 16:00 +0000"), title="نهاية الجلسة") // جلسة لندن
news_time = input.time(timestamp("0000-01-01 09:00 +0000"), title="وقت الأخبار المهمة") // الوقت المتوقع للأخبار

// === أدوات إضافية ===
session_active = (time >= session_start and time <= session_end) // الجلسة الزمنية
atr = ta.atr(14) // مؤشر ATR

// === تحديد مناطق السيولة ===
highest_liq = ta.highest(high, 20) // أعلى نقطة في الـ 20 فترة
lowest_liq = ta.lowest(low, 20) // أدنى نقطة في الـ 20 فترة

// === فجوات القيمة العادلة (FVG) ===
fvg_condition = close[2] > high[1] and close < high[1] // عندما يكون هناك فجوة بين الإغلاق والارتفاع

// === إشارات التداول ===
// كسر الهيكل (BOS)
high_break = ta.highest(high, 5) < close
low_break = ta.lowest(low, 5) > close

// مناطق Order Block
bullish_ob = close[5] < open[5] // إشارات الشراء بناءً على الإغلاق
bearish_ob = close[5] > open[5] // إشارات البيع بناءً على الإغلاق

// إشارات الشراء والبيع بناءً على جميع الشروط
long_signal = session_active and high_break and bullish_ob and fvg_condition and not (time >= news_time and time <= news_time + 3600000) // تجنب الأخبار
short_signal = session_active and low_break and bearish_ob and fvg_condition and not (time >= news_time and time <= news_time + 3600000) // تجنب الأخبار

// === إدارة رأس المال ===
capital_per_trade = (capital * risk_percent / 100) // نسبة رأس المال في الصفقة
lot_size = capital_per_trade / (atr * 1.5) // حجم اللوت بناءً على الـ ATR ووقف الخسارة

stop_loss = atr * 1.5 // وقف الخسارة بناءً على ATR
take_profit = stop_loss * 2 // الهدف (نسبة مخاطرة/عائد 1:2)

// === رسم الإشارات ===
var trade_count = 0 // عداد الصفقات اليومية
if session_active
if trade_count < max_trades
if long_signal
label.new(bar_index, high, "شراء", color=color.green, style=label.style_label_down)
trade_count += 1
if short_signal
label.new(bar_index, low, "بيع", color=color.red, style=label.style_label_up)
trade_count += 1

// === تنبيه إشارات ===
if long_signal or short_signal
alert("إشارة جديدة: " + (long_signal ? "شراء" : "بيع"), alert.freq_once_per_bar)
Bands and ChannelsCandlestick analysisCycles

오픈 소스 스크립트

진정한 TradingView 정신에 따라, 이 스크립트의 저자는 트레이더들이 이해하고 검증할 수 있도록 오픈 소스로 공개했습니다. 저자에게 박수를 보냅니다! 이 코드는 무료로 사용할 수 있지만, 출판물에서 이 코드를 재사용하는 것은 하우스 룰에 의해 관리됩니다. 님은 즐겨찾기로 이 스크립트를 차트에서 쓸 수 있습니다.

차트에 이 스크립트를 사용하시겠습니까?

면책사항