بڑے اتار چڑھاؤ کی دو طرفہ تجارتی حکمت عملی: نقطہ کی حد پر مبنی طویل اور مختصر اندراج کا نظام

ATR SL TP
تخلیق کی تاریخ: 2024-11-18 16:11:21 آخر میں ترمیم کریں: 2024-11-18 16:11:21
کاپی: 0 کلکس کی تعداد: 576
1
پر توجہ دیں
1617
پیروکار

بڑے اتار چڑھاؤ کی دو طرفہ تجارتی حکمت عملی: نقطہ کی حد پر مبنی طویل اور مختصر اندراج کا نظام

جائزہ

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

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

حکمت عملی مؤثر تجارتی سگنل کی شناخت کے لئے ایک سے زیادہ فلٹرنگ میکانزم کا استعمال کرتی ہے۔ سب سے پہلے ، حکمت عملی ہر 30 منٹ کے K لائن بند ہونے پر ادارے کے اتار چڑھاؤ کی حد کا حساب لگاتی ہے ، اور جب اتار چڑھاؤ کی حد پہلے سے طے شدہ حد سے تجاوز کر جاتی ہے تو اسے ممکنہ تجارتی موقع کے طور پر نشان زد کیا جاتا ہے۔ تجارت کی تاثیر کو یقینی بنانے کے لئے ، حکمت عملی نے ایک اضافی بیج پوائنٹ پوزیشن قائم کی ہے ، اور صرف اس صورت میں جب قیمت اس بیجنگ ایریا کو توڑ دے گی تب ہی اصل تجارتی سگنل کو متحرک کرے گی۔ حکمت عملی بیک وقت ایک سے زیادہ دو طرفہ تجارت کا احساس کرتی ہے ، جب اوپر کی حد کو توڑنے پر زیادہ کام کرتی ہے ، اور نیچے کی حد کو توڑنے پر خالی ہوجاتی ہے ، اور ہر تجارت کے لئے اسی طرح کی اسٹاپ نقصان کی پوزیشن طے کرتی ہے۔

اسٹریٹجک فوائد

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

اسٹریٹجک رسک

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

حکمت عملی کی اصلاح کی سمت

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

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2024-10-01 00:00:00
end: 2024-10-31 23:59:59
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Big Candle Breakout Strategy Both Side", overlay=true)  

// Input for the point move threshold
point_move_in = input.int(100, title="Point Move Threshold")
point_target = input.int(100, title="Point Target")
point_stoploss = input.int(100, title="Point Stop Loss")
point_buffer = input.int(5, title="Point Buffer")

point_move = point_buffer + point_move_in

// Define the start and end times for trading
start_hour = 9
start_minute = 15
end_hour = 14
end_minute = 30

// Function to check if the current time is within the allowed trading window
in_time_range = (hour(time('30')) > start_hour or (hour(time('30')) == start_hour and minute(time('30')) >= start_minute)) and (hour(time('30')) < end_hour or (hour(time('30')) == end_hour and minute(time('30')) <= end_minute))

// Retrieve the open, high, low, and close prices of 30-minute candles
open_30m = request.security(syminfo.tickerid, "30", open)
high_30m = request.security(syminfo.tickerid, "30", high)
low_30m = request.security(syminfo.tickerid, "30", low)
close_30m = request.security(syminfo.tickerid, "30", close)

// Calculate the range of the candle
candle_range_long = (close_30m - open_30m)
candle_range_short = (open_30m - close_30m)

// Determine if the candle meets the criteria to be marked
big_candle_long = candle_range_long >= point_move_in
big_candle_short = candle_range_short >= point_move_in

// Variables to store the state of the trade
var float long_entry_price = na
var float long_target_price = na
var float long_stop_loss_price = na

var float short_entry_price = na
var float short_target_price = na
var float short_stop_loss_price = na

// Check if there are no active trades
no_active_trades = (strategy.opentrades == 0)

// Long entry condition
if (big_candle_long and na(long_entry_price) and in_time_range and no_active_trades)
    long_entry_price := high_30m+point_buffer
    long_target_price := long_entry_price + point_target
    long_stop_loss_price := long_entry_price - point_stoploss
    strategy.entry("Buy", strategy.long, stop=long_entry_price, limit=long_target_price)

plot(long_entry_price, style=plot.style_linebr, color=color.blue, linewidth=2, title="Entry Price")
plot(long_target_price, style=plot.style_linebr, color=color.green, linewidth=2, title="Target Price")
plot(long_stop_loss_price, style=plot.style_linebr, color=color.red, linewidth=2, title="Stop Loss Price")

// Short entry condition
if (big_candle_short and na(short_entry_price) and in_time_range and no_active_trades)
    short_entry_price := low_30m - point_buffer
    short_target_price := short_entry_price - point_target
    short_stop_loss_price := short_entry_price + point_stoploss
    strategy.entry("Sell", strategy.short, stop=short_entry_price, limit=short_target_price)

plot(short_entry_price, style=plot.style_linebr, color=color.blue, linewidth=2, title="Short Entry Price")
plot(short_target_price, style=plot.style_linebr, color=color.green, linewidth=2, title="Short Target Price")
plot(short_stop_loss_price, style=plot.style_linebr, color=color.red, linewidth=2, title="Short Stop Loss Price") 

// Long exit conditions
if (not na(long_entry_price))
    strategy.exit("Long Exit", from_entry="Buy", limit=long_target_price, stop=long_stop_loss_price)
   
// Short exit conditions
if (not na(short_entry_price))
    strategy.exit("Short Exit", from_entry="Sell", limit=short_target_price, stop=short_stop_loss_price)

// Reset trade status
if (strategy.position_size == 0)
    long_entry_price := na
    long_target_price := na
    long_stop_loss_price := na

    short_entry_price := na
    short_target_price := na
    short_stop_loss_price := na

// Plot the big candle and entry/exit levels
plotshape(series=big_candle_long, location=location.abovebar, style=shape.circle, color=color.green)
plotshape(series=big_candle_short, location=location.abovebar, style=shape.circle, color=color.red)

//plot(long_entry_price, style=plot.style_stepline, color=color.blue, linewidth=2, title="Entry Price")
//plot(long_target_price, style=plot.style_stepline, color=color.green, linewidth=2, title="Target Price")
//plot(long_stop_loss_price, style=plot.style_stepline, color=color.red, linewidth=2, title="Stop Loss Price")