یہ حکمت عملی ایک رجحان کی پیروی کرنے والی حکمت عملی ہے جو قیمت کی رفتار کے اشارے کا استعمال کرتی ہے۔ یہ ایک خاص مدت کے دوران اختتامی قیمت میں تبدیلی کا حساب لگاتے ہوئے مارکیٹ کے رجحان کا فیصلہ کرتی ہے اور جب قیمت میں مستقل اضافہ یا کمی کا رجحان ہوتا ہے تو اس کے مطابق لمبی یا مختصر اندراجات کرتی ہے۔
اس حکمت عملی کا بنیادی اشارے قیمت کی رفتار ہے۔ رفتار کا حساب اس طرح کیا جاتا ہے:
momentum = close - close[n]
جہاں n رفتار کے دورانیے کی لمبائی کی نمائندگی کرتا ہے۔ جب رفتار > 0 ، اس کا مطلب یہ ہے کہ موجودہ مدت کے دوران قیمت بڑھ رہی ہے۔ جب رفتار < 0 ، اس کا مطلب یہ ہے کہ موجودہ مدت کے دوران قیمت گر رہی ہے۔
حکمت عملی سب سے پہلے ایک confirmBars پیرامیٹر طے کرتی ہے ، جو تجارت کو انجام دینے سے پہلے رجحان کے فیصلے کے لئے درکار موم بتیوں کی تعداد کی نمائندگی کرتی ہے۔ بیک ٹیسٹ رینج کے اندر ، اگر confirmBars موم بتیوں کے لئے رفتار > 0 برقرار رہتی ہے تو ، ایک لمبا اندراج کیا جاتا ہے۔ اگر confirmBars موم بتیوں کے لئے رفتار < 0 برقرار رہتی ہے تو ، ایک مختصر اندراج کیا جاتا ہے۔
حکمت عملی کے رجحان کے فیصلے کی کلید لگاتار موم بتیوں کی تعداد گننے میں پڑتی ہے جہاں رفتار 0 سے زیادہ یا کم ہوتی ہے ، جو bcount اور ڈسکاؤنٹ متغیرات کے ذریعہ حاصل کی جاتی ہے۔ جب متعلقہ شرط پوری ہوجاتی ہے تو انہیں 1 سے بڑھایا جاتا ہے اور جب شرط پوری نہیں ہوتی ہے تو 0 پر ری سیٹ کیا جاتا ہے۔ جب گنتی confirmBars تک پہنچ جاتی ہے تو ، اس کے مطابق لمبی یا مختصر تجارت عمل میں لائی جاتی ہے۔
یہ ایک نسبتا سادہ رجحان ہے جس میں مندرجہ ذیل فوائد ہیں:
اس حکمت عملی میں کچھ خطرات بھی ہیں:
حکمت عملی کو کئی پہلوؤں میں بہتر بنایا جا سکتا ہے:
خلاصہ میں ، یہ رفتار توڑنے کی حکمت عملی ایک سادہ اور عملی رجحان کی پیروی کرنے والی حکمت عملی ہے جو تعارفی مقدار کی تجارتی حکمت عملی کے طور پر موزوں ہے۔ درخواست میں ، تجارت کی تعدد کو کنٹرول کرنے اور اوور ٹریڈنگ کو روکنے پر توجہ دینے کی ضرورت ہے۔ دریں اثنا ، حکمت عملی کو زیادہ سے زیادہ کارکردگی حاصل کرنے کے لئے اصل مصنوعات اور مارکیٹ کے ماحول کی بنیاد پر پیرامیٹرز اور فلٹرز کو ایڈجسٹ اور بہتر بنانے کی ضرورت ہے۔
/*backtest start: 2024-01-09 00:00:00 end: 2024-01-16 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Momentum Strategy [TS Trader]", overlay=true) confirmBars = input(1) momentumLength = input(14, title="Momentum Length") price = close momentum = close - close[momentumLength] // === INPUT BACKTEST RANGE === fromYear = input.int(2019, title="Backtest Start Year") fromMonth = input.int(1, title="Backtest Start Month", minval=1, maxval=12) fromDay = input.int(1, title="Backtest Start Day", minval=1, maxval=31) toYear = input.int(2023, title="Backtest End Year") toMonth = input.int(12, title="Backtest End Month", minval=1, maxval=12) toDay = input.int(31, title="Backtest End Day", minval=1, maxval=31) startTimestamp = timestamp(fromYear, fromMonth, fromDay, 00, 00) endTimestamp = timestamp(toYear, toMonth, toDay, 23, 59) inBacktestRange = true // === STRATEGY LOGIC === bcond = momentum > 0 bcount = 0 bcount := bcond ? nz(bcount[1]) + 1 : 0 if (bcount == confirmBars and inBacktestRange) strategy.entry("Buy", strategy.long, comment="Long") scond = momentum < 0 scount = 0 scount := scond ? nz(scount[1]) + 1 : 0 if (scount == confirmBars and inBacktestRange) strategy.entry("Sell", strategy.short, comment="Short") // Plotting Momentum plot(momentum, title="Momentum", color=color.purple)