کل کی ہائی بریکآؤٹ حکمت عملی ایک رجحان کی پیروی کرنے والا نظام ہے جو اس وقت طویل ہوتا ہے جب قیمت کل کی اونچائی سے تجاوز کرتی ہے ، یہاں تک کہ اگر دن میں کئی بار بریکآؤٹ ہوتا ہے۔ اس کا مقصد رجحان کی مارکیٹ کے حالات کی پیروی کرنا ہے۔
حکمت عملی میں داخلہ اور باہر نکلنے والے سگنلز کے لئے کئی تکنیکی اشارے استعمال کیے گئے ہیں:
آر او سی فلٹر - حکمت عملی صرف اس وقت فعال ہوتی ہے جب آج کی بندش میں پچھلے دن کی بندش کے مقابلے میں ایک حد سے زیادہ فیصد قیمت کی تبدیلی ہوتی ہے۔ اس سے غیر رجحان سازی والے اتار چڑھاؤ والے بازار فلٹر ہوتے ہیں۔
ٹرگر پوائنٹ - ریکارڈ آج کی اعلی، کم اور کھلی قیمتیں۔ جب قیمت آج کی اعلی سے تجاوز کرتی ہے تو طویل اندراج شروع ہوتا ہے۔
انٹری اور ایگزٹ شرائط - انٹری کے بعد ، اسٹاپ نقصان اور منافع کی فیصد مقرر کی جاتی ہے۔ ٹریلنگ اسٹاپ کو منافع میں مقفل کرنے کے لئے فعال کیا جاسکتا ہے۔ جب قیمت ریفرنس ای ایم اے سے نیچے آجاتی ہے تو مشروط باہر نکلنا۔
ترتیب - گیپ فی صد کی پیش گوئی یا تاخیر کے اندراج کے لئے۔ اپنی مرضی کے مطابق سٹاپ نقصان ، منافع لے ، پیچھے چھوڑنے کے اسٹاپ فی صد.
خاص طور پر ، یہ انٹری سگنل کے لئے آج کی اعلی قیمت کو ٹریک کرتا ہے۔ جب قیمت آج کی اونچائی سے تجاوز کرتی ہے تو طویل اندراج۔ پھر اسٹاپ نقصان اور منافع حاصل کرنے کے راستے مقرر کیے جاتے ہیں ، جس میں ٹریلنگ اسٹاپ فعال ہوتا ہے۔ جب قیمت دی گئی ای ایم اے سے نیچے عبور کرتی ہے تو متبادل باہر نکلنا۔ خطرہ کو کنٹرول کرنے کے لئے گیپ فیصد مقرر کرکے ، اسٹاپ نقصان کو ایڈجسٹ کرکے اور منافع حاصل کرنے کے تناسب کو بہتر بنانا ، منافع میں مقفل کرنے کے لئے ٹریلنگ اسٹاپ کو اہل بنانا۔
اس حکمت عملی کے فوائد:
رجحان کی پیروی، رجحان کی نقل و حرکت سے منافع حاصل کرتا ہے.
بریک آؤٹ کی حکمت عملی واضح اندراج سگنل دیتا ہے.
آج کی اعلی قیمت پر غور، مسلسل اندراجات سے بچنے.
نقصان روکنا اور منافع حاصل کرنا خطرے کو کنٹرول کرنے میں مدد کرتا ہے۔
ٹریلنگ سٹاپ منافع میں تالے.
خطرہ کو کنٹرول کرنے کے لئے پیرامیٹر کی اصلاح کے ساتھ انٹری ٹائمنگ کو ایڈجسٹ کیا جاسکتا ہے۔
سادہ اور بدیہی، سمجھنے اور لاگو کرنے میں آسان.
طویل اور مختصر تجارت پر لاگو ہوتا ہے۔
جن خطرات پر غور کیا جانا چاہئے:
بریکآؤٹ حکمت عملیوں کو وِپساؤ کے لیے حساس ہے۔ قیمت داخل ہونے کے فوراً بعد الٹ سکتی ہے۔
صرف رجحان سازی کی مارکیٹوں کے لئے مؤثر، مختلف حالات میں کم کارکردگی کا مظاہرہ.
معقول سٹاپ نقصان فی صد کی ضرورت ہے، بہت وسیع نقصان میں اضافہ ہو سکتا ہے.
مناسب فرق فیصد کی ضرورت ہے، بہت جارحانہ نقصان میں اضافہ کر سکتا ہے.
جھوٹے فرار غیر ضروری نقصان کا سبب بن سکتا ہے، ٹیوننگ کی ضرورت.
بریک آؤٹ کے بعد حجم کی حمایت کی ضرورت ہے.
وقت کے فریموں میں پیرامیٹرز کے درمیان مستقل مزاجی کی ضرورت ہے۔
ممکنہ اصلاحات:
حجم، اتار چڑھاؤ جیسے دیگر اشارے شامل کریں تاکہ مارکیٹوں کے دوران وِپساؤ سے بچ سکیں۔
منحنی فٹنگ اشارے شامل کریں رجحان کی طاقت کو اہل بنانے کے لئے، غلط رجحانات سے بچنے کے لئے.
مارکیٹ کی اتار چڑھاؤ کی بنیاد پر انٹری گیپ کی متحرک اصلاح.
سٹاپ نقصان کی متحرک اصلاح اور مارکیٹ کے حالات کے بعد منافع لے لو.
مختلف علامتوں اور وقت کے فریم کے لئے مختلف پیرامیٹر سیٹ.
مشین لرننگ ٹیسٹ پیرامیٹر اسٹریٹجک کارکردگی پر اثر انداز.
ترتیبات کو بہتر بنانے کے لئے اختیارات کی فعالیت شامل کریں.
مختلف مارکیٹ کے حالات کے دوران تحقیق کی قابل اطلاق.
ٹائم فریم اور کثیر اثاثہ جات کی حکمت عملیوں میں توسیع کریں.
یہ حکمت عملی کل کے اعلی تصور کی خرابی کی بنیاد پر رجحان سازی کی مارکیٹوں کے دوران مناسب کارکردگی پیش کرتی ہے۔ لیکن وِپسا اور پیرامیٹر کی اصلاح کی مشکلات کا خطرہ موجود ہے۔ فیصلے ، متحرک پیرامیٹر ٹوننگ ، مشترکہ حکمت عملیوں میں توسیع وغیرہ کو شامل کرکے مزید اصلاحات ممکن ہیں۔ مجموعی طور پر یہ قلیل مدتی رجحان کے بعد موزوں ہے ، لیکن خطرہ کنٹرول اور پیرامیٹر ٹوننگ کی ضرورت ہے۔
/*backtest start: 2023-10-06 00:00:00 end: 2023-11-05 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // Author: © tumiza 999 // © TheSocialCryptoClub //@version=5 strategy("Yesterday's High v.17.07", overlay=true, pyramiding = 1, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=10, slippage=1, backtest_fill_limits_assumption=1, use_bar_magnifier=true, commission_type=strategy.commission.percent, commission_value=0.075 ) // ----------------------------------------------------------------------------- // ROC Filter // ----------------------------------------------------------------------------- // f_security function by LucF for PineCoders available here: https://www.tradingview.com/script/cyPWY96u-How-to-avoid-repainting-when-using-security-PineCoders-FAQ/ f_security(_sym, _res, _src, _rep) => request.security(_sym, _res, _src[not _rep and barstate.isrealtime ? 1 : 0])[_rep or barstate.isrealtime ? 0 : 1] high_daily = f_security(syminfo.tickerid, "D", high, false) roc_enable = input.bool(false, "", group="ROC Filter from CloseD", inline="roc") roc_threshold = input.float(1, "Treshold", step=0.5, group="ROC Filter from CloseD", inline="roc") closed = f_security(syminfo.tickerid,"1D",close, false) roc_filter= roc_enable ? (close-closed)/closed*100 > roc_threshold : true // ----------------------------------------------------------------------------- // Trigger Point // ----------------------------------------------------------------------------- open_session = ta.change(time('D')) price_session = ta.valuewhen(open_session, open, 0) tf_session = timeframe.multiplier <= 60 bgcolor(open_session and tf_session ?color.new(color.blue,80):na, title = "Session") first_bar = 0 if open_session first_bar := bar_index var max_today = 0.0 var min_today = 0.0 var high_daily1 = 0.0 var low_daily1 = 0.0 var today_open = 0.0 if first_bar high_daily1 := max_today low_daily1 := min_today today_open := open max_today := high min_today := low if high >= max_today max_today := high if low < min_today min_today := low same_day = today_open == today_open[1] plot( timeframe.multiplier <= 240 and same_day ? high_daily1 : na, color= color.yellow , style=plot.style_linebr, linewidth=1, title='High line') plot( timeframe.multiplier <= 240 and same_day ? low_daily1 : na, color= #E8000D , style=plot.style_linebr, linewidth=1, title='Low line') // ----------------------------------------------------------------------------- // Strategy settings // ----------------------------------------------------------------------------- Gap = input.float(1,"Gap%", step=0.5, tooltip="Gap di entrata su entry_price -n anticipa entrata, con +n posticipa entrata", group = "Entry") Gap2 = (high_daily1 * Gap)/100 sl = input.float(3, "Stop-loss", step= 0.5, group = "Entry") tp = input.float(9, "Take-profit", step= 0.5, group = "Entry") stop_loss_price = strategy.position_avg_price * (1-sl/100) take_price = strategy.position_avg_price * (1+tp/100) sl_trl = input.float(2, "Trailing-stop", step = 0.5, tooltip = "Attiva trailing stop dopo che ha raggiunto...",group = "Trailing Stop Settings")//group = "Trailing Stop Settings") Atrl= input.float(1, "Offset Trailing", step=0.5,tooltip = "Distanza dal prezzo", group = "Trailing Stop Settings") stop_trl_price_cond = sl_trl * high/syminfo.mintick/100 stop_trl_price_offset_cond = Atrl * high/syminfo.mintick/100 stop_tick = sl * high/syminfo.mintick/100 profit_tick = tp * high/syminfo.mintick/100 mess_buy = "buy" mess_sell = "sell" // ----------------------------------------------------------------------------- // Entry - Exit - Close // ----------------------------------------------------------------------------- if close < high_daily1 and roc_filter strategy.entry("Entry", strategy.long, stop = high_daily1 + (Gap2), alert_message = mess_buy) ts_n = input.bool(true, "Trailing-stop", tooltip = "Attiva o disattiva trailing-stop", group = "Trailing Stop Settings") close_ema = input.bool(false, "Close EMA", tooltip = "Attiva o disattiva chiusura su EMA", group = "Trailing Stop Settings") len1 = input.int(10, "EMA length", step=1, group = "Trailing Stop Settings") ma1 = ta.ema(close, len1) plot(ma1, title='EMA', color=color.new(color.yellow, 0)) if ts_n == true strategy.exit("Trailing-Stop","Entry",loss= stop_tick, stop= stop_loss_price, limit= take_price, trail_points = stop_trl_price_cond, trail_offset = stop_trl_price_offset_cond, comment_loss="Stop-Loss!!",comment_profit ="CASH!!", comment_trailing = "TRL-Stop!!", alert_message = mess_sell) else strategy.exit("TP-SL", "Entry",loss= stop_tick, stop=stop_loss_price, limit= take_price, comment_loss= "Stop-loss!!!", comment_profit = "CASH!!", alert_message = mess_sell) if close_ema == true and ta.crossunder(close,ma1) strategy.close("Entry",comment = "Close" , alert_message = mess_sell)