وسائل لوڈ ہو رہے ہیں... لوڈنگ...

ٹرپل ڈاؤن ریبیونڈ مومنٹم توڑنے کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2025-01-10 15:49:30
ٹیگز:ای ایم اےاے ٹی آرایم اےایس ایم اے

 Triple Bottom Rebound Momentum Breakthrough Strategy

جائزہ

یہ حکمت عملی تکنیکی تجزیہ پر مبنی ایک مقداری تجارتی نظام ہے ، جس میں بنیادی طور پر مارکیٹ میں ٹرپل بیم پیٹرن اور رفتار کی پیشرفت کے اشاروں کی نشاندہی پر توجہ دی جاتی ہے۔ یہ حکمت عملی متعدد تکنیکی اشارے کو یکجا کرتی ہے جس میں ایک مکمل تجارتی نظام بنانے کے لئے موونگ ایوریج (ایم اے) کراس اوورز ، اوسط سچے رینج (اے ٹی آر) ، اور قیمت چینلز شامل ہیں۔ پروگرام کے نفاذ کے ذریعے ، یہ ٹرپل بیم ری باؤنڈ پیٹرن کی خودکار شناخت اور تجارت کے عمل کو حاصل کرتا ہے۔

حکمت عملی کے اصول

بنیادی منطق میں مندرجہ ذیل اہم عناصر شامل ہیں: مارکیٹ کے رجحان کی سمت کی تصدیق کے لئے تیز (5 مدت) اور سست (20 مدت) چلتی اوسط کراس اوور کا استعمال خود کار طریقے سے ایک ٹرپل نیچے پیٹرن کی تشکیل کے لئے تین مسلسل کم پوائنٹس (کم 1، کم 2، کم 3) کی نشاندہی اتار چڑھاؤ کا حساب لگانے اور متحرک اسٹاپ نقصان اور منافع لینے کی سطحوں کا تعین کرنے کے لئے اے ٹی آر اشارے کا استعمال 4۔ جب قیمت تیسری نچلی سطح کے بعد پچھلے ریبیونڈ اونچائی سے اوپر ٹوٹ جاتی ہے تو طویل انٹری سگنلز کی تصدیق کرنا ، ایم اے کراس اوور سگنلز کے ساتھ مل کر اضافی مارکیٹ ریفرنس کے لئے قیمتوں کی نقل و حرکت کی حدوں کو دیکھنے کے لئے متوازی چینلز کا قیام تجارتی عملدرآمد کے دوران اے ٹی آر پر مبنی متحرک سٹاپ نقصان اور منافع لینے کی شرائط کو نافذ کرنا

حکمت عملی کے فوائد

  1. سگنل کی وشوسنییتا کو بڑھانے کے لئے متعدد تکنیکی اشارے کو یکجا کرتا ہے
  2. اے ٹی آر کا استعمال اسٹاپ نقصان اور منافع لینے کی سطحوں کو متحرک طور پر ایڈجسٹ کرنے کے لئے کرتا ہے ، جو مارکیٹ میں اتار چڑھاؤ کی تبدیلیوں کو اپناتا ہے
  3. خود کار طریقے سے ٹرپل نیچے پیٹرن کی نشاندہی، موضوعی فیصلے کو کم
  4. زیادہ تجارت کو روکنے کے لئے تجارتی وقفے کی پابندیوں کو نافذ کرتا ہے
  5. بصری آلات (متوازی چینلز اور لیبلز) کے ذریعے مارکیٹ کی ساخت کا واضح حوالہ فراہم کرتا ہے
  6. آسان دیکھ بھال اور اصلاح کے لئے واضح حکمت عملی منطق کی خصوصیات

حکمت عملی کے خطرات

  1. انتہائی اتار چڑھاؤ والے بازاروں میں جھوٹے سگنل پیدا کر سکتا ہے
  2. ٹرپل نیچے پیٹرن کی شناخت کے عمل کو مارکیٹ شور سے متاثر کیا جا سکتا ہے
  3. مقررہ اے ٹی آر ضارب تمام مارکیٹ کے حالات کے مطابق نہیں ہوسکتے ہیں
  4. رجحان کی تبدیلی کے دوران لگاتار نقصانات کا سامنا کرنا پڑ سکتا ہے
  5. تجارتی وقفہ کی ترتیبات کچھ درست سگنل کو یاد کر سکتے ہیں

حکمت عملی کی اصلاح کی ہدایات

  1. ریبوئنڈ کی صداقت کی تصدیق کے لئے حجم کے اشارے شامل کریں
  2. مختلف مارکیٹ کے حالات کی بنیاد پر متحرک طور پر اے ٹی آر ضربوں کو ایڈجسٹ کریں
  3. ٹریڈنگ سگنل کے معیار کو بہتر بنانے کے لئے رجحان کی طاقت فلٹرز شامل کریں
  4. درستگی بڑھانے کے لئے ٹرپل نیچے کی شناخت الگورتھم کو بہتر بنائیں
  5. تجارتی وقفے کی ترتیبات کو بہتر بنانے کے لئے مارکیٹ سائیکل تجزیہ شامل کریں
  6. قیمت پیٹرن سمری تجزیہ شامل کرنے پر غور کریں

خلاصہ

