رجحان پکڑنے والا حکمت عملی ایک ایسی حکمت عملی ہے جو اپنے منفرد طریقہ کار کا استعمال کرتے ہوئے رجحان کی تشکیل کا پتہ لگاتی ہے اور رجحان کی سمت میں پوزیشنیں کھولتی ہے۔ یہ ایک مخصوص حد میں سب سے زیادہ اور سب سے کم قیمتوں کے درمیان فرق کو اس حد میں موم بتیوں کی لمبائی کے مجموعے سے تقسیم کرکے
رجحان پکڑنے والا حکمت عملی رجحان کی تشکیل کا پتہ لگانے اور رجحان کی سمت میں پوزیشنیں کھولنے کے لئے ایک انوکھا طریقہ استعمال کرتا ہے۔ یہ رجحان کی طاقت کا تعین کرنے کے لئے حد کی قیمت کا حساب کرتا ہے اور رجحان کے اختتام کا تعین کرنے کے لئے حرکت پذیر اوسط کی کراسنگ کا استعمال کرتا ہے۔ یہ حکمت عملی پوزیشن کے ایک حصے کو بند کرکے اور پوزیشن کھولنے کے بعد اسٹاپ نقصان کی سطح کو منتقل کرکے خطرے کو کنٹرول کرتی ہے۔ تاہم ، رجحان کے آغاز میں پوزیشن کھولنے پر حکمت عملی کو کچھ خطرات کا سامنا کرنا پڑ سکتا ہے ، فکسڈ لیو منافع اور اسٹاپ نقصان کی سطحوں کا استعمال کافی لچکدار نہیں ہوسکتا ہے ، اور صرف رجحانات کا تعین کرنے کے لئے حرکت پذیر اوسط کا استعمال کرتے ہوئے کچھ مواقع ضائع ہوسکتے ہیں۔ مستقبل میں ، ہم دوسرے اشارے متعارف کرانے ، متحرک طور پر فائدہ اٹھانے اور اسٹاپ نقصان کی سطحوں کو ایڈجسٹ کرنے ، اور حکمت عملی کو بہتر بنانے کے لئے رجحان کی تصدیق کے بعد ہی پوزیشن کھولنے پر غور کرسکتے ہیں۔
/*backtest start: 2023-04-20 00:00:00 end: 2024-04-25 00:00:00 period: 1d basePeriod: 1h 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/ // © faytterro //@version=5 strategy("Trend Catcher Strategy", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100) len = input.int(10) tp = input.float(2.5, step = 0.1) sl = input.float(2.5, step = 0.1) malen = input.int(5) limit = input.int(50) ma = ta.sma(close,malen) sum = 0.0 for i = 0 to len-1 sum := sum + high[i]-low[i] frs = 100*(ta.highest(high,len)-ta.lowest(low,len))/sum //hline(50) //plot(frs, color = color.white) l = ta.crossover(frs,limit) and ma>ma[1] s = ta.crossover(frs,limit) and ma<ma[1] cl = ma<ma[1] cs = ma>ma[1] qty_balance=input.int(50, maxval = 100) if (l) strategy.entry("My Long Entry Id", strategy.long) strategy.exit("exit long", "My Long Entry Id", qty_percent = qty_balance, limit = close*(100+tp)/100, stop = close*(100-sl)/100) if (s) strategy.entry("My Short Entry Id", strategy.short) strategy.exit("exit short", "My Short Entry Id", qty_percent = qty_balance, limit = close*(100-tp)/100, stop = close*(100+sl)/100) if (cl) strategy.close("My Long Entry Id") if (cs) strategy.close("My Short Entry Id") l:= l and strategy.opentrades<1 s:= s and strategy.opentrades<1 transp = strategy.opentrades>0? 0 : 100 pma=plot(ma, color = ma<ma[1]? color.rgb(255, 82, 82, transp) : color.rgb(76, 175, 79, transp)) price = open/2+close/2 pprice = plot(price, display = display.none) fill(pma,pprice, color = ma<ma[1]? color.rgb(255, 82, 82, transp+90) : color.rgb(76, 175, 79, transp+90)) spm=plot(ta.valuewhen(s,close,0), color = (strategy.opentrades>0 and ma<ma[1] and ma[1]<ma[2])? color.white : color.rgb(1,1,1,100), offset=1) lpm=plot(ta.valuewhen(l,close,0), color = (strategy.opentrades>0 and ma>ma[1] and ma[1]>ma[2])? color.white : color.rgb(1,1,1,100), offset=1) ltp=plot(ta.valuewhen(l,close,0)*(100+ta.valuewhen(l,tp,0))/100, color = (strategy.opentrades>0 and ma>ma[1] and ma[1]>ma[2])? color.green : color.rgb(1,1,1,100), offset=1) lsl=plot(ta.valuewhen(l,close,0)*(100-ta.valuewhen(l,sl,0))/100, color = (strategy.opentrades>0 and ma>ma[1] and ma[1]>ma[2])? color.red : color.rgb(1,1,1,100), offset=1) stp=plot(ta.valuewhen(s,close,0)*(100-ta.valuewhen(s,tp,0))/100, color = (strategy.opentrades>0 and ma<ma[1] and ma[1]<ma[2])? color.green : color.rgb(1,1,1,100), offset=1) ssl=plot(ta.valuewhen(s,close,0)*(100+ta.valuewhen(s,sl,0))/100, color = (strategy.opentrades>0 and ma<ma[1] and ma[1]<ma[2])? color.red : color.rgb(1,1,1,100), offset=1) fill(stp,spm, color = (strategy.opentrades>0 and ma<ma[1] and ma[1]<ma[2])? color.rgb(76, 175, 79, 90) : color.rgb(1,1,1,100)) fill(ssl,spm, color = (strategy.opentrades>0 and ma<ma[1] and ma[1]<ma[2])? color.rgb(255, 82, 82, 90) : color.rgb(1,1,1,100)) fill(ltp,lpm, color = (strategy.opentrades>0 and ma>ma[1] and ma[1]>ma[2])? color.rgb(76, 175, 79, 90) : color.rgb(1,1,1,100)) fill(lsl,lpm, color = (strategy.opentrades>0 and ma>ma[1] and ma[1]>ma[2])? color.rgb(255, 82, 82, 90) : color.rgb(1,1,1,100))