رفتار کی حکمت عملی ایک تجارتی حکمت عملی ہے جو قیمت کی نقل و حرکت کی بنیاد پر قیمت کے رجحان کی پیروی کرتی ہے۔ یہ ایک خاص مدت میں قیمت کی تبدیلیوں کا حساب لگاتے ہوئے تجارتی سگنل تیار کرتی ہے۔ جب قیمت کے اوپر کے رجحان کی نشاندہی کی جاتی ہے تو ، یہ خریدنے کا اشارہ شروع کردے گا۔ جب قیمت کے نیچے کے رجحان کی نشاندہی کی جاتی ہے تو ، یہ فروخت کا اشارہ شروع کردے گا۔ یہ حکمت عملی تجارتی سگنل تیار کرنے کے لئے ڈبل رفتار اشارے کراس اوور کا استعمال کرتی ہے۔
یہ حکمت عملی N ادوار پہلے بند ہونے والی قیمت کے مقابلے میں بند ہونے والی قیمت کی تبدیلی کی پیمائش کرکے قیمت کی رفتار کا حساب لگاتی ہے۔
پہلا رفتار اشارے MOM0 کا حساب اس طرح کیا جاتا ہے:
MOM0 = قریب - قریب[N]
جہاں CLOSE موجودہ مدت کی اختتامی قیمت ہے اور CLOSE[N] N مدت پہلے کی اختتامی قیمت ہے۔ MOM0 > 0 سے ظاہر ہوتا ہے کہ موجودہ اختتامی قیمت N مدت پہلے کی قیمت سے زیادہ ہے جبکہ MOM0 < 0 سے ظاہر ہوتا ہے کہ موجودہ اختتامی قیمت N مدت پہلے کی قیمت سے کم ہے۔
دوسرا رفتار اشارے MOM1 کا حساب اس طرح کیا جاتا ہے:
MOM1 = MOM0 - MOM0 [1]
یہ موجودہ MOM0 اور پچھلی مدت
تیسرا رفتار اشارے MOM2 کا حساب اس طرح کیا جاتا ہے:
MOM2 = CLOSE - CLOSE [1]
یہ موجودہ اختتامی قیمت اور پچھلی مدت کی اختتامی قیمت کے درمیان فرق کا حساب لگاتا ہے۔ MOM2 > 0 اختتامی قیمت میں اضافے کی نشاندہی کرتا ہے ، جبکہ MOM2 < 0 اختتامی قیمت میں کمی کی نشاندہی کرتا ہے۔
جب MOM0 > 0 اور MOM1 > 0 ہوتا ہے تو ، اس سے یہ ظاہر ہوتا ہے کہ رفتار مستقل طور پر بڑھ رہی ہے اور خریدنے کا سگنل چلاتا ہے۔ جب MOM0 < 0 اور MOM2 < 0 ہوتا ہے تو ، اس سے یہ ظاہر ہوتا ہے کہ رفتار مستقل طور پر گر رہی ہے اور فروخت کا سگنل چلاتا ہے۔
کوڈ میں ایک وقت کی شرط بھی شامل ہے time_cond صرف مخصوص بیک ٹسٹنگ وقت کی حد کے دوران سگنل تیار کرنے کے لئے۔ جب سگنل غائب ہوجاتا ہے تو ناپسندیدہ احکامات سے بچنے کے ل orders آرڈر دینے سے پہلے اس حالت کی دوبارہ جانچ پڑتال کرتا ہے۔
خطرات کو رفتار کے ادوار کو مختصر کرکے ، رجحان کا تعین شامل کرکے ، یا اسٹاپ نقصان کو ترتیب دے کر کم کیا جاسکتا ہے۔ اضافی فلٹریشن کے لئے حجم کے اشارے پر بھی غور کیا جاسکتا ہے۔
رفتار کی حکمت عملی قیمتوں کی سطح کے بجائے قیمتوں کی تبدیلی کے رجحانات کی پیروی کرتی ہے ، مؤثر طریقے سے قیمتوں میں اضافے اور کمی کی نقل و حرکت کو پکڑنے کے لئے مارکیٹ کی رفتار کی سمتوں کی نشاندہی کرتی ہے۔ تاہم ، رفتار میں پسماندہ خصوصیات ہیں اور پیرامیٹر کا انتخاب اور مجموعہ کی اصلاح حکمت عملی کی کارکردگی کے لئے اہم ہیں۔ اس حکمت عملی میں ڈبل رفتار اشارے کراس اوور کو ایک بنیاد کے طور پر استعمال کیا جاتا ہے ، کچھ شور کو فلٹر کیا جاتا ہے۔ کارکردگی کو مزید بڑھا سکتے ہیں اور پیرامیٹرز کی مسلسل اصلاح ، نئے تکنیکی اشارے کو مربوط کرنے ، اور مشین لرننگ تکنیکوں کو فائدہ اٹھانے سے خطرات کو کنٹرول کیا جاسکتا ہے۔
/*backtest start: 2022-09-25 00:00:00 end: 2023-02-03 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Momentum Strategy", overlay = false, precision = 2, initial_capital = 10000, default_qty_value = 10000, default_qty_type = strategy.cash, commission_type = strategy.commission.percent, commission_value = 0, calc_on_every_tick = true) // Calculate start/end date and time condition startDate = input(timestamp("2021-01-02T00:00:00"), title = "Start Date", type = input.time) finishDate = input(timestamp("2021-12-31T00:00:00"), title = "End Date",type = input.time) time_cond = true i_len = input(defval = 12, title = "Length", minval = 1) i_src = input(defval = close, title = "Source") i_percent = input(defval = true, title = "Percent?") i_mom = input(defval = "MOM2", title = "MOM Choice", options = ["MOM1", "MOM2"]) momentum(seria, length, percent) => _mom = percent ? ( (seria / seria[length]) - 1) * 100 : seria - seria[length] _mom mom0 = momentum(i_src, i_len, i_percent) mom1 = momentum(mom0, 1, i_percent) mom2 = momentum(i_src, 1, i_percent) momX = mom1 if i_mom == "MOM2" momX := mom2 if (mom0 > 0 and momX > 0 and time_cond) strategy.entry("MomLE", strategy.long, stop = high + syminfo.mintick, comment = "MomLE") else strategy.cancel("MomLE") if (mom0 < 0 and momX < 0 and time_cond) strategy.entry("MomSE", strategy.short, stop = low - syminfo.mintick, comment = "MomSE") else strategy.cancel("MomSE") plot(mom0, color = #00bcd4, title = "MOM") plot(mom1, color = #00FF00, title = "MOM1", display = display.none) plot(mom2, color = #00FF00, title = "MOM2")