یہ حکمت عملی ایک ٹرپل نیچے ریبونڈ توڑ ٹریڈنگ سسٹم کو پروگرام کے مطابق لاگو کرتی ہے ، جس میں متعدد تکنیکی اشارے اور خطرے کے انتظام کے اقدامات کو اچھی عملیت کے ساتھ جوڑتا ہے۔ مسلسل اصلاح اور بہتری کے ذریعے ، حکمت عملی اصل تجارت میں بہتر کارکردگی کا وعدہ کرتی ہے۔ براہ راست تجارت سے پہلے مکمل بیک ٹیسٹنگ کرنے اور مخصوص مارکیٹ کے حالات کے مطابق پیرامیٹرز کو ایڈجسٹ کرنے کی سفارش کی جاتی ہے۔


/*backtest
start: 2019-12-23 08:00:00
end: 2025-01-08 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}]
*/

//@version=5
strategy("反彈三次突破策略", overlay=true, initial_capital=100000, commission_value=0.001425, slippage=1)

// === 參數設定 ===
fast_length = input.int(5, title="快速均線週期")
slow_length = input.int(20, title="慢速均線週期")
atr_period = input.int(14, title="ATR 週期")
atr_factor = input.float(2.0, title="ATR 因子")
profit_factor = input.float(2.0, title="止盈因子")

// === 計算均線 ===
fast_ma = ta.ema(close, fast_length)
slow_ma = ta.ema(close, slow_length)

// === 均線交叉訊號 ===
long_signal = ta.crossover(fast_ma, slow_ma)
short_signal = ta.crossunder(fast_ma, slow_ma)

// === 計算 ATR ===
atr = ta.atr(atr_period)

// === 反彈三次突破策略 ===
var float low1 = na
var float low2 = na
var float low3 = na
var bool trend_down = false
var bool long_breakout = false
var line lower_line = na
var line upper_line = na

if (na(low1) or na(low2) or na(low3))
    // 初始化低點
    low1 := na
    low2 := na
    low3 := na

if (close < low3 or na(low3))
    // 更新低點
    low1 := low2
    low2 := low3
    low3 := close
    trend_down := true

if (trend_down and close > low2 and close > low1)
    // 確認反轉且第三次反彈比第二次高
    trend_down := false
    long_breakout := true

// 清除前一個反彈通道
if (not na(lower_line))
    line.delete(lower_line)
if (not na(upper_line))
    line.delete(upper_line)

// 繪製新的反彈通道
if (not na(low1) and not na(low3))    
    lower_line := line.new(x1=bar_index[2], y1=low1, x2=bar_index, y2=low3, color=color.yellow, width=2)
    upper_line := line.new(x1=bar_index[2], y1=low1 + (low3 - low1), x2=bar_index, y2=low3 + (low3 - low1), color=color.yellow, width=2)

// === 進出場條件 ===
var float last_long_exit = na
var float last_short_exit = na
var float stop_loss_long = na
var float take_profit_long = na
var float stop_loss_short = na
var float take_profit_short = na

var label stop_loss_label_long = na
var label take_profit_label_long = na
var label stop_loss_label_short = na
var label take_profit_label_short = na

if (long_signal or long_breakout)
    if na(last_short_exit) or (time - last_short_exit) > 2 * 60 * 60 * 1000  // 確保多頭出場後有一段時間間隔
        // 做多
        strategy.entry("做多", strategy.long)
        // 止損設置為最近低點下方
        stop_loss_long := low3 - atr_factor * atr
        take_profit_long := close + profit_factor * atr  // 設定止盈位置
        strategy.exit("止盈/止損", "做多", stop=stop_loss_long, limit=take_profit_long)
        last_long_exit := time  // 記錄多頭出場時間

        // 刪除之前的止盈止損標籤
        if (not na(stop_loss_label_long))
            label.delete(stop_loss_label_long)
        if (not na(take_profit_label_long))
            label.delete(take_profit_label_long)

        // 繪製新的止盈止損標籤
        stop_loss_label_long := label.new(x=bar_index, y=stop_loss_long, text=str.tostring(math.round(stop_loss_long * 10) / 10), color=color.red, style=label.style_label_down, textcolor=color.white, size=size.small)
        take_profit_label_long := label.new(x=bar_index, y=take_profit_long, text=str.tostring(math.round(take_profit_long * 10) / 10), color=color.green, style=label.style_label_up, textcolor=color.white, size=size.small)

if (short_signal)
    if na(last_long_exit) or (time - last_long_exit) > 2 * 60 * 60 * 1000  // 確保空頭出場後有一段時間間隔
        // 做空
        strategy.entry("做空", strategy.short)
        // 止損設置為最近高點上方
        stop_loss_short := high + atr_factor * atr
        take_profit_short := close - profit_factor * atr  // 設定止盈位置
        strategy.exit("止盈/止損", "做空", stop=stop_loss_short, limit=take_profit_short)
        last_short_exit := time  // 記錄空頭出場時間

        // 刪除之前的止盈止損標籤
        if (not na(stop_loss_label_short))
            label.delete(stop_loss_label_short)
        if (not na(take_profit_label_short))
            label.delete(take_profit_label_short)

        // 繪製新的止盈止損標籤
        stop_loss_label_short := label.new(x=bar_index, y=stop_loss_short, text=str.tostring(math.round(stop_loss_short * 10) / 10), color=color.red, style=label.style_label_down, textcolor=color.white, size=size.small)
        take_profit_label_short := label.new(x=bar_index, y=take_profit_short, text=str.tostring(math.round(take_profit_short * 10) / 10), color=color.green, style=label.style_label_up, textcolor=color.white, size=size.small)

متعلقہ

مزید